1
0
Fork 0
mirror of https://we.phorge.it/source/phorge.git synced 2024-12-23 22:10:55 +01:00
phorge-phorge/resources
epriestley 0a76d82a7c Use string constants, not integer constants, to represent task status internally
Summary:
Ref T1812. I think integer constants are going to be confusing and error prone for users to interact with. For example, because we use 0-5, adding a second "open" status like "needs verification" without disrupting the existing statuses would require users to define a status with, e.g., constant `6`, but order it between constants `0` and `1`. And if they later remove statuses, they need to avoid reusing existing constants.

Instead, use more manageable string constants like "open", "resolved", etc.

We must migrate three tables:

  - The task table itself, to update task status.
  - The transaction table, to update historic status changes.
  - The saved query table, to update saved queries which specify status sets.

Test Plan:
  - Saved a query with complicated status filters.
  - Ran migrations.
  - Looked at the query, at existing tasks, and at task transactions.
  - Forced migrations to run again to verify idempotentcy/safety.

Reviewers: btrahan

Reviewed By: btrahan

Subscribers: epriestley

Maniphest Tasks: T1812

Differential Revision: https://secure.phabricator.com/D8583
2014-03-25 13:58:14 -07:00
..
builtin Add an icon+background selector for project images 2013-10-17 09:32:34 -07:00
celerity Despecialize status handling in Maniphest Reports 2014-03-25 13:49:33 -07:00
chatbot Improve some documentation/examples for bot stuff 2013-02-14 12:47:39 -08:00
font Made Meme Generator 2013-01-19 18:43:43 -08:00
sprite Mail icon for email lists in typeahead 2014-02-17 10:06:16 -08:00
sql Use string constants, not integer constants, to represent task status internally 2014-03-25 13:58:14 -07:00
sshd Fix two issues with shell/config scripts for hosted repositories 2013-12-04 16:45:54 -08:00