Bug 201280

Summary: devel/gaphor: Missing etk.docking dependency
Product: Ports & Packages Reporter: Sergey Brunov <sergey.v.brunov>
Component: Individual Port(s)Assignee: freebsd-ports-bugs (Nobody) <ports-bugs>
Status: Closed FIXED    
Severity: Affects Only Me CC: koobs, marino, python
Priority: --- Keywords: needs-patch, needs-qa
Version: LatestFlags: koobs: maintainer-feedback-
Hardware: Any   
OS: Any   

Description Sergey Brunov 2015-07-02 13:59:01 UTC
Hello!

After installing gaphor (using ports), the attempt to run it leads to the following error:

$ gaphor
Traceback (most recent call last):
  File "/usr/local/bin/gaphor", line 5, in <module>
    from pkg_resources import load_entry_point
  File "/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 3074, in <module>
    @_call_aside
  File "/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 3060, in _call_aside
    f(*args, **kwargs)
  File "/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 3087, in _initialize_master_working_set
    working_set = WorkingSet._build_master()
  File "/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 645, in _build_master
    ws.require(__requires__)
  File "/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 946, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 833, in resolve
    raise DistributionNotFound(req, requirers)
pkg_resources.DistributionNotFound: The 'etk.docking>=0.2' distribution was not found and is required by gaphor

Using the following command:

# easy_install etk.docking

the missing prerequisite has been installed.

The same action is required for the "gaphas" dependency.

It seems to be a defect because all the required dependencies must be installed during the port installation, does not it?

Best regards,
Sergey Brunov.
Comment 1 Kubilay Kocak freebsd_committer freebsd_triage 2015-07-03 08:58:09 UTC
It appears this port manually (attempts to) install the etk.docking dependency [1]

Having said that there are a few issues with the state of this port in general. 

For example it appears to BUILD_DEPENDS on py-nose (a unit testing framework) which is very likely bogus. 

This itself however, is unlikely to cause the issue reported here, but is a reflection of the probable quality and robustness of the port in general.

This port is currently unmaintained, and as such I would recommend that you attempt to isolate the root cause of why the port doesn't correctly install etk.docking as it attempts to do.

Additionally, using easy_install to install Python packages into the system site-packages path is completely unsupported (and not recommended) as it bypasses ports/package management systems.

If you would like assistance isolating the root cause of this, you are welcome to join #freebsd-python on the freenode IRC network.

You are correct however that a port requiring additional python dependencies, should either do so itself, or as recommended, with ports of those python packages.

[1] https://svnweb.freebsd.org/ports/head/devel/gaphor/Makefile?revision=371280&view=markup#l8
Comment 2 commit-hook freebsd_committer freebsd_triage 2016-08-18 14:44:10 UTC
A commit references this bug:

Author: marino
Date: Thu Aug 18 14:44:00 UTC 2016
New revision: 420405
URL: https://svnweb.freebsd.org/changeset/ports/420405

Log:
  devel/gaphor: Mark broken, deprecate

  Runtime failure was reported 13 months ago (unknown how long the problem
  actually existed), it's never been fixed so apparently no one is using
  this port or is interested in fixing it.  Remove in 2 months.

  PR:	201280

Changes:
  head/devel/gaphor/Makefile