Edgewall Software
Modify

Ticket #731 (new enhancement)

Opened 7 years ago

Last modified 10 months ago

Allow Trac to send commit information email when the " sync "with the repository

Reported by: utopiste Owned by: mgood
Priority: normal Milestone: unscheduled
Component: notification Version: 0.12-stable
Severity: normal Keywords: notification email
Cc: techtonik@…, thijstriemstra
Release Notes:
API Changes:

Description

Lot of people send diff by email (or create a commit mailing list) for per review.

Currently trac have a excellent diff display, html generator, a good notify class and a sync command to trac-admin.

With all that it's easy to add a option for sending commit information by email (with some IniFile? option)

the only thing add will be a trac-admin ... sync in the post-commit hook

Attachments

Change History

comment:1 Changed 7 years ago by walterjwhite@…

  • Component changed from general to browser
  • Milestone changed from 1.0 to 0.7.1

Hi,

I had an idea (not sure if it got implemented) about repository access across the web. The server that I have setup has the working copies on the server itself. This is so the webpages can be rolled back to a different version. For people that do not have shell access to the server, they cannot update/commit changes from this working space to the repository and vice versa. Right now, they have a local working space which resides on their machine. The problem lies in that they cannot version their webpages efficiently. The process right now is commit changes to the server, then upload the files to the server which requires a subversion client to be installed. By adding working space functionsin trac, the user can work on the files more directly and quickly (no software needs to be installed), only a commit is required to version the files, and rolling back to prior versions also removes additional complexity. I think that idea is good too as there are teams that work individually some times and that would also help to increase their efficiency.

Walter

comment:2 Changed 7 years ago by cmlenz

  • Milestone 0.7.1 deleted

comment:3 Changed 7 years ago by mrowe

I think that generating commit emails is a little outside of Trac's scope. Subversion provides several post-commit scripts that have this functionality so I'm unsure as to why it belongs in Trac?

comment:4 Changed 6 years ago by cboos

  • Component changed from browser to changeset view
  • Keywords notification email added
  • Owner changed from jonas to cboos

This could be considered as part of a more generic notification infrastructure
(notify on Web page changes, new changesets, etc.)

comment:5 follow-up: Changed 5 years ago by mgood

  • Milestone set to 0.11
  • Owner changed from cboos to mgood

We can add another "listener" interface for changesets that will be called when and new changeset is found. The automated closing of tickets done by the current "contrib" post-commit hook could also be handled by this interface.

comment:6 in reply to: ↑ 5 Changed 5 years ago by cboos

Replying to mgood:

We can add another "listener" interface for changesets that will be called when and new changeset is found.

Well, I have nothing against, but I just wanted to point out that in the longer run, I prefer that we adopt a more "generic" IResourceChanged interface (with (type,id) info + generic authorship info).

The automated closing of tickets done by the current "contrib" post-commit hook could also be handled by this interface.

... and therefore get rid of all those encoding issues we're seeing with the hook. Good idea!

comment:7 Changed 5 years ago by cboos

  • Component changed from changeset view to notification
  • Milestone changed from 0.11 to 0.12
  • Priority changed from low to normal

comment:8 Changed 2 years ago by anatoly techtonik <techtonik@…>

I wonder if there any Trac hacks for this?

comment:9 Changed 2 years ago by rblank

I don't know about plugins, but the multirepos branch has the IRepositoryChangeListener interface mentioned in comment:5, so this can now relatively easily be done in a plugin.

comment:10 follow-up: Changed 2 years ago by anatoly techtonik <techtonik@…>

  • Cc techtonik@… added

With that IRepositoryChangeListener if I need to resync revisions from scratch - will I receive tons of emails about them?

comment:11 in reply to: ↑ 10 Changed 2 years ago by rblank

Replying to anatoly techtonik <techtonik@…>:

With that IRepositoryChangeListener if I need to resync revisions from scratch - will I receive tons of emails about them?

No, the events are not triggered by a resync, but by explicit trac-admin $ENV changeset added and trac-admin $ENV changeset modified commands that must be called from e.g. SVN hooks.

comment:12 Changed 20 months ago by rblank

  • Milestone changed from next-major-0.1X to unscheduled

Bordering on "wontfix" (or rather "shouldbedoneinaplugin") now that IRepositoryChangeListener is available.

comment:13 Changed 15 months ago by Thijs Triemstra <lists@…>

  • Cc lists@… added

comment:14 Changed 11 months ago by thijstriemstra

  • Cc thijstriemstra added; lists@… removed

comment:15 Changed 10 months ago by Joongi Kim <me@…>

  • Version changed from 0.7.1 to 0.12-stable

As a multiple-repository user, I would like to integrate all notifications into the single Trac, rather than adding post-commit hooks for each repository, particularly when I have to manage heterogeneous types of repositories which have different methods for configuration of hooks.

We could implement this as a plugin, but I think we need one more consideration --- the notification of ticket comments by CommitTicketUpdater and the changeset listener should NOT be duplicated. So we might have to modify the official CommitTicketUpdater plugin.

Currently I'm getting notification emails like:

#XX: blah blah
----------------------------+--------------------
 Reporter:  joongi         |      Owner:  joongi
     Type:  enhancement    |     Status:  new
 Priority:  trivial        |  Milestone:
 Component:  Documentation  |    Version:
Resolution:                 |   Keywords:
----------------------------+--------------------

Comment (by joongi):

 In [XXX]:
 {{{
 #!CommitTicketReference repository="YYY" revision="XXX"
 refs #XX: blah blah
 }}}

I want to see actual diffs for the revision.

View

Add a comment

Modify Ticket

Change Properties
<Author field>
Action
as new
as The resolution will be set. Next status will be 'closed'
to The owner will be changed from mgood. Next status will be 'new'
The owner will be changed from mgood to anonymous. Next status will be 'assigned'
Author


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

 
Note: See TracTickets for help on using tickets.