From owner-freebsd-python@FreeBSD.ORG  Sat Apr 12 14:39:51 2014
Return-Path: <owner-freebsd-python@FreeBSD.ORG>
Delivered-To: freebsd-python@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org
 [IPv6:2001:1900:2254:206a::19:1])
 (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by hub.freebsd.org (Postfix) with ESMTPS id 8D118BA8
 for <freebsd-python@freebsd.org>; Sat, 12 Apr 2014 14:39:51 +0000 (UTC)
Received: from mail-pd0-x229.google.com (mail-pd0-x229.google.com
 [IPv6:2607:f8b0:400e:c02::229])
 (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits))
 (Client CN "smtp.gmail.com",
 Issuer "Google Internet Authority G2" (verified OK))
 by mx1.freebsd.org (Postfix) with ESMTPS id 621F51D04
 for <freebsd-python@freebsd.org>; Sat, 12 Apr 2014 14:39:51 +0000 (UTC)
Received: by mail-pd0-f169.google.com with SMTP id fp1so6453684pdb.28
 for <freebsd-python@freebsd.org>; Sat, 12 Apr 2014 07:39:51 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
 h=message-id:date:from:reply-to:user-agent:mime-version:to:subject
 :content-type:content-transfer-encoding;
 bh=yf0Uzi16wWdZ+YxM4sFBRraHwnXQzkZLr/6m6K4e9yY=;
 b=iD4zQbO433Gpyg1rNs54D7tb/QuuOHzLJ+5Z1N7E7VIrC5G4pQ1PP1oyFVsI15mXT6
 i5lluux+2yTmVJ23WkTved2aPvQYjMc+tQR+OsWYhw0Qn9g9AyBupxy5VeVNlFGLkiNG
 9cdMJJoyonuiFBCo8cybN6rzn1oEUcDTN5vrtyDUqqz7ZHfPwcRLLQ/CHvVpgDg9Rb7R
 DQKCV3WVH+gLCblkyMUohJBCwfI5EUdfF9U3JzBecaqwq5ZJgDIts/CElRtLK/fJ309F
 3qupPCq9x6mwPBmqPic4dD8N81I3lo+lBioo05ImuRGmhS4aahl4MttFA3fVRednI0bC
 7o5Q==
X-Received: by 10.68.254.5 with SMTP id ae5mr33672104pbd.83.1397313590923;
 Sat, 12 Apr 2014 07:39:50 -0700 (PDT)
Received: from [192.168.1.7] (ppp59-167-128-11.static.internode.on.net.
 [59.167.128.11])
 by mx.google.com with ESMTPSA id db3sm22453684pbb.10.2014.04.12.07.39.49
 for <freebsd-python@freebsd.org>
 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
 Sat, 12 Apr 2014 07:39:50 -0700 (PDT)
Message-ID: <5349502D.5030304@FreeBSD.org>
Date: Sun, 13 Apr 2014 00:39:41 +1000
From: Kubilay Kocak <koobs.freebsd@gmail.com>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64;
 rv:28.0) Gecko/20100101 Thunderbird/28.0
MIME-Version: 1.0
To: freebsd-python@FreeBSD.org
Subject: pkg-static: Plist error,
 directory listed as a file: <something>.egg-info
X-Enigmail-Version: 1.6
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-BeenThere: freebsd-python@freebsd.org
X-Mailman-Version: 2.1.17
Precedence: list
Reply-To: koobs@FreeBSD.org
List-Id: FreeBSD-specific Python issues <freebsd-python.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/options/freebsd-python>,
 <mailto:freebsd-python-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-python/>
List-Post: <mailto:freebsd-python@freebsd.org>
List-Help: <mailto:freebsd-python-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/freebsd-python>,
 <mailto:freebsd-python-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 12 Apr 2014 14:39:51 -0000

Over the past week, a number of users have reported the following error
when upgrading Python ports:

"pkg-static: Plist error, directory listed as a file:<something>.egg-info"

This has been isolated as a symptom of:

  a) A recent pkg version (1.2.7_1) which now generates an error
     instead of silently creating a corrupt package

  b) Python installations that contain *multiple* python packages that
     provide the setuptools module (such as setuptools and distribute).

This (b) can either be the result of a manual install as root (via
easy_install or pip) outside of the scope of ports/packages, or due to
leftovers from previous upgrades.

The root cause is a version of setuptools is imported during the python
setup.py `install` stage, that does not contain a patch which removes
directory entries from --record output (a feature of setuptools).

Users should inspect their ${LOCALBASE}/lib/pythonX.Y/site-packages
directory, and remove any packages that reference old versions of
setuptools or distribute.

Some examples of entries that may be removed are:

1) distribute-0.6.35-py2.7.egg
2) setuptools-0.6c11-py2.7.egg
3) *Any* version of setuptools directly from PyPi via pip or easy_install

If you have any questions, or are unsure whether you can remove a
particular entry or not, either:

- Delete it, then reinstall devel/py-setuptoolsXY for good measure, OR
- Check with us on the mailing list or at #freebsd-python on freenode IRC

TLDR:

You want to be left with the version of setuptools from ports/packages
(currently 2.0.1) as the *only* installed Python package in site-packages/.