Opened 11 years ago

Closed 10 years ago

Last modified 10 years ago

#127 closed enhancement (fixed)

Better management of the emails trac sends

Reported by: sbressler's profile sbressler Owned by:
Milestone: Priority: lowest
Component: Trac Keywords:


Migrating from #wp17505:

Something relatively minor that's been bugging me for a long time: Commenting on a Trac issue or adding oneself to the CC list should not send an e-mail to that user, or at least not by default. Suppressing such e-mail for self-made changes is the default on other bug reporting systems (e.g. JIRA), and it would be great if we could make it the default for WP Trac as well.

Not just for CCs... We should have better management overall. There must be a trac plugin for this. And if there isn't, we should consider writing one.

Change History (32)

#1 @sbressler
11 years ago

  • Cc sbressler added

#2 @nacin
10 years ago

In 225:

Trac: CSS and JS for notifications. see #127.

#3 @nacin
10 years ago

In 228:

Trac: Template changes for notifications. see #127.

#4 @nacin
10 years ago

In 229:

Trac: Trac core patch for WordPress fine-grained notifications. see #127.

#5 @nacin
10 years ago

In 230:

Trac/ Add a plugin that handles Trac notifications (as an endpoint and a management tool). see #127.

#6 @nacin
10 years ago

In 231:

Trac: This patch was made from the Trac 1.0.1 tag. see #127.

#7 @nacin
10 years ago

In 232:

Trac: Add schema for notifications tables. see #127.

#8 @nacin
10 years ago

In 233:

Trac: Add a tooltip to the notifications ticket star. see #127.

#9 @nacin
10 years ago

In 234:

Trac/ Display updates for the notifications subscription page. see #127.

#10 @nacin
10 years ago

In 236:

Trac: Remove blog-id-restricting code, it's not necessary. This plugin will be only activated on make/core anyway. see #127.

#11 @nacin
10 years ago

In 237:

Trac Notifications: Gravatars for ticket watchers. see #127.

#12 @nacin
10 years ago

In 241:

Trac: Change notifications conditional. see #127.

#13 @nacin
10 years ago

In 242:

Trac: Remove && which Genshi XML chokes on. see #127.

#14 @nacin
10 years ago

[243] fixes a bug in [229].

#15 @nacin
10 years ago

In 244:

Trac: Hide "Cc:" from ticket box when there are none. Note that on Core Trac, CCs are now disabled via the Black Magic trac plugin. see #127.

#16 @nacin
10 years ago

In 245:

Trac: Add JS that will hide the CC field from the query builder, to be called when notifications are enabled. see #127.

#17 @nacin
10 years ago

  • Resolution set to fixed
  • Status changed from new to closed

#18 @nacin
10 years ago

In 246:

Trac: Hide CC comments via JS, when notifications are enabled. see #127.

#19 @nacin
10 years ago

In 247:

Trac: Hide CCs when notifications are enabled. Executes JS added in [245], [246]. see #127.

#20 @nacin
10 years ago

In 249:

Trac Notifications plugin: Remove the (false) claim that you receive notifications once you have commented. (I think we should consider adding this, though, now that you can unsubscribe/block.) see #127.

#21 @nacin
10 years ago

Hello! You might have been linked here from the post announcing this feature. Here's a rundown for how this works:

  • The Trac's site.html template, when viewing a ticket, does an Ajax request to
  • make/core has a WordPress plugin that queries the tables in the Trac database (thanks to #253). HTML for the notifications box is returned.
  • wpTrac.notifications.init is run (code in the JS we include on Trac), which renders the notifications box and ticket star, and binds the appropriate events.
  • When an action is taken, an Ajax request is made to to save it.
  • Component/milestone subscriptions are handled by a page on make/core (currently a shortcode), which saves to the tables in the Trac DB. This isn't launched yet, though.
  • We patched Trac core directly to then query our custom subscriptions tables whenever a ticket is updated. Ideally, this later becomes a single-line patch to add an extension point (hook) and then a Trac plugin, rather than maintaining this, though it's not that bad.

#22 @nacin
10 years ago

This was built to work on other Tracs. As explained on make/core, a lot of features are currently coupled into the design, and that's also the case here for the moment. It also requires the Trac to be migrated to MySQL (#253), for cookies to be used and for SSL to be forced (so and the Trac install always agree on the logged-in status), and for email addresses to be synced from to Trac (#170). Basically, the last round of improvements included a lot of groundwork for this.

At the moment, no other Tracs are migrated to MySQL, but I can start bringing all of this functionality to other Tracs next week.

#23 @nacin
10 years ago

In 254:

Trac: Use a dashicon for 'Stars' columns on reports. Right-align the Comments and Stars columns and make them as narrow as possible. see #127, I guess.

#24 @nacin
10 years ago

In 259:

Trac: JS and CSS for report notification stars. see #127.

#25 @nacin
10 years ago

In 260:

Trac: Template updates to go with [259]. see #127.

#26 @nacin
10 years ago

In 262:

Trac: Pass the authenticated status to the notifications JS. see #127.

#27 @nacin
10 years ago

In 263:

Trac: Only initialize notifications (beyond CC field hiding) if the user is authenticated. Ideally: non-authenticated users can see stars and are asked to log in when they click. see #127.

#28 @nacin
10 years ago

In 264:

Trac: Restrict Dashicons sizes, which were recently bumped from 16px to 20px in core. see #127, #WP26518.

#29 @nacin
10 years ago

In 265:

Trac Notifications: Set height/width for Gravatars so they load into a grid. see #127.

#30 @nacin
10 years ago

In 289:

Trac Notifications: Add conditional support for remaining Tracs. see #127.

#31 @nacin
10 years ago

In 371:

Update Trac patch to handle focus-based subscribers and new ticket subscribers. see #127, #287, #300.

#32 @nacin
10 years ago

In 373:

Trac Notifications: Updates to the preferences form for focuses, new tickets, and subcomponents. see #127, #287, #300.

Note: See TracTickets for help on using tickets.