Changes between Version 1 and Version 2 of RepositoryHookSystemPlugin


Ignore:
Timestamp:
Sep 9, 2008, 3:10:13 PM (6 years ago)
Author:
k0s
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • RepositoryHookSystemPlugin

    v1 v2  
    11= turn repository hooks into pluggable extension points =
     2
     3'''This plugin has only been tested with SVN's post-commit hook.  Additional work may be required to get this to work with other SCMs and other SVN hooks.  Please contact the [wiki:k0s author] or [http://trac-hacks.org/newticket?component=RepositoryHookSystemPlugin&owner=k0s open a ticket] if you need additional functionality for this plugin (contributors also welcome).'''  If you're looking for existing plugins that work with SVN hooks, try the SvnChangeListenerPlugin or the TracSvnPoliciesPlugin, or perhaps the contributed [trac:source:trunk/contrib/trac-post-commit-hook trac post-commit hook] is sufficient for your purposes.
    24
    35== Description ==
     
    1921 * a trac changeset object is used to pass around information.  This is good, as it avoids unneccessary information to be sought by the !RepositoryChangeListeners.  For the SvnChangeListenerPlugin (at least as it stands living only in the post-commit-hook), this is sufficient.  It is unknown whether this is a good idea for other hooks and repository systems.  If a unified interface for a changeset object were available, then a changeset object could be "fakeable" if its not available (like it is at SVN post-commit). If not, this is a big conceptual hole.  ''To be investigated.''
    2022
    21  * the logic of the RepositoryChangeListeners is agnostic to SCM type
    22    and hook used.
     23 * the logic of the !RepositoryChangeListeners is agnostic to SCM type and hook used.
    2324 
     25'''Architecture of the RepositoryHookSystemPlugin:'''
     26[[Image(source:repositoryhooksystemplugin/0.11/repositoryhooksystem.png)]]
    2427
    2528This is similar in concept to the SvnChangeListenerPlugin, but the architecture is also designed to support
     
    3033
    3134''[BETA] However, while architected, this plugin has only been tested with SVN and will probably only work with the SVN post-commit hook for now [BETA]''.  The reason for this is that the RepositoryHookSystemPlugin uses changeset-like objects as a means of passing data.  This works for SVN's post-commit-hook, but for other hooks it may be necessary to build or mock a changeset object.  I haven't done any work in this direction, though if there is community interest than I would pursue it.
    32 
    33 
    3435
    3536== Bugs/Feature Requests ==