Add to_reference method to referable models
Now there is a single source of information for which attribute a model uses to be referenced, and its special character.
See merge request !641
Allow HipChat API version to be blank and default to v2
### What does this MR do?
This MR fixes a regression introduced in v7.11 that requires a HipChat API version to be specified when it is supposed to be optional.
### Why was this MR needed?
The "optional" HipChat API version in 57c724558 passed in a blank `api_version` when nothing was specified, and the code was not tested. This would cause a 500 Error.
### What are the relevant issue numbers?
Closes#772
See merge request !718
Prior, comparison would use the Ruby object's ID, which got out of sync
after a Spring fork and would result in erroneous test failures.
Now we just check that the compared object is a Commit and then compare
their underlying raw commit objects.
Change percent_complete rescue value from 100 to 0
The percent_complete method returns a value of 100 when a
ZeroDivisionError occurs. That seems like a very strange default for an
error case, and results in a bug when a milestone has no corresponding
issues (new, empty milestones show 100% completion). This commit changes
the rescue value to 0, and subsequently fixes#1656, which reported this
problem.
See merge request !714
The percent_complete method returns a value of 100 when a
ZeroDivisionError occurs. That seems like a very strange default for an
error case, and results in a bug when a milestone has no corresponding
issues (new, empty milestones show 100% completion). This commit changes
the rescue value to 0, and subsequently fixes#1656, which reported this
problem.
**What does this do?**
It makes sure that when you create a wiki page via the web interface, the
extention is .md instead of .markdown
**Why is this needed?**
When you're using Gollum locally, it will create pages with the .md extention.
Also .md is the best known extention for markdown. This fix will make sure that
if you're using gollum or the webinterface, the extention will be the same.
**What issues does this fix?**
Fixes https://github.com/gitlabhq/gitlabhq/issues/5204
Signed-off-by: Jeroen van Baarsen <jeroenvanbaarsen@gmail.com>
Fix bug where avatar filenames were not actually deleted from the database during removal
This would result in a 404 error in certain views.
The `save` call was being rolled back due to an error in the validation step.
Relax the validation step so that this works.
Closes#1570
See merge request !620
Add SystemNoteService class
The Note model was basically two models crammed together - one handling user-created notes
(i.e., comments on things) and one handling system-created notes (i.e., references).
This splits out the system-specific stuff to a new SystemNoteService class.
See merge request !595
Don't show duplicate deploy keys
This fixes the issue described in [#1516](https://gitlab.com/gitlab-org/gitlab-ce/issues/1516) where you would see the same deploy key multiple times if it was used by multiple projects.
See merge request !629
This would result in a 404 error in certain views.
The `save` call was being rolled back due to an error in the validation step.
Relax the validation step so that this works.
Closes#1570