Convert GFM reference handling to html-pipeline filters
- `Gitlab::Markdown` is now much cleaner
- Better separation of concerns
- Cleaner, less brittle, more maintainable specs for each reference type.
- Label references actually work!
See merge request !1753
Corrected steps for creating a patch release
Added step to bump all versions (CE, EE, CI) every time there is a patch release and the reasoning behind it
See merge request !1754
Updated projects.md to show tag_list field when performing GETs
Updated projects_spec.rb to include check for tag_list key in project list
Added changes to the CHANGELOG
Documentation - Markdown - added missing line-break info
as promised, I updated the Markdown documentation with the line-breaks info
See merge request !186
Fix cross-references that contain underscores
### What does this MR do?
Cross-references that contain underscores confuse the Markdown renderer and don't work properly. For example:
1. In `myacct/project_one#456`, add a comment that includes a reference to `myacct/project_two#123`.
2. The comment in `myacct/project_one#456` links correctly.
3. The system note in `myacct/project_two#123` is incorrectly linked as:
`mentioned in issue myacct/projectone#456_`
This MR removes the use of the `_` character in the system notes to prevent Markdown confusion.
See a full discussion in #1160.
### Are there points in the code the reviewer needs to double check?
To preserve backwards compatibility with existing system notes, there is a SQL wildcard match for notes having underscores. This seemed safer than migrating all notes.
### Why was this MR needed?
In an ideal world, the Markdown parser would be able to handle references containing underscores with or without escape sequences. However, there are a number of issues:
1. RedCarpet's parser for emphasis block is pretty dumb: it treats `#` as a word break and thus even the `intra_word_emphasis` flag has no effect.
2. The parser is in C and can't be changed easily.
3. There is no way to insert an escape sequence for emphasis blocks.
The only way around this is to switch to something like CommonMark, which does support escape sequences.
### What are the relevant issue numbers / [Feature requests](http://feedback.gitlab.com/)?
Issue #1160
### Screenshots
Before:

After:

See merge request !385