Replace commits calendar with contributions calendar
* count opening of issues and merge requests
* dont trigger git repository - use events from database
* count pushes instead of commits for faster and easier counting
* much-much faster since does not affected by repository size
See merge request !420
Update views to single form of address. Change "my" to "your"
Part of user experience. Every software (twitter, facebook etc) talks to you like "change your password" but not "change my password".
cc @sytse @job
See merge request !1736
Fix OAuth2 issue importing a new project from GitHub and GitLab
It appears that the GitLab OAuth2 client options were converted to strings instead of symbols when merged with the default options (i.e. `{}.merge(github_options)`). As a result, the OAuth2 defaults were being used. For example, the OAuth2 client options would have a key with `authorize_url` and `:authorize_url`, but the former was never used. As a result, the OAuth2 client would always use the wrong URL to talk to GitHub.
Note that this bug should also have affected GitLab, but not Bitbucket: The OAuth client is careful to convert all keys to symbols.
Closes#1268
See merge request !425
Disable reference generation in preformatted/code blocks
### Summary
If a user adds text in code or preformatted text via Markdown or HTML that contains `#XXX`, the system adds a note that issue `XXX` was mentioned. This is particularly annoying because we often list gdb backtrace dumps into our issues, and many issues get mentioned as a result. For example:
```
(gdb) bt
#0 0x00000000004004c4 in second () at main.cc:6
#1 0x00000000004004d2 in first () at main.cc:11
#2 0x00000000004004dd in main () at main.cc:17
(gdb)
```
### Steps to reproduce
1. In an issue, write the above text using Markdown or HTML tags (e.g. `<code>`, `<pre>`).
2. Observe that [issue 1](https://gitlab.com/gitlab-org/gitlab-ce/issues/1) and [issue 2](https://gitlab.com/gitlab-org/gitlab-ce/issues/2) have a note that says they were mentioned.
### Expected behavior
Everything enclosed in the code blocks should be ignored as references.
### Observed behavior
Issues get referenced unnecessarily.
### Fix
I've made `reference_extractor.rb` strip out HTML and Markdown blocks before processing. I considered running the raw text through the entire Markdown processor, but this seems overkill and perhaps could lead to some unintended side effects.
See merge request !365
Fix dots in Wiki slug causing errors
### What does this MR do?
When a user enters in dots into the Wiki slug, an error occurs:
```
NoMethodError (undefined method `escaped_url_path' for nil:NilClass):
app/models/wiki_page.rb:172:in `set_attributes'
app/models/wiki_page.rb:191:in `save'
app/models/wiki_page.rb:155:in `update'
app/controllers/projects/wikis_controller.rb:49:in `update'
```
This MR fixes this problem.
### Are there points in the code the reviewer needs to double check?
See the problem below.
### Why was this MR needed?
The issue is that the `save` method gets called differently:
```ruby
def create(attr = {})
....
save :create_page, title, content, format, message
```
or
```ruby
def update(new_content = "", format = :markdown, message = nil)
...
save :update_page, @page, content, format, message
```
In the create case, title is the slug entered in by the user (e.g. `path/how-to-write-wiki-pages`).
In the update case, originally `@page.page` included the format extension (e.g.`path/how-to-write-wiki-pages.Markdown`). The method `page_title_and_dir` was trying to handle both cases and not doing the right thing. For example, calling `page_title_and_dir('test-1.2.3')` would result in:
```
path_title = test-1.2
path_dir = 3
```
### What are the relevant issue numbers / [Feature requests](http://feedback.gitlab.com/)?
Issues #1263, #431
This replaces !156
See merge request !419
Updated upgrader.md to highlight nodejs as required package [ci skip]
Updated upgrader.md to highlight nodejs pacakage so this is kept consistent with the other packages listed as required/changed.
This is purely a documentation change.
See merge request !424
* count opening of issues and merge requests
* dont trigger git repository - use events from database
* much-much faster since does not affected by repository size
Change permissions on backup files - #2
Use more restrictive permissions for backup tar files and for the db, uploads, and repositories directories inside the tar files. See #1894. Now the backup task recursively `chmod`s the `db/`, `uploads/`, and `repositories/` folders with 0700 permissions, and the tar file is created as 0600.
This is a followup to !1703, which was reverted because it broke Rspec tests. The test failures were due to the rake task changing directories and not changing back, which I fixed with this commit.
cc @sytse
See merge request !1716