Opened 13 years ago

Last modified 12 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 13 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 13 years ago by Carsten Fechtmann

Works great!


comment:3 Changed 13 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 13 years ago by Emmanuel Blot

#3455 marked as a dup

comment:5 Changed 13 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 13 years ago by Prentice Wongvibulsin

How do I install w/o egg?

comment:7 in reply to:  6 Changed 13 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 13 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 13 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

Change Properties
Set your email in Preferences
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.