Opened 9 years ago

Last modified 8 years ago

#3325 reopened defect

Enabling plug-in fails when installing

Reported by: Carsten Fechtmann Owned by: Emmanuel Blot
Priority: normal Component: GrowlPlugin
Severity: major Keywords:
Cc: Trac Release: 0.11


Would love to use this plug-in, but I get the following error when enabling it.

Btw. same behaviour for global (per easy-install) or local install into the plugin folder

Traceback (most recent call last):
  File "/usr/lib/python2.4/site-packages/Trac-0.11b2-py2.4.egg/trac/web/", line 339, in send_error
  File "/usr/lib/python2.4/site-packages/Trac-0.11b2-py2.4.egg/trac/web/", line 672, in render_template
    template = self.load_template(filename, method=method)
  File "/usr/lib/python2.4/site-packages/Trac-0.11b2-py2.4.egg/trac/web/", line 648, in load_template
    self.templates = TemplateLoader(self.get_all_templates_dirs(),
  File "/usr/lib/python2.4/site-packages/Trac-0.11b2-py2.4.egg/trac/web/", line 402, in get_all_templates_dirs
    dirs += provider.get_templates_dirs()
  File "build/bdist.linux-i686/egg/growl/", line 41, in get_templates_dirs
  File "/usr/lib/python2.4/site-packages/", line 840, in resource_filename
    return get_provider(package_or_requirement).get_resource_filename(
  File "/usr/lib/python2.4/site-packages/", line 1311, in get_resource_filename
    return self._extract_resource(manager, zip_path)
  File "/usr/lib/python2.4/site-packages/", line 1322, in _extract_resource
    zip_stat = self.zipinfo[zip_path]
KeyError: 'growl/templates'

Running this on a linux (Gentoo) server:

Trac: 0.11b2
Python: 2.4.4 (Nov 14 2007, 10:08:34) [GCC 4.1.2 (Gentoo 4.1.2 p1.0.2)
setuptools: 0.6c7
SQLite: 3.5.3
pysqlite: 2.3.5
Genshi: 0.5
mod_python: 3.3.1
Pygments: 0,9
Subversion: 1.4.5
jQuery: 1.2.3

Attachments (0)

Change History (9)

comment:1 Changed 9 years ago by Emmanuel Blot

Resolution: fixed
Status: newclosed

(In [3950]) Fixes #3325 setup file was invalid, and enable growl image background

comment:2 Changed 9 years ago by Carsten Fechtmann

Works great!


comment:3 Changed 9 years ago by Prentice Wongvibulsin

Resolution: fixed
Status: closedreopened

Problem still occurs for me.

$ svn info
Path: .
Repository Root:
Repository UUID: 7322e99d-02ea-0310-aa39-e9a107903beb
Revision: 4059
Node Kind: directory
Schedule: normal
Last Changed Author: eblot
Last Changed Rev: 3950
Last Changed Date: 2008-07-03 15:48:45 -0700 (Thu, 03 Jul 2008)
$ cat 
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# Copyright (C) 2008 Emmanuel Blot <>
# All rights reserved.
# This software is licensed as described in the file COPYING, which
# you should have received as part of this distribution. The terms
# are also available at
# This software consists of voluntary contributions made by many
# individuals. For the exact contribution history, see the revision
# history and logs, available at

from setuptools import setup, find_packages

PACKAGE = 'TracGrowlPlugin'
VERSION = '0.2.1'

setup (
    name = PACKAGE,
    version = VERSION,
    description = 'Growl Notifier for Trac events',
    author = 'Emmanuel Blot',
    author_email = '',
    keywords = "trac growl event notifier",
    install_requires = [ 'Trac>=0.11dev', 'Trac<0.12'],
    packages = find_packages(exclude=['ez_setup']),
        'growl': [
    entry_points = {
        'trac.plugins': [
            'growl.notifier = growl.notifier',
            'growl.web_ui = growl.web_ui'
$ unzip -l TracGrowlPlugin-0.2.1dev_r3950-py2.5.egg 
Archive:  TracGrowlPlugin-0.2.1dev_r3950-py2.5.egg
  Length     Date   Time    Name
 --------    ----   ----    ----
        1  07-24-08 15:02   EGG-INFO/zip-safe
       76  07-24-08 15:02   EGG-INFO/entry_points.txt
        6  07-24-08 15:02   EGG-INFO/top_level.txt
        1  07-24-08 15:02   EGG-INFO/dependency_links.txt
      417  07-24-08 15:02   EGG-INFO/SOURCES.txt
       23  07-24-08 15:02   EGG-INFO/requires.txt
      304  07-24-08 15:02   EGG-INFO/PKG-INFO
     3929  07-24-08 15:01   growl/
     3438  07-24-08 15:01   growl/
      569  07-24-08 15:01   growl/
      207  07-24-08 15:02   growl/__init__.pyc
    11912  07-24-08 15:01   growl/
     3780  07-24-08 15:02   growl/web_ui.pyc
     3233  07-24-08 15:02   growl/netgrowl.pyc
    11780  07-24-08 15:02   growl/notifier.pyc
    29571  07-24-08 15:01   growl/htdocs/images/growl-180.png
      224  07-24-08 15:01   growl/htdocs/css/growl.css
     1133  07-24-08 15:01   growl/templates/pref_growl.html
 --------                   -------
    70604                   18 files

comment:4 Changed 9 years ago by Emmanuel Blot

#3455 marked as a dup

comment:5 Changed 9 years ago by Emmanuel Blot

Gosh, I really do hate the setuptools. What a PITA...

Have you tried to install the plugin without an egg file ?

comment:6 Changed 9 years ago by Prentice Wongvibulsin

How do I install w/o egg?

comment:7 in reply to:  6 Changed 9 years ago by Emmanuel Blot

Replying to echo0101:

How do I install w/o egg?

The cleanest way to avoid polluting your machine with the plugin files is to use the "developer" mode:

Assuming your Trac plugin directory is /var/trac/myproject/plugins:

PYTHONPATH=/var/trac/myproject/plugins python develop --install-dir=/var/trac/myproject/plugins

should do the job. The plugin won't be installed, only a link file will be created in /var/trac/myproject/plugins.

comment:8 Changed 9 years ago by Prentice Wongvibulsin

Installing in developer mode does not resolve the problem.

# PYTHONPATH=/phluidShare/VersionControl/trac/plugins python develop --install-dir=/phluidShare/VersionControl/trac/plugins
running develop
running egg_info
writing requirements to TracGrowlPlugin.egg-info/requires.txt
writing TracGrowlPlugin.egg-info/PKG-INFO
writing top-level names to TracGrowlPlugin.egg-info/top_level.txt
writing dependency_links to TracGrowlPlugin.egg-info/dependency_links.txt
writing entry points to TracGrowlPlugin.egg-info/entry_points.txt
writing manifest file 'TracGrowlPlugin.egg-info/SOURCES.txt'
running build_ext
Creating /phluidShare/VersionControl/trac/plugins/
Creating /phluidShare/VersionControl/trac/plugins/TracGrowlPlugin.egg-link (link to .)
Adding TracGrowlPlugin 0.2.1dev-r3950 to easy-install.pth file

Installed /home/prentice/growlplugin/0.11
Processing dependencies for TracGrowlPlugin==0.2.1dev-r3950
Searching for Trac==0.11
Best match: Trac 0.11
Processing Trac-0.11-py2.5.egg
Adding Trac 0.11 to easy-install.pth file
Installing trac-admin script to /phluidShare/VersionControl/trac/plugins
Installing tracd script to /phluidShare/VersionControl/trac/plugins

Using /usr/lib/python2.5/site-packages/Trac-0.11-py2.5.egg
Searching for Genshi==0.5
Best match: Genshi 0.5
Processing Genshi-0.5-py2.5-linux-x86_64.egg
Adding Genshi 0.5 to easy-install.pth file

Using /usr/lib/python2.5/site-packages/Genshi-0.5-py2.5-linux-x86_64.egg
Searching for setuptools==0.6c8
Best match: setuptools 0.6c8
Adding setuptools 0.6c8 to easy-install.pth file
Installing easy_install script to /phluidShare/VersionControl/trac/plugins
Installing easy_install-2.5 script to /phluidShare/VersionControl/trac/plugins
Installing easy_install-2.4 script to /phluidShare/VersionControl/trac/plugins

Using /usr/lib/python2.5/site-packages
Finished processing dependencies for TracGrowlPlugin==0.2.1dev-r3950

Disabling the admin panel prevents the error but I am still not getting growl notifications.

growl.notifier.growlnotifiersystem = enabled
growl.web_ui.growlpreferencepanel = disabled 

hosts = 
source = wiki, ticket, attachment, bitten
sources = wiki, ticket, attachment, bitten
userprefs = false

I noticed that the initial fix to this issue was for python 2.4, possibly this is an issue with python 2.5 compatibility. I can not see anything strange or problematic in your source though.

comment:9 in reply to:  8 Changed 9 years ago by Emmanuel Blot

Replying to echo0101:

Installing in developer mode does not resolve the problem. I noticed that the initial fix to this issue was for python 2.4, possibly this is an issue with python 2.5 compatibility. I can not see anything strange or problematic in your source though.

I'm using Python 2.5 with no issue.
Can you double-check you do not have an old version of the plugin installed somewhere else?

Modify Ticket

as reopened The owner will remain Emmanuel Blot.

Add Comment

E-mail address and name can be saved in the Preferences.

Note: See TracTickets for help on using tickets.