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>
Update ffaker gem
Adds a version requirement which it didn't have before, at 2.0.0. This version has breaking API changes in that the namespace is now `FFaker` instead of `Faker`.
Prior, if a new developer checked out the repo, ran `bundle install` and then tried `rake dev:setup`, seeding would fail due to having the latest version of ffaker without the API changes in this MR.
Also updates `spring` version and the binstubs, just for kicks.
See merge request !686
Fix Markdown preview not working in Edit Milestone page
### What does this MR do?
This MR removes the automatic Zen Mode URL update when a hash is present and makes Markdown preview work again in the Edit Milestone page. I think the intent was to make it possible to link to a full-screen edit with a URL (e.g. http://foo/bar/issues/1/edit#fullscreen), but I don't this has ever worked. Perhaps a future MR can support this.
### Why was this MR needed?
A JavaScript error would be seen in the Milestone Edit page:
```javascript
Uncaught error, unrecognized expression: $('.zennable input[type=checkbox]##md-preview-holder')
```
In the Milestone Edit page, apparently the use of the hash `#md-preview-holder` causes the Zen Mode JavaScript to attempt to parse the hash for the `fullscreen_` prefix and look up the checkbox based on a unknown ID.
### Are there points in the code the reviewer needs to double check?
If we want to keep this hash update, an alternative fix is to add an `if` check in the beginning of `checkboxFromLocationHash`:
```coffeescript
if (window.location.hash.indexOf('#' + ZenMode.fullscreen_prefix) == -1)
return null
```
### What are the relevant issue numbers?
* Closes#1687
* Closes https://github.com/gitlabhq/gitlabhq/issues/9325
See merge request !711
Refactor permission checks with issues and merge requests project settings
Slight refinement for read/write permission checks for 04d44522 as discussed in !691. Currently it appears that there is [no role that only has read-only access to issues](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/permissions/permissions.md), but it could be possible.
/cc: @DouweM
See merge request !704
Remove Rack Attack monkey patches and bump to version 4.3.0
I finally got these monkey patches into Rack Attack v4.3.0, so GitLab no longer needs them. Hooray!
See: https://github.com/kickstarter/rack-attack/pull/128
See merge request !693