Edgewall Software

Opened 4 years ago

Closed 3 years ago

Last modified 15 months ago

#13087 closed defect (fixed)

Status changes for other operations not handled by ConfigurableTicketWorkflow

Reported by: Ryan J Ollos Owned by: Ryan J Ollos
Priority: normal Milestone: 1.0.18
Component: ticket system Version:
Severity: normal Keywords: workflow
Cc: Branch:
Release Notes:
  • Fixed regression in 1.0.17 (#13013) that prevented implicit ticket status changes for workflow plugins (those implementing ITicketActionController).
  • Fixed missing workflow status change hints when operations defined for the action.
API Changes:
Internal Changes:

Description (last modified by Ryan J Ollos)

Following changes in #13013, ConfigurableTicketWorkflow does not make status changes for operations provided by plugins such as AdvancedTicketWorkflowPlugin (issue reported in th:#13484).

This ticket will aim to revert that behavior, while still fixing the issue reported in #13013.

In #13086, the status change behavior will be improved and clarified for the next major release.

Attachments (0)

Change History (10)

comment:1 by Jun Omae, 4 years ago


We should fix the issue in 1.0-stable also….

comment:2 by Ryan J Ollos, 3 years ago

Description: modified (diff)

comment:3 by Ryan J Ollos, 3 years ago

There's a problem with r16946, possible IndexError, however it will be fixed with proposed changes that I'll post shortly.

comment:5 by Jun Omae, 3 years ago

The Next status will be … hint is not rendered when .operations is specified.

  • trac/ticket/default_workflow.py

    diff --git a/trac/ticket/default_workflow.py b/trac/ticket/default_workflow.py
    index 4ea7b5caa..04eb95f7a 100644
    a b Read TracWorkflow for more information (don't forget to 'wiki upgrade' as well)  
    329329                             _("The ticket will remain with no owner"))
    330330        elif status == '*':
    331331            label = None  # Control won't be created
    332         elif not operations:
     332        else:
    333333            hints.append(_("Next status will be '%(name)s'", name=status))
    334334        return (label, tag(separated(control, ' ')),
    335335                '. '.join(hints) + '.' if hints else '')

comment:6 by Ryan J Ollos, 3 years ago

I've added comment:5 change and additional test coverage:

comment:7 by Ryan J Ollos, 3 years ago

Release Notes: modified (diff)
Status: assignedclosed

Changes committed in r16954, r16955, r16956.

comment:8 by Ryan J Ollos, 3 years ago

Resolution: fixed

comment:9 by Ryan J Ollos, 3 years ago

Related changes proposed in #13199.

Modify Ticket

Change Properties
Set your email in Preferences
as closed The owner will remain Ryan J Ollos.
The resolution will be deleted. Next status will be 'reopened'.
to The owner will be changed from Ryan J Ollos to the specified user.

Add Comment

E-mail address and name can be saved in the Preferences .
Note: See TracTickets for help on using tickets.