Bug 153167 - Problem with signals, threads, and subprocesses in lang/python
Summary: Problem with signals, threads, and subprocesses in lang/python
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: Normal Affects Only Me
Assignee: freebsd-python (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-12-15 06:00 UTC by Duncan Findlay
Modified: 2013-05-17 05:20 UTC (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Duncan Findlay 2010-12-15 06:00:22 UTC
The patch added to the python port intended to fix PR 131080 has the unintended consequence of blocking signals in any subprocess spawned from a thread. If you start a process in a Python thread, the process can not be killed. This is a serious issue for us as we frequently spawn sub-processes from within threads of our daemon applications, and we need to be able to kill them, if they run too long, or the daemon needs to shutdown, etc.

PR 131080: http://www.freebsd.org/cgi/query-pr.cgi?pr=131080
Original Python issue: http://bugs.python.org/issue1975

How-To-Repeat: This test case shows the problem:

http://bugs.python.org/file20047/thread_test.py

Also:

Example code (example.py):

import subprocess
import threading

def create():
    sub = subprocess.Popen(
        args=('sleep', '60'), cwd=None, env=None,
        stdout=subprocess.PIPE, stderr=subprocess.PIPE,
        close_fds=True)
    print 'Started process %d' % (sub.pid,)

if __name__ == '__main__':
    thr = threading.Thread(target=create)
    thr.start()
    thr.join()

Example output:

$ python example.py
Started process 90813
$ ps -p  90813
  PID  TT  STAT      TIME COMMAND
90813  p0  S      0:00.00 sleep 60
$ kill 90813
$ ps -p 90813
  PID  TT  STAT      TIME COMMAND
90813  p0  S      0:00.00 sleep 60
Comment 1 Tilman Keskinoz freebsd_committer freebsd_triage 2010-12-25 14:04:27 UTC
Responsible Changed
From-To: freebsd-ports-bugs->python

over to maintainers
Comment 2 Mark Linimon freebsd_committer freebsd_triage 2010-12-27 17:43:12 UTC
Responsible Changed
From-To: python->freebsd-python

Canonicalize assignment.
Comment 3 dfilter service freebsd_committer freebsd_triage 2013-05-17 05:17:44 UTC
Author: rm
Date: Fri May 17 04:17:22 2013
New Revision: 318353
URL: http://svnweb.freebsd.org/changeset/ports/318353

Log:
  - update to latest upstream versions:
    . lang/python27: 2.7.3 -> 2.7.5
    . lang/python32: 3.2.3 -> 3.2.4
    . lang/python33: 3.3.0 -> 3.3.1
  - update Mk/bsd.python.mk with new versions
  - mark lang/python26 and lang/python31 as deprecated (set them to
    upstream EoL dates)
  - update docs (lang/python-doc-html)
  - align databases/py-bsddb patch for python27 - most of it was applied
    upstream. Raise BDB version to 4.3 atleast, according to
    upstream requirements.
  
  Many thanks to Martin (miwi) for his time on this update.
  
  PR:		178506
  Submitted by:	rm (myself)
  Exp-run by:	    portmgr (miwi)
  
  - revert erroneous threads patch in lang/python26 and lang/python27,
    that was added after ports/131080. It was rejected upstream, because it's
    not actually a bug, but misuse.
  
    Gabor Pali (pgj) in collaboration with Kubilay Kocak (koobs) did an
    independent investigation regard the issue. See here for details:
  
    http://lists.freebsd.org/pipermail/freebsd-python/2013-April/005376.html
  
  PR:	    153167
  Submitted by:	Duncan Findlay <duncan@duncf.ca>
  Reported by:	pgj/koobs (at python@ ML)
  Exp-run by:     portmgr (miwi)

Added:
  head/lang/python27/files/patch-Makefile.pre.in   (contents, props changed)
  head/lang/python32/files/patch-Makefile.pre.in   (contents, props changed)
  head/lang/python33/files/patch-Makefile.pre.in   (contents, props changed)
Deleted:
  head/lang/python26/files/patch-Python_thread__pthread.h
  head/lang/python27/files/patch-Python_thread__pthread.h
  head/lang/python33/files/patch-Modules-_decimal-libmpdec-mpdecimal.h
Modified:
  head/Mk/bsd.python.mk
  head/databases/py-bsddb/Makefile
  head/databases/py-bsddb/files/extra-patch-py27-_bsddb.c
  head/lang/python-doc-html/Makefile
  head/lang/python-doc-html/distinfo
  head/lang/python26/Makefile
  head/lang/python27/Makefile
  head/lang/python27/distinfo
  head/lang/python27/files/extra-patch-setup.py
  head/lang/python27/files/patch-setup.py
  head/lang/python27/pkg-plist
  head/lang/python31/Makefile
  head/lang/python32/Makefile
  head/lang/python32/distinfo
  head/lang/python32/pkg-plist
  head/lang/python33/Makefile
  head/lang/python33/distinfo
  head/lang/python33/files/patch-Modules-_ctypes-libffi-configure
  head/lang/python33/pkg-plist

Modified: head/Mk/bsd.python.mk
==============================================================================
--- head/Mk/bsd.python.mk	Fri May 17 03:24:24 2013	(r318352)
+++ head/Mk/bsd.python.mk	Fri May 17 04:17:22 2013	(r318353)
@@ -375,9 +375,9 @@ PYTHON_PORTVERSION=	${PYTHON_DEFAULT_POR
 
 # Python-3.3
 .if ${PYTHON_VERSION} == "python3.3"
-PYTHON_PORTVERSION?=	3.3.0
+PYTHON_PORTVERSION?=	3.3.1
 PYTHON_PORTSDIR=	${PORTSDIR}/lang/python33
-PYTHON_REL=		330
+PYTHON_REL=		331
 PYTHON_SUFFIX=		33
 PYTHON_VER=		3.3
 .if exists(${PYTHON_CMD}-config)
@@ -386,9 +386,9 @@ PYTHON_ABIVER!=		${PYTHON_CMD}-config --
 
 # Python-3.2
 .elif ${PYTHON_VERSION} == "python3.2"
-PYTHON_PORTVERSION?=	3.2.3
+PYTHON_PORTVERSION?=	3.2.4
 PYTHON_PORTSDIR=	${PORTSDIR}/lang/python32
-PYTHON_REL=		323
+PYTHON_REL=		324
 PYTHON_SUFFIX=		32
 PYTHON_VER=		3.2
 .if exists(${PYTHON_CMD}-config)
@@ -405,9 +405,9 @@ PYTHON_VER=		3.1
 
 # Python-2.7
 .elif ${PYTHON_VERSION} == "python2.7"
-PYTHON_PORTVERSION?=	2.7.3
+PYTHON_PORTVERSION?=	2.7.5
 PYTHON_PORTSDIR=	${PORTSDIR}/lang/python27
-PYTHON_REL=		273
+PYTHON_REL=		275
 PYTHON_SUFFIX=		27
 PYTHON_VER=		2.7
 

Modified: head/databases/py-bsddb/Makefile
==============================================================================
--- head/databases/py-bsddb/Makefile	Fri May 17 03:24:24 2013	(r318352)
+++ head/databases/py-bsddb/Makefile	Fri May 17 04:17:22 2013	(r318353)
@@ -5,7 +5,7 @@ PORTNAME=	bsddb
 PORTVERSION=	${PYTHON_PORTVERSION}
 PORTREVISION=	3
 CATEGORIES=	databases python
-MASTER_SITES=	${PYTHON_MASTER_SITES}
+MASTER_SITES=	PYTHON
 MASTER_SITE_SUBDIR=	${PYTHON_MASTER_SITE_SUBDIR}
 PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
 DISTFILES=	${PYTHON_DISTFILE}
@@ -13,7 +13,7 @@ DISTFILES=	${PYTHON_DISTFILE}
 MAINTAINER=	python@FreeBSD.org
 COMMENT=	Standard Python bindings to the Berkeley DB library
 
-USE_BDB=	yes
+USE_BDB=	43+
 USE_PYTHON=	yes
 USE_PYDISTUTILS=yes
 USE_XZ=		yes

Modified: head/databases/py-bsddb/files/extra-patch-py27-_bsddb.c
==============================================================================
--- head/databases/py-bsddb/files/extra-patch-py27-_bsddb.c	Fri May 17 03:24:24 2013	(r318352)
+++ head/databases/py-bsddb/files/extra-patch-py27-_bsddb.c	Fri May 17 04:17:22 2013	(r318353)
@@ -1,58 +1,7 @@
---- _bsddb.c.orig	2011-06-11 23:46:26.000000000 +0800
-+++ _bsddb.c	2011-10-10 10:29:43.469871000 +0800
-@@ -187,8 +187,10 @@
- static PyObject* DBRunRecoveryError;    /* DB_RUNRECOVERY */
- static PyObject* DBVerifyBadError;      /* DB_VERIFY_BAD */
- static PyObject* DBNoServerError;       /* DB_NOSERVER */
-+#if (DBVER < 52)
- static PyObject* DBNoServerHomeError;   /* DB_NOSERVER_HOME */
- static PyObject* DBNoServerIDError;     /* DB_NOSERVER_ID */
-+#endif
- static PyObject* DBPageNotFoundError;   /* DB_PAGE_NOTFOUND */
- static PyObject* DBSecondaryBadError;   /* DB_SECONDARY_BAD */
- 
-@@ -696,8 +698,10 @@
-         case DB_RUNRECOVERY:        errObj = DBRunRecoveryError;    break;
-         case DB_VERIFY_BAD:         errObj = DBVerifyBadError;      break;
-         case DB_NOSERVER:           errObj = DBNoServerError;       break;
-+#if (DBVER < 52)
-         case DB_NOSERVER_HOME:      errObj = DBNoServerHomeError;   break;
-         case DB_NOSERVER_ID:        errObj = DBNoServerIDError;     break;
-+#endif
-         case DB_PAGE_NOTFOUND:      errObj = DBPageNotFoundError;   break;
-         case DB_SECONDARY_BAD:      errObj = DBSecondaryBadError;   break;
-         case DB_BUFFER_SMALL:       errObj = DBNoMemoryError;       break;
-@@ -7608,6 +7612,7 @@
-     RETURN_NONE();
- }
- 
-+#if (DBVER < 52)
- static PyObject*
- DBEnv_repmgr_set_local_site(DBEnvObject* self, PyObject* args, PyObject*
-         kwargs)
-@@ -7654,6 +7659,7 @@
-     RETURN_IF_ERR();
-     return NUMBER_FromLong(eidp);
- }
-+#endif
- 
- static PyObject*
- DBEnv_repmgr_set_ack_policy(DBEnvObject* self, PyObject* args)
-@@ -8855,10 +8861,12 @@
- #if (DBVER >= 45)
-     {"repmgr_start", (PyCFunction)DBEnv_repmgr_start,
-         METH_VARARGS|METH_KEYWORDS},
-+#if (DBVER < 52)
-     {"repmgr_set_local_site", (PyCFunction)DBEnv_repmgr_set_local_site,
-         METH_VARARGS|METH_KEYWORDS},
-     {"repmgr_add_remote_site", (PyCFunction)DBEnv_repmgr_add_remote_site,
-         METH_VARARGS|METH_KEYWORDS},
-+#endif
-     {"repmgr_set_ack_policy", (PyCFunction)DBEnv_repmgr_set_ack_policy,
-         METH_VARARGS},
-     {"repmgr_get_ack_policy", (PyCFunction)DBEnv_repmgr_get_ack_policy,
-@@ -9437,7 +9445,7 @@
- #endif
+--- ./_bsddb.c.orig	2013-04-06 18:02:34.000000000 +0400
++++ ./_bsddb.c	2013-05-12 09:27:38.000000000 +0400
+@@ -9699,7 +9699,7 @@
+     ADD_INT(d, DB_RPCCLIENT);
  #endif
  
 -#if (DBVER < 48)
@@ -60,35 +9,3 @@
      ADD_INT(d, DB_XA_CREATE);
  #endif
  
-@@ -9651,8 +9659,10 @@
-     ADD_INT(d, DB_LOCK_DEADLOCK);
-     ADD_INT(d, DB_LOCK_NOTGRANTED);
-     ADD_INT(d, DB_NOSERVER);
-+#if (DBVER < 52)
-     ADD_INT(d, DB_NOSERVER_HOME);
-     ADD_INT(d, DB_NOSERVER_ID);
-+#endif
-     ADD_INT(d, DB_NOTFOUND);
-     ADD_INT(d, DB_OLD_VERSION);
-     ADD_INT(d, DB_RUNRECOVERY);
-@@ -9766,7 +9776,9 @@
-     ADD_INT(d, DB_REP_PERMANENT);
- 
- #if (DBVER >= 44)
-+#if (DBVER < 50)
-     ADD_INT(d, DB_REP_CONF_NOAUTOINIT);
-+#endif
-     ADD_INT(d, DB_REP_CONF_DELAYCLIENT);
-     ADD_INT(d, DB_REP_CONF_BULK);
-     ADD_INT(d, DB_REP_CONF_NOWAIT);
-@@ -9912,8 +9924,10 @@
-     MAKE_EX(DBRunRecoveryError);
-     MAKE_EX(DBVerifyBadError);
-     MAKE_EX(DBNoServerError);
-+#if (DBVER < 52)
-     MAKE_EX(DBNoServerHomeError);
-     MAKE_EX(DBNoServerIDError);
-+#endif
-     MAKE_EX(DBPageNotFoundError);
-     MAKE_EX(DBSecondaryBadError);
- 

Modified: head/lang/python-doc-html/Makefile
==============================================================================
--- head/lang/python-doc-html/Makefile	Fri May 17 03:24:24 2013	(r318352)
+++ head/lang/python-doc-html/Makefile	Fri May 17 04:17:22 2013	(r318353)
@@ -2,7 +2,8 @@
 # $FreeBSD$
 
 PORTNAME=	python-doc-${DOCFORMAT}
-PORTVERSION=	${PYTHON_PORTVERSION}
+#PORTVERSION=	${PYTHON_PORTVERSION}
+PORTVERSION=	2.7.5
 CATEGORIES=	lang python
 MASTER_SITES=	PYTHON
 MASTER_SITE_SUBDIR=	ftp/python/doc/${PORTVERSION} \

Modified: head/lang/python-doc-html/distinfo
==============================================================================
--- head/lang/python-doc-html/distinfo	Fri May 17 03:24:24 2013	(r318352)
+++ head/lang/python-doc-html/distinfo	Fri May 17 04:17:22 2013	(r318353)
@@ -6,14 +6,14 @@ SHA256 (python/python-2.6.8-docs-pdf-let
 SIZE (python/python-2.6.8-docs-pdf-letter.tar.bz2) = 9153933
 SHA256 (python/python-2.6.8-docs-text.tar.bz2) = 0ca9c15942a2377fb388dd3784719dd4cdd2b53bd82530d5a36c3e1a0d6c9a17
 SIZE (python/python-2.6.8-docs-text.tar.bz2) = 1400092
-SHA256 (python/python-2.7.3-docs-html.tar.bz2) = b294008007956d600ec78335d7afedda19bf855b008a3586343cd15f8115e9c1
-SIZE (python/python-2.7.3-docs-html.tar.bz2) = 4368711
-SHA256 (python/python-2.7.3-docs-pdf-a4.tar.bz2) = 59b60e120fba0c3754329d15a658f3e4cdfef06b6422071d36ab60ab2e42aa8d
-SIZE (python/python-2.7.3-docs-pdf-a4.tar.bz2) = 10584796
-SHA256 (python/python-2.7.3-docs-pdf-letter.tar.bz2) = af79b7029242fc6c789e3926f6dfb120a8d17da49a6bc8e6873bdedc34bc8174
-SIZE (python/python-2.7.3-docs-pdf-letter.tar.bz2) = 10641044
-SHA256 (python/python-2.7.3-docs-text.tar.bz2) = f75b397ddb72bf74a7abb02821b20b28752a7c98b690588c17090d08e558b4e7
-SIZE (python/python-2.7.3-docs-text.tar.bz2) = 1569795
+SHA256 (python/python-2.7.5-docs-html.tar.bz2) = bb1b8ada858bae3b9e94a7fefe77536f68ce924f2c19b57e5f47c111c29415a3
+SIZE (python/python-2.7.5-docs-html.tar.bz2) = 4467730
+SHA256 (python/python-2.7.5-docs-pdf-a4.tar.bz2) = cd0eafb8dfff0a4d29ac0d00c173cff9e3dc54073372e375cc7557d08ee5e13d
+SIZE (python/python-2.7.5-docs-pdf-a4.tar.bz2) = 10679646
+SHA256 (python/python-2.7.5-docs-pdf-letter.tar.bz2) = c29af0e12120ba9ef3e4829c0cb16f8ec66767863ea99629f9e67f6f20aa63be
+SIZE (python/python-2.7.5-docs-pdf-letter.tar.bz2) = 10731307
+SHA256 (python/python-2.7.5-docs-text.tar.bz2) = f274003bf6568cc4a1536ea3390e64ee306ba5d676c3803357fc93033346e58b
+SIZE (python/python-2.7.5-docs-text.tar.bz2) = 1576869
 SHA256 (python/python-3.1.5-docs-html.tar.bz2) = ff327cfaa1219d8d82fcb4f3bae3ec4ce28567982a49784004130521d282faa0
 SIZE (python/python-3.1.5-docs-html.tar.bz2) = 3798597
 SHA256 (python/python-3.1.5-docs-pdf-a4.tar.bz2) = a1c3ba2c8617c19c745a34034c2f08320c56b5cab1fef9595894db37c832724d
@@ -22,11 +22,19 @@ SHA256 (python/python-3.1.5-docs-pdf-let
 SIZE (python/python-3.1.5-docs-pdf-letter.tar.bz2) = 9598827
 SHA256 (python/python-3.1.5-docs-text.tar.bz2) = 2bd95a2b9d62e78e3ecfce6b0421c4e3b1cc5fd1facc06e9a02286d89e7b4ecb
 SIZE (python/python-3.1.5-docs-text.tar.bz2) = 1334753
-SHA256 (python/python-3.2.3-docs-html.tar.bz2) = 1dd4a63dad800fe4207498b7d1ab1f3a8d7c77073fc8c9f5a519d8079ecf1715
-SIZE (python/python-3.2.3-docs-html.tar.bz2) = 4334736
-SHA256 (python/python-3.2.3-docs-pdf-a4.tar.bz2) = 07a0e6b5824eeae4dbf73dc3ad7fb39d7ebf7d3683c9d7bf98e0743be6d281d3
-SIZE (python/python-3.2.3-docs-pdf-a4.tar.bz2) = 10118522
-SHA256 (python/python-3.2.3-docs-pdf-letter.tar.bz2) = e2712344f8b383cf15d59baa8f5e2c173e830bdb0295449ae4f90f4ef55f31a5
-SIZE (python/python-3.2.3-docs-pdf-letter.tar.bz2) = 10178907
-SHA256 (python/python-3.2.3-docs-text.tar.bz2) = 09e8be591085ce318fcd87cb0de156e22ca15c63dbe05ade5e7a9325644eacc9
-SIZE (python/python-3.2.3-docs-text.tar.bz2) = 1547312
+SHA256 (python/python-3.2.4-docs-html.tar.bz2) = db225109e55e47d23c8bae8887bf807eb598421346cbfb784514f60f45c9796b
+SIZE (python/python-3.2.4-docs-html.tar.bz2) = 4435421
+SHA256 (python/python-3.2.4-docs-pdf-a4.tar.bz2) = 7753b186dbe9cd08060fad4a5073de5c2fdff46106e6215d6b70ac6d173fe580
+SIZE (python/python-3.2.4-docs-pdf-a4.tar.bz2) = 10378339
+SHA256 (python/python-3.2.4-docs-pdf-letter.tar.bz2) = c85c8252820004cf0caf7232602879055bb463c2c6ad2ea7d2636e6969b11af8
+SIZE (python/python-3.2.4-docs-pdf-letter.tar.bz2) = 10427691
+SHA256 (python/python-3.2.4-docs-text.tar.bz2) = bfe9b534e314be5b63aa442460d53c939b72b7a2021d67583078e9f8b5c18432
+SIZE (python/python-3.2.4-docs-text.tar.bz2) = 1570492
+SHA256 (python/python-3.3.1-docs-html.tar.bz2) = 77789f20d526800a53f7c3d238089de8a20a894927a10a36ca4aeb2e36d877bf
+SIZE (python/python-3.3.1-docs-html.tar.bz2) = 4899323
+SHA256 (python/python-3.3.1-docs-pdf-a4.tar.bz2) = 394d1d07a87c461193118f50db4905807efd54c733aec1df7464b1688ffa1a4f
+SIZE (python/python-3.3.1-docs-pdf-a4.tar.bz2) = 11162619
+SHA256 (python/python-3.3.1-docs-pdf-letter.tar.bz2) = 3ee448bf4778ba61f89484e08d28cd5b501d2a9c4dd8b3eb47d6a31ffb0c7997
+SIZE (python/python-3.3.1-docs-pdf-letter.tar.bz2) = 11213346
+SHA256 (python/python-3.3.1-docs-text.tar.bz2) = 36505cde176105bf1b7cbab54090d97d7d3be0d3e9f4f20be23f639ef7fd6887
+SIZE (python/python-3.3.1-docs-text.tar.bz2) = 1782542

Modified: head/lang/python26/Makefile
==============================================================================
--- head/lang/python26/Makefile	Fri May 17 03:24:24 2013	(r318352)
+++ head/lang/python26/Makefile	Fri May 17 04:17:22 2013	(r318353)
@@ -3,7 +3,7 @@
 
 PORTNAME=	python26
 PORTVERSION=	2.6.8
-PORTREVISION=	4
+PORTREVISION=	5
 CATEGORIES=	lang python ipv6
 MASTER_SITES=	PYTHON
 MASTER_SITE_SUBDIR=	${PYTHON_MASTER_SITE_SUBDIR}
@@ -12,6 +12,9 @@ DISTFILES=	${PYTHON_DISTFILE}
 MAINTAINER=	python@FreeBSD.org
 COMMENT=	Interpreted object-oriented programming language
 
+DEPRECATED=	This port will reach it's EoL upstream soon, please migrate to lang/python27
+EXPIRATION_DATE=2013-10-01
+
 DIST_SUBDIR=	python
 WRKSRC=		${PYTHON_WRKSRC}/portbld.static
 PATCH_WRKSRC=	${PYTHON_WRKSRC}

Modified: head/lang/python27/Makefile
==============================================================================
--- head/lang/python27/Makefile	Fri May 17 03:24:24 2013	(r318352)
+++ head/lang/python27/Makefile	Fri May 17 04:17:22 2013	(r318353)
@@ -2,8 +2,7 @@
 # $FreeBSD$
 
 PORTNAME=	python27
-PORTVERSION=	2.7.3
-PORTREVISION=	6
+PORTVERSION=	2.7.5
 CATEGORIES=	lang python ipv6
 MASTER_SITES=	PYTHON
 MASTER_SITE_SUBDIR=	${PYTHON_MASTER_SITE_SUBDIR}

Modified: head/lang/python27/distinfo
==============================================================================
--- head/lang/python27/distinfo	Fri May 17 03:24:24 2013	(r318352)
+++ head/lang/python27/distinfo	Fri May 17 04:17:22 2013	(r318353)
@@ -1,2 +1,2 @@
-SHA256 (python/Python-2.7.3.tar.xz) = 61d36be58e9e9c733c49d7b76858d5c08e2c63a84f2066b29d35d3521057c985
-SIZE (python/Python-2.7.3.tar.xz) = 9976088
+SHA256 (python/Python-2.7.5.tar.xz) = f33c4cab167dc69e10962e1cebf1c0768e2d0e8575648130c20e6bda84551db1
+SIZE (python/Python-2.7.5.tar.xz) = 10252148

Modified: head/lang/python27/files/extra-patch-setup.py
==============================================================================
--- head/lang/python27/files/extra-patch-setup.py	Fri May 17 03:24:24 2013	(r318352)
+++ head/lang/python27/files/extra-patch-setup.py	Fri May 17 04:17:22 2013	(r318353)
@@ -1,11 +1,11 @@
---- setup.py.bak	2010-08-15 14:57:00.347134100 +0800
-+++ setup.py	2010-08-15 15:00:06.019643300 +0800
-@@ -1402,10 +1402,22 @@
+--- setup.py.orig	2013-04-07 11:07:43.000000000 +0400
++++ setup.py	2013-04-07 11:16:36.000000000 +0400
+@@ -1544,10 +1544,22 @@
              macros = dict()
              libraries = []
  
--        elif platform in ('freebsd4', 'freebsd5', 'freebsd6', 'freebsd7', 'freebsd8', 'freebsd9', 'freebsd10'):
-+        elif platform in ('freebsd4', 'freebsd5', 'freebsd6'):
+-        elif host_platform in ('freebsd4', 'freebsd5', 'freebsd6', 'freebsd7', 'freebsd8', 'freebsd9', 'freebsd10'):
++        elif host_platform in ('freebsd4', 'freebsd5', 'freebsd6'):
              # FreeBSD's P1003.1b semaphore support is very experimental
              # and has many known problems. (as of June 2008)
 -            macros = dict()
@@ -16,7 +16,7 @@
 +                )
 +            libraries = []
 +
-+        elif platform in ('freebsd7', 'freebsd8', 'freebsd9', 'freebsd10'):
++        elif host_platform in ('freebsd7', 'freebsd8', 'freebsd9', 'freebsd10'):
 +            macros = dict(                  # FreeBSD 7+
 +                HAVE_SEM_OPEN=1,
 +                HAVE_SEM_TIMEDWAIT=1,
@@ -24,4 +24,4 @@
 +                )
              libraries = []
  
-         elif platform.startswith('openbsd'):
+         elif host_platform.startswith('openbsd'):

Added: head/lang/python27/files/patch-Makefile.pre.in
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/lang/python27/files/patch-Makefile.pre.in	Fri May 17 04:17:22 2013	(r318353)
@@ -0,0 +1,14 @@
+--- ./Makefile.pre.in.orig	2013-04-06 18:02:34.000000000 +0400
++++ ./Makefile.pre.in	2013-04-07 22:30:19.000000000 +0400
+@@ -281,9 +281,9 @@
+ 
+ ##########################################################################
+ # AST
+-AST_H_DIR=	Include
++AST_H_DIR=	$(srcdir)/Include
+ AST_H=		$(AST_H_DIR)/Python-ast.h
+-AST_C_DIR=	Python
++AST_C_DIR=	$(srcdir)/Python
+ AST_C=		$(AST_C_DIR)/Python-ast.c
+ AST_ASDL=	$(srcdir)/Parser/Python.asdl
+ 

Modified: head/lang/python27/files/patch-setup.py
==============================================================================
--- head/lang/python27/files/patch-setup.py	Fri May 17 03:24:24 2013	(r318352)
+++ head/lang/python27/files/patch-setup.py	Fri May 17 04:17:22 2013	(r318353)
@@ -1,7 +1,7 @@
---- setup.py.orig	2011-06-11 17:46:28.000000000 +0200
-+++ setup.py	2011-10-18 12:05:34.000000000 +0200
-@@ -21,7 +21,7 @@
- COMPILED_WITH_PYDEBUG = hasattr(sys, 'gettotalrefcount')
+--- setup.py.orig	2013-04-06 18:02:41.000000000 +0400
++++ setup.py	2013-04-07 10:52:47.000000000 +0400
+@@ -33,7 +33,7 @@
+ COMPILED_WITH_PYDEBUG = ('--with-pydebug' in sysconfig.get_config_var("CONFIG_ARGS"))
  
  # This global variable is used to hold the list of modules to be disabled.
 -disabled_module_list = []
@@ -9,7 +9,7 @@
  
  def add_dir_to_list(dirlist, dir):
      """Add the directory 'dir' to the list 'dirlist' (at the front) if
-@@ -642,7 +642,7 @@
+@@ -720,7 +720,7 @@
          # use the same library for the readline and curses modules.
          if 'curses' in readline_termcap_library:
              curses_library = readline_termcap_library
@@ -18,16 +18,16 @@
              curses_library = 'ncursesw'
          elif self.compiler.find_library_file(lib_dirs, 'ncurses'):
              curses_library = 'ncurses'
-@@ -681,7 +681,7 @@
+@@ -755,7 +755,7 @@
+             elif curses_library:
+                 readline_libs.append(curses_library)
+             elif self.compiler.find_library_file(lib_dirs +
+-                                                     ['/usr/lib/termcap'],
++                                                     ['/usr/lib', '/usr/lib/termcap'],
                                                       'termcap'):
                  readline_libs.append('termcap')
              exts.append( Extension('readline', ['readline.c'],
--                                   library_dirs=['/usr/lib/termcap'],
-+                                   library_dirs=['/usr/lib', '/usr/lib/termcap'],
-                                    extra_link_args=readline_extra_link_args,
-                                    libraries=readline_libs) )
-         else:
-@@ -783,6 +783,8 @@
+@@ -862,6 +862,8 @@
              # OpenSSL doesn't do these until 0.9.8 so we'll bring our own hash
              exts.append( Extension('_sha256', ['sha256module.c']) )
              exts.append( Extension('_sha512', ['sha512module.c']) )
@@ -36,7 +36,7 @@
  
          # Modules that provide persistent dictionary-like semantics.  You will
          # probably want to arrange for at least one of them to be available on
-@@ -1120,7 +1122,7 @@
+@@ -1208,7 +1210,7 @@
                  sysroot = macosx_sdk_root()
                  f = os.path.join(sysroot, f[1:])
  
@@ -45,7 +45,7 @@
              data = open(f).read()
              m = re.search(r"#s*define\s+HASHVERSION\s+2\s*", data)
              if m is not None:
-@@ -1246,12 +1248,13 @@
+@@ -1338,12 +1340,13 @@
          # provided by the ncurses library.
          panel_library = 'panel'
          if curses_library.startswith('ncurses'):
@@ -58,9 +58,9 @@
              exts.append( Extension('_curses', ['_cursesmodule.c'],
 +                                   library_dirs = ['/usr/lib'],
                                     libraries = curses_libs) )
-         elif curses_library == 'curses' and platform != 'darwin':
+         elif curses_library == 'curses' and host_platform != 'darwin':
                  # OSX has an old Berkeley curses, not good enough for
-@@ -1264,6 +1267,7 @@
+@@ -1356,6 +1359,7 @@
                  curses_libs = ['curses']
  
              exts.append( Extension('_curses', ['_cursesmodule.c'],
@@ -68,25 +68,25 @@
                                     libraries = curses_libs) )
          else:
              missing.append('_curses')
-@@ -1432,7 +1436,7 @@
+@@ -1540,7 +1544,7 @@
              macros = dict()
              libraries = []
  
--        elif platform in ('freebsd4', 'freebsd5', 'freebsd6', 'freebsd7', 'freebsd8'):
-+        elif platform in ('freebsd4', 'freebsd5', 'freebsd6', 'freebsd7', 'freebsd8', 'freebsd9', 'freebsd10'):
+-        elif host_platform in ('freebsd4', 'freebsd5', 'freebsd6', 'freebsd7', 'freebsd8'):
++        elif host_platform in ('freebsd4', 'freebsd5', 'freebsd6', 'freebsd7', 'freebsd8', 'freebsd9', 'freebsd10'):
              # FreeBSD's P1003.1b semaphore support is very experimental
              # and has many known problems. (as of June 2008)
              macros = dict()
-@@ -1484,7 +1488,7 @@
+@@ -1592,7 +1596,7 @@
              missing.append('linuxaudiodev')
  
-         if (platform in ('linux2', 'freebsd4', 'freebsd5', 'freebsd6',
+         if (host_platform in ('linux2', 'freebsd4', 'freebsd5', 'freebsd6',
 -                        'freebsd7', 'freebsd8')
 +                        'freebsd7', 'freebsd8', 'freebsd9', 'freebsd10')
-             or platform.startswith("gnukfreebsd")):
+             or host_platform.startswith("gnukfreebsd")):
              exts.append( Extension('ossaudiodev', ['ossaudiodev.c']) )
          else:
-@@ -2066,9 +2070,7 @@
+@@ -2176,9 +2180,7 @@
            ext_modules=[Extension('_struct', ['_struct.c'])],
  
            # Scripts to install

Modified: head/lang/python27/pkg-plist
==============================================================================
--- head/lang/python27/pkg-plist	Fri May 17 03:24:24 2013	(r318352)
+++ head/lang/python27/pkg-plist	Fri May 17 04:17:22 2013	(r318353)
@@ -139,8 +139,10 @@ lib/lib%%PYTHON_VERSION%%.so.1
 %%PYTHON_LIBDIR%%/__future__.py
 %%PYTHON_LIBDIR%%/__phello__.foo.py
 %%PYTHON_LIBDIR%%/_abcoll.py
+%%PYTHON_LIBDIR%%/_osx_support.py
 %%PYTHON_LIBDIR%%/_pyio.py
 %%PYTHON_LIBDIR%%/_strptime.py
+%%PYTHON_LIBDIR%%/_sysconfigdata.py
 %%PYTHON_LIBDIR%%/_threading_local.py
 %%PYTHON_LIBDIR%%/_weakrefset.py
 %%PYTHON_LIBDIR%%/abc.py
@@ -291,6 +293,7 @@ lib/lib%%PYTHON_VERSION%%.so.1
 %%PYTHON_LIBDIR%%/ctypes/test/test_values.py
 %%PYTHON_LIBDIR%%/ctypes/test/test_varsize_struct.py
 %%PYTHON_LIBDIR%%/ctypes/test/test_win32.py
+%%PYTHON_LIBDIR%%/ctypes/test/test_wintypes.py
 %%PYTHON_LIBDIR%%/ctypes/util.py
 %%PYTHON_LIBDIR%%/ctypes/wintypes.py
 %%PYTHON_LIBDIR%%/curses/__init__.py
@@ -740,6 +743,7 @@ lib/lib%%PYTHON_VERSION%%.so.1
 %%PYTHON_LIBDIR%%/json/tests/test_scanstring.py
 %%PYTHON_LIBDIR%%/json/tests/test_separators.py
 %%PYTHON_LIBDIR%%/json/tests/test_speedups.py
+%%PYTHON_LIBDIR%%/json/tests/test_tool.py
 %%PYTHON_LIBDIR%%/json/tests/test_unicode.py
 %%PYTHON_LIBDIR%%/json/tool.py
 %%PYTHON_LIBDIR%%/keyword.py
@@ -1284,6 +1288,7 @@ lib/lib%%PYTHON_VERSION%%.so.1
 %%PYTHON_LIBDIR%%/test/lock_tests.py
 %%PYTHON_LIBDIR%%/test/mapping_tests.py
 %%PYTHON_LIBDIR%%/test/math_testcases.txt
+%%PYTHON_LIBDIR%%/test/mp_fork_bomb.py
 %%PYTHON_LIBDIR%%/test/nullcert.pem
 %%PYTHON_LIBDIR%%/test/outstanding_bugs.py
 %%PYTHON_LIBDIR%%/test/pickletester.py
@@ -1300,21 +1305,23 @@ lib/lib%%PYTHON_VERSION%%.so.1
 %%PYTHON_LIBDIR%%/test/relimport.py
 %%PYTHON_LIBDIR%%/test/reperf.py
 %%PYTHON_LIBDIR%%/test/sample_doctest.py
+%%PYTHON_LIBDIR%%/test/sample_doctest_no_docstrings.py
+%%PYTHON_LIBDIR%%/test/sample_doctest_no_doctests.py
 %%PYTHON_LIBDIR%%/test/script_helper.py
 %%PYTHON_LIBDIR%%/test/seq_tests.py
 %%PYTHON_LIBDIR%%/test/sha256.pem
 %%PYTHON_LIBDIR%%/test/sgml_input.html
 %%PYTHON_LIBDIR%%/test/sortperf.py
-%%PYTHON_LIBDIR%%/test/ssl_cert.pem
-%%PYTHON_LIBDIR%%/test/ssl_key.pem
 %%PYTHON_LIBDIR%%/test/string_tests.py
 %%PYTHON_LIBDIR%%/test/subprocessdata/sigchild_ignore.py
+%%PYTHON_LIBDIR%%/test/symlink_support.py
 %%PYTHON_LIBDIR%%/test/test_MimeWriter.py
 %%PYTHON_LIBDIR%%/test/test_SimpleHTTPServer.py
 %%PYTHON_LIBDIR%%/test/test_StringIO.py
 %%PYTHON_LIBDIR%%/test/test___all__.py
 %%PYTHON_LIBDIR%%/test/test___future__.py
 %%PYTHON_LIBDIR%%/test/test__locale.py
+%%PYTHON_LIBDIR%%/test/test__osx_support.py
 %%PYTHON_LIBDIR%%/test/test_abc.py
 %%PYTHON_LIBDIR%%/test/test_abstract_numbers.py
 %%PYTHON_LIBDIR%%/test/test_aepack.py
@@ -1438,6 +1445,7 @@ lib/lib%%PYTHON_VERSION%%.so.1
 %%PYTHON_LIBDIR%%/test/test_extcall.py
 %%PYTHON_LIBDIR%%/test/test_fcntl.py
 %%PYTHON_LIBDIR%%/test/test_file.py
+%%PYTHON_LIBDIR%%/test/test_file_eintr.py
 %%PYTHON_LIBDIR%%/test/test_file2k.py
 %%PYTHON_LIBDIR%%/test/test_filecmp.py
 %%PYTHON_LIBDIR%%/test/test_fileinput.py
@@ -1654,6 +1662,7 @@ lib/lib%%PYTHON_VERSION%%.so.1
 %%PYTHON_LIBDIR%%/test/test_timeout.py
 %%PYTHON_LIBDIR%%/test/test_tk.py
 %%PYTHON_LIBDIR%%/test/test_tokenize.py
+%%PYTHON_LIBDIR%%/test/test_tools.py
 %%PYTHON_LIBDIR%%/test/test_trace.py
 %%PYTHON_LIBDIR%%/test/test_traceback.py
 %%PYTHON_LIBDIR%%/test/test_transformer.py

Modified: head/lang/python31/Makefile
==============================================================================
--- head/lang/python31/Makefile	Fri May 17 03:24:24 2013	(r318352)
+++ head/lang/python31/Makefile	Fri May 17 04:17:22 2013	(r318353)
@@ -11,6 +11,9 @@ DISTFILES=	${PYTHON_DISTFILE}
 MAINTAINER=	python@FreeBSD.org
 COMMENT=	Interpreted object-oriented programming language
 
+DEPRECATED=	This port will reach it's EoL upstream soon, please migrate to lang/python33
+EXPIRATION_DATE=2014-06-01
+
 DIST_SUBDIR=	python
 WRKSRC=		${PYTHON_WRKSRC}/portbld.static
 PATCH_WRKSRC=	${PYTHON_WRKSRC}

Modified: head/lang/python32/Makefile
==============================================================================
--- head/lang/python32/Makefile	Fri May 17 03:24:24 2013	(r318352)
+++ head/lang/python32/Makefile	Fri May 17 04:17:22 2013	(r318353)
@@ -1,8 +1,7 @@
 # $FreeBSD$
 
 PORTNAME=	python32
-PORTVERSION=	3.2.3
-PORTREVISION=	2
+PORTVERSION=	3.2.4
 CATEGORIES=	lang python ipv6
 MASTER_SITES=	PYTHON
 MASTER_SITE_SUBDIR=	${PYTHON_MASTER_SITE_SUBDIR}

Modified: head/lang/python32/distinfo
==============================================================================
--- head/lang/python32/distinfo	Fri May 17 03:24:24 2013	(r318352)
+++ head/lang/python32/distinfo	Fri May 17 04:17:22 2013	(r318353)
@@ -1,2 +1,2 @@
-SHA256 (python/Python-3.2.3.tar.xz) = 23c16f621f21e54987079765c060196cbe50235c7867147c6126d433054b1754
-SIZE (python/Python-3.2.3.tar.xz) = 8970368
+SHA256 (python/Python-3.2.4.tar.xz) = 0949d92d04f001e51cc0daa4c0e9861f65af94e378ff0e664c239cc78c206ef4
+SIZE (python/Python-3.2.4.tar.xz) = 9223024

Added: head/lang/python32/files/patch-Makefile.pre.in
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/lang/python32/files/patch-Makefile.pre.in	Fri May 17 04:17:22 2013	(r318353)
@@ -0,0 +1,46 @@
+--- ./Makefile.pre.in.orig	2013-04-06 11:38:41.000000000 +0400
++++ ./Makefile.pre.in	2013-04-08 17:48:45.000000000 +0400
+@@ -277,21 +277,21 @@
+ 
+ ##########################################################################
+ # AST
+-AST_H_DIR=	Include
++AST_H_DIR=	$(srcdir)/Include
+ AST_H=		$(AST_H_DIR)/Python-ast.h
+-AST_C_DIR=	Python
++AST_C_DIR=	$(srcdir)/Python
+ AST_C=		$(AST_C_DIR)/Python-ast.c
+ AST_ASDL=	$(srcdir)/Parser/Python.asdl
+ 
+ ASDLGEN_FILES=	$(srcdir)/Parser/asdl.py $(srcdir)/Parser/asdl_c.py
+ # XXX Note that a build now requires Python exist before the build starts
+-ASDLGEN=	@ASDLGEN@ $(srcdir)/Parser/asdl_c.py
++ASDLGEN=	@DISABLE_ASDLGEN@ $(srcdir)/Parser/asdl_c.py
+ 
+ ##########################################################################
+ # Python
+ 
+ OPCODETARGETS_H= \
+-		Python/opcode_targets.h
++		$(srcdir)/Python/opcode_targets.h
+ 
+ OPCODETARGETGEN= \
+ 		$(srcdir)/Python/makeopcodetargets.py
+@@ -676,7 +676,7 @@
+ Objects/setobject.o: $(srcdir)/Objects/stringlib/eq.h
+ 
+ $(OPCODETARGETS_H): $(OPCODETARGETGEN_FILES)
+-	$(OPCODETARGETGEN) $(OPCODETARGETS_H)
++#	$(OPCODETARGETGEN) $(OPCODETARGETS_H)
+ 
+ Python/ceval.o: $(OPCODETARGETS_H) Python/ceval_gil.h
+ 
+@@ -686,7 +686,7 @@
+ 
+ Objects/typeobject.o: Objects/typeslots.inc
+ Objects/typeslots.inc: $(srcdir)/Include/typeslots.h $(srcdir)/Objects/typeslots.py
+-	$(PYTHON) $(srcdir)/Objects/typeslots.py < $(srcdir)/Include/typeslots.h > Objects/typeslots.inc
++#	$(PYTHON) $(srcdir)/Objects/typeslots.py < $(srcdir)/Include/typeslots.h > Objects/typeslots.inc
+ 
+ ############################################################################
+ # Header files

Modified: head/lang/python32/pkg-plist
==============================================================================
--- head/lang/python32/pkg-plist	Fri May 17 03:24:24 2013	(r318352)
+++ head/lang/python32/pkg-plist	Fri May 17 04:17:22 2013	(r318353)
@@ -128,6 +128,8 @@ libdata/pkgconfig/python-3.2.pc
 %%PYTHON_LIBDIR%%/__pycache__/_dummy_thread.cpython-32.pyo
 %%PYTHON_LIBDIR%%/__pycache__/_markupbase.cpython-32.pyc
 %%PYTHON_LIBDIR%%/__pycache__/_markupbase.cpython-32.pyo
+%%PYTHON_LIBDIR%%/__pycache__/_osx_support.cpython-32.pyc
+%%PYTHON_LIBDIR%%/__pycache__/_osx_support.cpython-32.pyo
 %%PYTHON_LIBDIR%%/__pycache__/_pyio.cpython-32.pyc
 %%PYTHON_LIBDIR%%/__pycache__/_pyio.cpython-32.pyo
 %%PYTHON_LIBDIR%%/__pycache__/_strptime.cpython-32.pyc
@@ -422,6 +424,7 @@ libdata/pkgconfig/python-3.2.pc
 %%PYTHON_LIBDIR%%/_compat_pickle.py
 %%PYTHON_LIBDIR%%/_dummy_thread.py
 %%PYTHON_LIBDIR%%/_markupbase.py
+%%PYTHON_LIBDIR%%/_osx_support.py
 %%PYTHON_LIBDIR%%/_pyio.py
 %%PYTHON_LIBDIR%%/_strptime.py
 %%PYTHON_LIBDIR%%/_threading_local.py
@@ -2421,6 +2424,8 @@ libdata/pkgconfig/python-3.2.pc
 %%PYTHON_LIBDIR%%/test/__pycache__/mapping_tests.cpython-32.pyo
 %%PYTHON_LIBDIR%%/test/__pycache__/mock_socket.cpython-32.pyc
 %%PYTHON_LIBDIR%%/test/__pycache__/mock_socket.cpython-32.pyo
+%%PYTHON_LIBDIR%%/test/__pycache__/mp_fork_bomb.cpython-32.pyc
+%%PYTHON_LIBDIR%%/test/__pycache__/mp_fork_bomb.cpython-32.pyo
 %%PYTHON_LIBDIR%%/test/__pycache__/outstanding_bugs.cpython-32.pyc
 %%PYTHON_LIBDIR%%/test/__pycache__/outstanding_bugs.cpython-32.pyo
 %%PYTHON_LIBDIR%%/test/__pycache__/pickletester.cpython-32.pyc
@@ -2445,6 +2450,10 @@ libdata/pkgconfig/python-3.2.pc
 %%PYTHON_LIBDIR%%/test/__pycache__/reperf.cpython-32.pyo
 %%PYTHON_LIBDIR%%/test/__pycache__/sample_doctest.cpython-32.pyc
 %%PYTHON_LIBDIR%%/test/__pycache__/sample_doctest.cpython-32.pyo
+%%PYTHON_LIBDIR%%/test/__pycache__/sample_doctest_no_docstrings.cpython-32.pyc
+%%PYTHON_LIBDIR%%/test/__pycache__/sample_doctest_no_docstrings.cpython-32.pyo
+%%PYTHON_LIBDIR%%/test/__pycache__/sample_doctest_no_doctests.cpython-32.pyc
+%%PYTHON_LIBDIR%%/test/__pycache__/sample_doctest_no_doctests.cpython-32.pyo
 %%PYTHON_LIBDIR%%/test/__pycache__/script_helper.cpython-32.pyc
 %%PYTHON_LIBDIR%%/test/__pycache__/script_helper.cpython-32.pyo
 %%PYTHON_LIBDIR%%/test/__pycache__/seq_tests.cpython-32.pyc
@@ -2463,6 +2472,8 @@ libdata/pkgconfig/python-3.2.pc
 %%PYTHON_LIBDIR%%/test/__pycache__/test___future__.cpython-32.pyo
 %%PYTHON_LIBDIR%%/test/__pycache__/test__locale.cpython-32.pyc
 %%PYTHON_LIBDIR%%/test/__pycache__/test__locale.cpython-32.pyo
+%%PYTHON_LIBDIR%%/test/__pycache__/test__osx_support.cpython-32.pyc
+%%PYTHON_LIBDIR%%/test/__pycache__/test__osx_support.cpython-32.pyo
 %%PYTHON_LIBDIR%%/test/__pycache__/test_abc.cpython-32.pyc
 %%PYTHON_LIBDIR%%/test/__pycache__/test_abc.cpython-32.pyo
 %%PYTHON_LIBDIR%%/test/__pycache__/test_abstract_numbers.cpython-32.pyc
@@ -2667,6 +2678,8 @@ libdata/pkgconfig/python-3.2.pc
 %%PYTHON_LIBDIR%%/test/__pycache__/test_fileinput.cpython-32.pyo
 %%PYTHON_LIBDIR%%/test/__pycache__/test_fileio.cpython-32.pyc
 %%PYTHON_LIBDIR%%/test/__pycache__/test_fileio.cpython-32.pyo
+%%PYTHON_LIBDIR%%/test/__pycache__/test_file_eintr.cpython-32.pyc
+%%PYTHON_LIBDIR%%/test/__pycache__/test_file_eintr.cpython-32.pyo
 %%PYTHON_LIBDIR%%/test/__pycache__/test_float.cpython-32.pyc
 %%PYTHON_LIBDIR%%/test/__pycache__/test_float.cpython-32.pyo
 %%PYTHON_LIBDIR%%/test/__pycache__/test_flufl.cpython-32.pyc
@@ -3071,6 +3084,8 @@ libdata/pkgconfig/python-3.2.pc
 %%PYTHON_LIBDIR%%/test/__pycache__/test_tk.cpython-32.pyo
 %%PYTHON_LIBDIR%%/test/__pycache__/test_tokenize.cpython-32.pyc
 %%PYTHON_LIBDIR%%/test/__pycache__/test_tokenize.cpython-32.pyo
+%%PYTHON_LIBDIR%%/test/__pycache__/test_tools.cpython-32.pyc
+%%PYTHON_LIBDIR%%/test/__pycache__/test_tools.cpython-32.pyo
 %%PYTHON_LIBDIR%%/test/__pycache__/test_trace.cpython-32.pyc
 %%PYTHON_LIBDIR%%/test/__pycache__/test_trace.cpython-32.pyo
 %%PYTHON_LIBDIR%%/test/__pycache__/test_traceback.cpython-32.pyc
@@ -3435,6 +3450,8 @@ libdata/pkgconfig/python-3.2.pc
 %%PYTHON_LIBDIR%%/test/json_tests/__pycache__/test_separators.cpython-32.pyo
 %%PYTHON_LIBDIR%%/test/json_tests/__pycache__/test_speedups.cpython-32.pyc
 %%PYTHON_LIBDIR%%/test/json_tests/__pycache__/test_speedups.cpython-32.pyo
+%%PYTHON_LIBDIR%%/test/json_tests/__pycache__/test_tool.cpython-32.pyc
+%%PYTHON_LIBDIR%%/test/json_tests/__pycache__/test_tool.cpython-32.pyo
 %%PYTHON_LIBDIR%%/test/json_tests/__pycache__/test_unicode.cpython-32.pyc
 %%PYTHON_LIBDIR%%/test/json_tests/__pycache__/test_unicode.cpython-32.pyo
 %%PYTHON_LIBDIR%%/test/json_tests/test_decode.py
@@ -3451,6 +3468,7 @@ libdata/pkgconfig/python-3.2.pc
 %%PYTHON_LIBDIR%%/test/json_tests/test_scanstring.py
 %%PYTHON_LIBDIR%%/test/json_tests/test_separators.py
 %%PYTHON_LIBDIR%%/test/json_tests/test_speedups.py
+%%PYTHON_LIBDIR%%/test/json_tests/test_tool.py
 %%PYTHON_LIBDIR%%/test/json_tests/test_unicode.py
 %%PYTHON_LIBDIR%%/test/keycert.pem
 %%PYTHON_LIBDIR%%/test/keycert2.pem
@@ -3460,6 +3478,7 @@ libdata/pkgconfig/python-3.2.pc
 %%PYTHON_LIBDIR%%/test/mapping_tests.py
 %%PYTHON_LIBDIR%%/test/math_testcases.txt
 %%PYTHON_LIBDIR%%/test/mock_socket.py
+%%PYTHON_LIBDIR%%/test/mp_fork_bomb.py
 %%PYTHON_LIBDIR%%/test/nullcert.pem
 %%PYTHON_LIBDIR%%/test/outstanding_bugs.py
 %%PYTHON_LIBDIR%%/test/pickletester.py
@@ -3477,10 +3496,21 @@ libdata/pkgconfig/python-3.2.pc
 %%PYTHON_LIBDIR%%/test/relimport.py
 %%PYTHON_LIBDIR%%/test/reperf.py
 %%PYTHON_LIBDIR%%/test/sample_doctest.py
+%%PYTHON_LIBDIR%%/test/sample_doctest_no_docstrings.py
+%%PYTHON_LIBDIR%%/test/sample_doctest_no_doctests.py
 %%PYTHON_LIBDIR%%/test/script_helper.py
 %%PYTHON_LIBDIR%%/test/seq_tests.py
 %%PYTHON_LIBDIR%%/test/sgml_input.html
 %%PYTHON_LIBDIR%%/test/sha256.pem
+%%PYTHON_LIBDIR%%/test/sndhdrdata/README
+%%PYTHON_LIBDIR%%/test/sndhdrdata/sndhdr.8svx
+%%PYTHON_LIBDIR%%/test/sndhdrdata/sndhdr.aifc
+%%PYTHON_LIBDIR%%/test/sndhdrdata/sndhdr.aiff
+%%PYTHON_LIBDIR%%/test/sndhdrdata/sndhdr.au
+%%PYTHON_LIBDIR%%/test/sndhdrdata/sndhdr.hcom
+%%PYTHON_LIBDIR%%/test/sndhdrdata/sndhdr.sndt
+%%PYTHON_LIBDIR%%/test/sndhdrdata/sndhdr.voc
+%%PYTHON_LIBDIR%%/test/sndhdrdata/sndhdr.wav
 %%PYTHON_LIBDIR%%/test/sortperf.py
 %%PYTHON_LIBDIR%%/test/ssl_cert.pem
 %%PYTHON_LIBDIR%%/test/ssl_key.pem
@@ -3508,6 +3538,7 @@ libdata/pkgconfig/python-3.2.pc
 %%PYTHON_LIBDIR%%/test/test___all__.py
 %%PYTHON_LIBDIR%%/test/test___future__.py
 %%PYTHON_LIBDIR%%/test/test__locale.py
+%%PYTHON_LIBDIR%%/test/test__osx_support.py
 %%PYTHON_LIBDIR%%/test/test_abc.py
 %%PYTHON_LIBDIR%%/test/test_abstract_numbers.py
 %%PYTHON_LIBDIR%%/test/test_aifc.py
@@ -3615,6 +3646,7 @@ libdata/pkgconfig/python-3.2.pc
 %%PYTHON_LIBDIR%%/test/test_filecmp.py
 %%PYTHON_LIBDIR%%/test/test_fileinput.py
 %%PYTHON_LIBDIR%%/test/test_fileio.py
+%%PYTHON_LIBDIR%%/test/test_file_eintr.py
 %%PYTHON_LIBDIR%%/test/test_float.py
 %%PYTHON_LIBDIR%%/test/test_flufl.py
 %%PYTHON_LIBDIR%%/test/test_fnmatch.py
@@ -3816,6 +3848,7 @@ libdata/pkgconfig/python-3.2.pc
 %%PYTHON_LIBDIR%%/test/test_timeout.py
 %%PYTHON_LIBDIR%%/test/test_tk.py
 %%PYTHON_LIBDIR%%/test/test_tokenize.py
+%%PYTHON_LIBDIR%%/test/test_tools.py
 %%PYTHON_LIBDIR%%/test/test_trace.py
 %%PYTHON_LIBDIR%%/test/test_traceback.py
 %%PYTHON_LIBDIR%%/test/test_ttk_guionly.py
@@ -3864,6 +3897,7 @@ libdata/pkgconfig/python-3.2.pc
 %%PYTHON_LIBDIR%%/test/test_zipimport.py
 %%PYTHON_LIBDIR%%/test/test_zipimport_support.py
 %%PYTHON_LIBDIR%%/test/test_zlib.py
+%%PYTHON_LIBDIR%%/test/testbz2_bigmem.bz2
 %%PYTHON_LIBDIR%%/test/testcodec.py
 %%PYTHON_LIBDIR%%/test/testtar.tar
 %%PYTHON_LIBDIR%%/test/tf_inherit_check.py
@@ -3953,10 +3987,13 @@ libdata/pkgconfig/python-3.2.pc
 %%PYTHON_LIBDIR%%/tkinter/test/test_tkinter/__pycache__/test_font.cpython-32.pyo
 %%PYTHON_LIBDIR%%/tkinter/test/test_tkinter/__pycache__/test_loadtk.cpython-32.pyc
 %%PYTHON_LIBDIR%%/tkinter/test/test_tkinter/__pycache__/test_loadtk.cpython-32.pyo
+%%PYTHON_LIBDIR%%/tkinter/test/test_tkinter/__pycache__/test_misc.cpython-32.pyc
+%%PYTHON_LIBDIR%%/tkinter/test/test_tkinter/__pycache__/test_misc.cpython-32.pyo
 %%PYTHON_LIBDIR%%/tkinter/test/test_tkinter/__pycache__/test_text.cpython-32.pyc
 %%PYTHON_LIBDIR%%/tkinter/test/test_tkinter/__pycache__/test_text.cpython-32.pyo
 %%PYTHON_LIBDIR%%/tkinter/test/test_tkinter/test_font.py
 %%PYTHON_LIBDIR%%/tkinter/test/test_tkinter/test_loadtk.py
+%%PYTHON_LIBDIR%%/tkinter/test/test_tkinter/test_misc.py
 %%PYTHON_LIBDIR%%/tkinter/test/test_tkinter/test_text.py
 %%PYTHON_LIBDIR%%/tkinter/test/test_ttk/__init__.py
 %%PYTHON_LIBDIR%%/tkinter/test/test_ttk/__pycache__/__init__.cpython-32.pyc
@@ -4346,6 +4383,7 @@ libdata/pkgconfig/python-3.2.pc
 @dirrm %%PYTHON_LIBDIR%%/test/encoded_modules
 @dirrm %%PYTHON_LIBDIR%%/test/json_tests/__pycache__
 @dirrm %%PYTHON_LIBDIR%%/test/json_tests
+@dirrm %%PYTHON_LIBDIR%%/test/sndhdrdata
 @dirrm %%PYTHON_LIBDIR%%/test/subprocessdata/__pycache__
 @dirrm %%PYTHON_LIBDIR%%/test/subprocessdata
 @dirrm %%PYTHON_LIBDIR%%/test/tracedmodules/__pycache__

Modified: head/lang/python33/Makefile
==============================================================================
--- head/lang/python33/Makefile	Fri May 17 03:24:24 2013	(r318352)
+++ head/lang/python33/Makefile	Fri May 17 04:17:22 2013	(r318353)
@@ -1,8 +1,7 @@
 # $FreeBSD$
 
 PORTNAME=	python33
-PORTVERSION=	3.3.0
-PORTREVISION=	2
+PORTVERSION=	3.3.1
 CATEGORIES=	lang python ipv6
 MASTER_SITES=	PYTHON
 MASTER_SITE_SUBDIR=	${PYTHON_MASTER_SITE_SUBDIR}

Modified: head/lang/python33/distinfo
==============================================================================
--- head/lang/python33/distinfo	Fri May 17 03:24:24 2013	(r318352)
+++ head/lang/python33/distinfo	Fri May 17 04:17:22 2013	(r318353)
@@ -1,2 +1,2 @@
-SHA256 (python/Python-3.3.0.tar.xz) = 09994d2885a8ef61b4b2389527a9805a4a05e3e0f121dbc8e4222f9010f5bbd7
-SIZE (python/Python-3.3.0.tar.xz) = 11720732
+SHA256 (python/Python-3.3.1.tar.xz) = f8a7f0117c9a8263a52991cb86a55082888850b196d9dfad6d84bb0549e7c76a
+SIZE (python/Python-3.3.1.tar.xz) = 11852964

Added: head/lang/python33/files/patch-Makefile.pre.in
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/lang/python33/files/patch-Makefile.pre.in	Fri May 17 04:17:22 2013	(r318353)
@@ -0,0 +1,46 @@
+--- ./Makefile.pre.in.orig	2013-04-06 11:41:48.000000000 +0400
++++ ./Makefile.pre.in	2013-04-08 16:16:25.000000000 +0400
+@@ -306,21 +306,21 @@
+ 
+ ##########################################################################
+ # AST
+-AST_H_DIR=	Include
++AST_H_DIR=	$(srcdir)/Include
+ AST_H=		$(AST_H_DIR)/Python-ast.h
+-AST_C_DIR=	Python
++AST_C_DIR=	$(srcdir)/Python
+ AST_C=		$(AST_C_DIR)/Python-ast.c
+ AST_ASDL=	$(srcdir)/Parser/Python.asdl
+ 
+ ASDLGEN_FILES=	$(srcdir)/Parser/asdl.py $(srcdir)/Parser/asdl_c.py
+ # XXX Note that a build now requires Python exist before the build starts
+-ASDLGEN=	@ASDLGEN@ $(srcdir)/Parser/asdl_c.py
++ASDLGEN=	@DISABLE_ASDLGEN@ $(srcdir)/Parser/asdl_c.py
+ 
+ ##########################################################################
+ # Python
+ 
+ OPCODETARGETS_H= \
+-		Python/opcode_targets.h
++		$(srcdir)/Python/opcode_targets.h
+ 
+ OPCODETARGETGEN= \
+ 		$(srcdir)/Python/makeopcodetargets.py
+@@ -742,7 +742,7 @@
+ Objects/setobject.o: $(srcdir)/Objects/stringlib/eq.h
+ 
+ $(OPCODETARGETS_H): $(OPCODETARGETGEN_FILES)
+-	$(OPCODETARGETGEN) $(OPCODETARGETS_H)
++#	$(OPCODETARGETGEN) $(OPCODETARGETS_H)
+ 
+ Python/ceval.o: $(OPCODETARGETS_H) $(srcdir)/Python/ceval_gil.h
+ 
+@@ -753,7 +753,7 @@
+ 
+ Objects/typeobject.o: Objects/typeslots.inc
+ Objects/typeslots.inc: $(srcdir)/Include/typeslots.h $(srcdir)/Objects/typeslots.py
+-	$(PYTHON) $(srcdir)/Objects/typeslots.py < $(srcdir)/Include/typeslots.h > Objects/typeslots.inc
++#	$(PYTHON) $(srcdir)/Objects/typeslots.py < $(srcdir)/Include/typeslots.h > Objects/typeslots.inc
+ 
+ ############################################################################
+ # Header files

Modified: head/lang/python33/files/patch-Modules-_ctypes-libffi-configure
==============================================================================
--- head/lang/python33/files/patch-Modules-_ctypes-libffi-configure	Fri May 17 03:24:24 2013	(r318352)
+++ head/lang/python33/files/patch-Modules-_ctypes-libffi-configure	Fri May 17 04:17:22 2013	(r318353)
@@ -1,6 +1,6 @@
---- ./Modules/_ctypes/libffi/configure.orig	2012-09-29 18:00:42.000000000 +1000
-+++ ./Modules/_ctypes/libffi/configure	2012-10-04 20:21:15.000000000 +1000
-@@ -6834,7 +6834,7 @@
+--- ./Modules/_ctypes/libffi/configure.orig	2013-04-06 11:41:49.000000000 +0400
++++ ./Modules/_ctypes/libffi/configure	2013-04-08 12:50:54.000000000 +0400
+@@ -6889,7 +6889,7 @@
    rm -rf conftest*
    ;;
  
@@ -9,14 +9,14 @@
  s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
    # Find out which ABI we are using.
    echo 'int i;' > conftest.$ac_ext
-@@ -14322,10 +14322,10 @@
+@@ -14505,10 +14505,10 @@
    $as_echo_n "(cached) " >&6
  else
  
 -	libffi_cv_as_x86_pcrel=yes
 +	libffi_cv_as_x86_pcrel=no
  	echo '.text; foo: nop; .data; .long foo-.; .text' > conftest.s
--	if $CC $CFLAGS -c conftest.s 2>&1 | $EGREP -i 'illegal|warning' > /dev/null; then
+-	if $CC $CFLAGS -c conftest.s 2>&1 | grep -i warning > /dev/null; then
 -	    libffi_cv_as_x86_pcrel=no
 +	if $CC $CFLAGS -c conftest.s > /dev/null; then
 +	    libffi_cv_as_x86_pcrel=yes

Modified: head/lang/python33/pkg-plist
==============================================================================
--- head/lang/python33/pkg-plist	Fri May 17 03:24:24 2013	(r318352)
+++ head/lang/python33/pkg-plist	Fri May 17 04:17:22 2013	(r318353)
@@ -2329,6 +2329,10 @@ libdata/pkgconfig/python-%%PYVER%%.pc
 %%PYTHON_LIBDIR%%/test/__pycache__/reperf.cpython-33.pyo
 %%PYTHON_LIBDIR%%/test/__pycache__/sample_doctest.cpython-33.pyc
 %%PYTHON_LIBDIR%%/test/__pycache__/sample_doctest.cpython-33.pyo
+%%PYTHON_LIBDIR%%/test/__pycache__/sample_doctest_no_docstrings.cpython-33.pyc
+%%PYTHON_LIBDIR%%/test/__pycache__/sample_doctest_no_docstrings.cpython-33.pyo
+%%PYTHON_LIBDIR%%/test/__pycache__/sample_doctest_no_doctests.cpython-33.pyc
+%%PYTHON_LIBDIR%%/test/__pycache__/sample_doctest_no_doctests.cpython-33.pyo
 %%PYTHON_LIBDIR%%/test/__pycache__/script_helper.cpython-33.pyc
 %%PYTHON_LIBDIR%%/test/__pycache__/script_helper.cpython-33.pyo
 %%PYTHON_LIBDIR%%/test/__pycache__/seq_tests.cpython-33.pyc
@@ -3049,6 +3053,8 @@ libdata/pkgconfig/python-%%PYVER%%.pc
 %%PYTHON_LIBDIR%%/test/__pycache__/test_weakref.cpython-33.pyo
 %%PYTHON_LIBDIR%%/test/__pycache__/test_weakset.cpython-33.pyc
 %%PYTHON_LIBDIR%%/test/__pycache__/test_weakset.cpython-33.pyo
+%%PYTHON_LIBDIR%%/test/__pycache__/test_webbrowser.cpython-33.pyc
+%%PYTHON_LIBDIR%%/test/__pycache__/test_webbrowser.cpython-33.pyo
 %%PYTHON_LIBDIR%%/test/__pycache__/test_winreg.cpython-33.pyc
 %%PYTHON_LIBDIR%%/test/__pycache__/test_winreg.cpython-33.pyo
 %%PYTHON_LIBDIR%%/test/__pycache__/test_winsound.cpython-33.pyc
@@ -3348,6 +3354,8 @@ libdata/pkgconfig/python-%%PYVER%%.pc
 %%PYTHON_LIBDIR%%/test/json_tests/__pycache__/test_separators.cpython-33.pyo
 %%PYTHON_LIBDIR%%/test/json_tests/__pycache__/test_speedups.cpython-33.pyc
 %%PYTHON_LIBDIR%%/test/json_tests/__pycache__/test_speedups.cpython-33.pyo
+%%PYTHON_LIBDIR%%/test/json_tests/__pycache__/test_tool.cpython-33.pyc
+%%PYTHON_LIBDIR%%/test/json_tests/__pycache__/test_tool.cpython-33.pyo
 %%PYTHON_LIBDIR%%/test/json_tests/__pycache__/test_unicode.cpython-33.pyc
 %%PYTHON_LIBDIR%%/test/json_tests/__pycache__/test_unicode.cpython-33.pyo
 %%PYTHON_LIBDIR%%/test/json_tests/test_decode.py
@@ -3364,6 +3372,7 @@ libdata/pkgconfig/python-%%PYVER%%.pc
 %%PYTHON_LIBDIR%%/test/json_tests/test_scanstring.py
 %%PYTHON_LIBDIR%%/test/json_tests/test_separators.py
 %%PYTHON_LIBDIR%%/test/json_tests/test_speedups.py
+%%PYTHON_LIBDIR%%/test/json_tests/test_tool.py
 %%PYTHON_LIBDIR%%/test/json_tests/test_unicode.py
 %%PYTHON_LIBDIR%%/test/keycert.passwd.pem
 %%PYTHON_LIBDIR%%/test/keycert.pem
@@ -3429,6 +3438,8 @@ libdata/pkgconfig/python-%%PYVER%%.pc
 %%PYTHON_LIBDIR%%/test/relimport.py
 %%PYTHON_LIBDIR%%/test/reperf.py
 %%PYTHON_LIBDIR%%/test/sample_doctest.py
+%%PYTHON_LIBDIR%%/test/sample_doctest_no_docstrings.py
+%%PYTHON_LIBDIR%%/test/sample_doctest_no_doctests.py
 %%PYTHON_LIBDIR%%/test/script_helper.py
 %%PYTHON_LIBDIR%%/test/seq_tests.py
 %%PYTHON_LIBDIR%%/test/sgml_input.html
@@ -3630,6 +3641,7 @@ libdata/pkgconfig/python-%%PYVER%%.pc
 %%PYTHON_LIBDIR%%/test/test_email/test_email.py
 %%PYTHON_LIBDIR%%/test/test_email/test_generator.py
 %%PYTHON_LIBDIR%%/test/test_email/test_headerregistry.py
+%%PYTHON_LIBDIR%%/test/test_email/test_inversion.py
 %%PYTHON_LIBDIR%%/test/test_email/test_message.py
 %%PYTHON_LIBDIR%%/test/test_email/test_parser.py
 %%PYTHON_LIBDIR%%/test/test_email/test_pickleable.py
@@ -3645,6 +3657,8 @@ libdata/pkgconfig/python-%%PYVER%%.pc
 %%PYTHON_LIBDIR%%/test/test_email/__pycache__/test_email.cpython-33.pyc
 %%PYTHON_LIBDIR%%/test/test_email/__pycache__/test_generator.cpython-33.pyc
 %%PYTHON_LIBDIR%%/test/test_email/__pycache__/test_headerregistry.cpython-33.pyc
+%%PYTHON_LIBDIR%%/test/test_email/__pycache__/test_inversion.cpython-33.pyc
+%%PYTHON_LIBDIR%%/test/test_email/__pycache__/test_inversion.cpython-33.pyo
 %%PYTHON_LIBDIR%%/test/test_email/__pycache__/test_message.cpython-33.pyc
 %%PYTHON_LIBDIR%%/test/test_email/__pycache__/test_parser.cpython-33.pyc
 %%PYTHON_LIBDIR%%/test/test_email/__pycache__/test_pickleable.cpython-33.pyc
@@ -4048,6 +4062,7 @@ libdata/pkgconfig/python-%%PYVER%%.pc
 %%PYTHON_LIBDIR%%/test/test_xml_etree_c.py
 %%PYTHON_LIBDIR%%/test/test_xmlrpc.py
 %%PYTHON_LIBDIR%%/test/test_xmlrpc_net.py
+%%PYTHON_LIBDIR%%/test/test_webbrowser.py
 %%PYTHON_LIBDIR%%/test/test_zipfile.py
 %%PYTHON_LIBDIR%%/test/test_zipfile64.py
 %%PYTHON_LIBDIR%%/test/test_zipimport.py
@@ -4142,12 +4157,15 @@ libdata/pkgconfig/python-%%PYVER%%.pc
 %%PYTHON_LIBDIR%%/tkinter/test/test_tkinter/__pycache__/test_font.cpython-33.pyo
 %%PYTHON_LIBDIR%%/tkinter/test/test_tkinter/__pycache__/test_loadtk.cpython-33.pyc
 %%PYTHON_LIBDIR%%/tkinter/test/test_tkinter/__pycache__/test_loadtk.cpython-33.pyo
+%%PYTHON_LIBDIR%%/tkinter/test/test_tkinter/__pycache__/test_misc.cpython-33.pyc
+%%PYTHON_LIBDIR%%/tkinter/test/test_tkinter/__pycache__/test_misc.cpython-33.pyo
 %%PYTHON_LIBDIR%%/tkinter/test/test_tkinter/__pycache__/test_text.cpython-33.pyc
 %%PYTHON_LIBDIR%%/tkinter/test/test_tkinter/__pycache__/test_text.cpython-33.pyo
 %%PYTHON_LIBDIR%%/tkinter/test/test_tkinter/__pycache__/test_variables.cpython-33.pyc
 %%PYTHON_LIBDIR%%/tkinter/test/test_tkinter/__pycache__/test_variables.cpython-33.pyo
 %%PYTHON_LIBDIR%%/tkinter/test/test_tkinter/test_font.py
 %%PYTHON_LIBDIR%%/tkinter/test/test_tkinter/test_loadtk.py
+%%PYTHON_LIBDIR%%/tkinter/test/test_tkinter/test_misc.py
 %%PYTHON_LIBDIR%%/tkinter/test/test_tkinter/test_text.py
 %%PYTHON_LIBDIR%%/tkinter/test/test_tkinter/test_variables.py
 %%PYTHON_LIBDIR%%/tkinter/test/test_ttk/__init__.py
_______________________________________________
svn-ports-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-ports-all
To unsubscribe, send any mail to "svn-ports-all-unsubscribe@freebsd.org"
Comment 4 Ruslan Makhmatkhanov freebsd_committer freebsd_triage 2013-05-17 05:20:56 UTC
State Changed
From-To: open->closed

Issue was resolved in r318353. Thank you!