Commit Graph
1961 Commits
Author SHA1 Message Date
Robert Speicher 37bc7bac19 Add Issuable#to_ability_name 2015-07-24 15:50:12 -04:00
Robert Speicher 31dc5e7034 Add admin_merge_request ability to Developer level and up
This was necessary because this permission is checked dynamically by
`app/views/shared/issuable/_context` when on a Merge Request.

Closes #2058
2015-07-24 14:57:38 -04:00
Douwe Maan 0c1d912559 Merge branch 'rs-issue-2012' into 'master'
Make username parameter for Users#show case-insensitive

Closes #2012

See merge request !996
2015-07-24 09:29:58 +00:00
Robert Speicher 5ce6d18681 Add User.find_by_username! 2015-07-23 17:16:39 -04:00
Douwe Maan 276ca427ea Fix Remove source-branch for MRs from same project 2015-07-22 14:07:41 +02:00
Stan Hu 996ad35bed Merge branch 'fix-disabled-feature-access' into 'master'
Fix (i.e. prevent) access to disabled features for unauthenticated users

Unauthenticated users had access to disabled features of public
projects. The code has been slightly refactored so that feature checks
are done in a separate method and can also be applied for public access.

See merge request !1006
2015-07-20 16:42:07 +00:00
Daniel Gerhardt 4a0e4c857f Fix access to disabled features for unauthenticated users
Unauthenticated users had access to disabled features of public
projects. The code has been slightly refactored so that feature checks
are done in a separate method and can also be applied for public access.
2015-07-20 09:45:24 +02:00
Stan Hu e1811316d7 Remove repository graph log to fix slow cache updates after push event
Recalculating graph_log took minutes on a large repository since each
of the 6000 commits would need to calculate the diff. Since graph_log
does not appear to be used, remove it from the list of things to update.
For the Linux kernel repository, this reduced the ProjectCacheWorker time
from 8+ minutes to 16 seconds.

Closes #2016
2015-07-19 22:53:14 -07:00
Daniel Gerhardt 69417d36b2 Fix label read access for unauthenticated users
The label page was added to navigation for unauthorized users because
the previously used milestone read permission was still checked. This
has been fixed and read access to labels is now granted (again) for
public projects.

This regression has been introduced in
07efb17e10 (7.12).

See also 9bcd36396b.

Refs !836, !842.
2015-07-19 21:33:21 +02:00
Dmitriy Zaporozhets c413a5507d Merge branch 'validate_token_and_url_format_for_gitlab_ci' into 'master'
Validate format of project_url and token for GitLab CI service.

If `project_url` and `token` for are invalid, [service_hook creation](https://gitlab.com/gitlab-org/gitlab-ce/blob/7-13-stable/app/models/project_services/gitlab_ci_service.rb#L30-34) will silently fail due to validation of URL in `WebHook`.

Given that token is a sequence of numbers and letters for GitLab CI making sure that there are no unexpected characters should be enough to prevent service_hook being nil. 

Fixes #1997 

See merge request !987
2015-07-17 16:25:03 +00:00
Dmitriy Zaporozhets 67fb9ef266 Merge branch 'even-faster-search' into 'master'
Avoid copy of strings in memory for parsing git grep result

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>

See merge request !967
2015-07-17 16:22:45 +00:00
Marin Jankovski c3e35917fb Validate format of project_url and token for GitLab CI service. 2015-07-17 15:26:09 +02:00
Dmitriy Zaporozhets f0116f1335 Store commit count in project table
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-07-17 15:22:56 +02:00
Dmitriy Zaporozhets 67ca5a53f6 Build missing cache items in background job after each push
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-07-17 14:50:03 +02:00
Dmitriy Zaporozhets 90e47dd949 Merge branch 'rs-issue-1773' into 'master'
Fix mentions not being created upon issue/merge request update

New cross-references weren't being added when they were made in an issue or merge request update.

This happened because the relevant `UpdateService`s were making the `notice_added_references` call
after the model had already been updated and saved, so the `changes` attribute was empty and no
cross-references were made at all.

This fixes the bug and adds a bit of testing and a bit of refactoring.

Closes #1773

See merge request !974
2015-07-14 08:40:08 +00:00
Robert Speicher f3d4767d0c Rename notice_added_references to create_new_cross_references! 2015-07-13 21:31:16 -04:00
Robert Speicher e4c698fd5c Refactor Mentionable#notice_added_references
It now accounts for models that have changed but have already been
persisted, such as when called from an UpdateService.

Closes #1773
2015-07-13 21:31:00 -04:00
Dmitriy Zaporozhets 5f34759ecb Allow user to specify content he wants to see on project page
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-07-13 18:24:15 +02:00
Dmitriy Zaporozhets 00053c805c Merge branch 'ssh-key-linebreaks' into 'master'
Add error message for SSH key linebreaks

Solves this [request](http://feedback.gitlab.com/forums/176466-general/suggestions/5653544-check-for-linebreaks-in-ssh-key).

See merge request !672
2015-07-13 09:33:55 +00:00
Dmitriy Zaporozhets bbd3d2c39d Avoid copy of strings in memory for parsing git grep result
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-07-13 11:27:25 +02:00
Dmitriy Zaporozhets d93da8bed5 Merge branch 'rs-disable-2fa' into 'master'
Add User#disable_two_factor!

This method encapsulates all the logic for disabling 2FA on a specific
User model.

See merge request !961
2015-07-13 08:47:55 +00:00
Dmitriy Zaporozhets ec19a960ca Add tests for repository search files
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-07-12 14:32:25 +02:00
Dmitriy Zaporozhets 9ab12e099d Fix search blobs for wiki
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-07-12 14:01:06 +02:00
Nikita Verkhovin 562d78a65a Add error message for SSH key linebreaks 2015-07-12 00:18:56 +06:00
Robert Speicher 22724418d3 Add User#disable_two_factor!
This method encapsulates all the logic for disabling 2FA on a specific
User model.
2015-07-10 16:18:30 -04:00
Dmitriy Zaporozhets f6609c9882 Implement search of code via git grep
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-07-10 17:50:50 +02:00
Dmitriy Zaporozhets 27a9ff8264 Merge branch 'rs-dev-issue-2372' into 'master'
Filter by issues/merge requests without a milestone

Closes internal https://dev.gitlab.org/gitlab/gitlabhq/issues/2372

See merge request !886
2015-07-08 21:42:29 +00:00
Stan Hu 954eedf368 Change "Irc Uri" -> "IRC URI" 2015-07-07 05:48:32 -07:00
Robert Speicher d00cb00d6b Rename NoMilestone to Milestone::None
Also refactors IssuableFinder to avoid redundant title check.
2015-07-06 22:39:55 -04:00
Robert Speicher 3ee3cb24d4 Allow user to filter by Issues/Merge Requests without a Milestone 2015-07-06 22:39:55 -04:00
Dmitriy Zaporozhets f3590c83ea Merge branch 'audit_log' into 'master'
Audit log for user authentication

https://dev.gitlab.org/gitlab/gitlabhq/issues/2318

See merge request !931
2015-07-06 10:09:53 +00:00
Valery Sizov 411829fdb5 Audit log for user authentication 2015-07-06 12:36:08 +03:00
Dmitriy Zaporozhets 5f52d6a038 Merge branch 'add-irker-options' into 'master'
Add Irker service configuration options

### What does this MR do?

This MR makes a number of hard-coded Irker parameters configurable in the service settings: Irker server host, port, and default IRC URI. It also removes the "max recipient" limit since the recipient list is configurable only by the project owner, and it makes no sense to update the limit when it is implied in the recipient list already.

### Why was this MR needed?

The existing service assumed that gitlab.com was running an Irker daemon on `localhost` when it was not. Using Irker on gitlab.com thus did not work at all. This MR allows users to provide their own Irker daemons.

### Are there points in the code the reviewer needs to double check?

My main concern is whether allowing a user to specify the server/port combination would have security implications for a host. Given that HipChat and Slack allow users to do this, I didn't think this was doing anything novel.

### What are the relevant issue numbers?

* Closes #1713
* Closes #1714
* Closes gitlab-com/support-forum#139

### Screenshots

### Before

![image](https://gitlab.com/stanhu/gitlab-ce/uploads/2eb3eb815e249e9fb669fc97ecd4f3c8/image.png)

### After

![image](https://gitlab.com/gitlab-org/gitlab-ce/uploads/cceaba951c05bd3df2c842cc68046b87/image.png)

See merge request !930
2015-07-06 08:57:16 +00:00
Stan Hu d4be82d1c9 Add Irker service configuration options
Closes #1713
Closes #1714
Closes gitlab-com/support-forum#139
2015-07-05 06:40:56 -07:00
catatsuy 87ac590078 'created_at DESC' is performed twice
If you are already sorting in descending order in the created_at,
it is run twice when you run the .recent.
It has passed in the string 'created_at DESC'.
Ruby on Rails is directly given to the SQL.
It is a slow query in MySQL.
2015-07-02 21:28:31 +09:00
Dmitriy Zaporozhets 2e6bbb12f8 Refactor can_be_merged logic for merge request
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-07-01 17:24:03 +02:00
Dmitriy Zaporozhets 804168e1de Merge branch 'use-rugged-for-merge' into 'master'
Merge branches inside one repository using rugged instead of satellites

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>

cc @rspeicher @DouweM

See merge request !918
2015-07-01 15:08:41 +00:00
Dmitriy Zaporozhets d24c40ec21 Merge branches inside one repository using rugged instead of satellites
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-07-01 16:23:58 +02:00
Valery Sizov 6ede2db328 fix of GitLab CI forking 2015-07-01 13:26:45 +03:00
Dmitriy Zaporozhets 2d85458ac7 Merge branch 'fix-zero-sha-lookup' into 'master'
Repository#blob_at should return nil for 00000000... sha

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>

See merge request !916
2015-07-01 09:30:43 +00:00
Dmitriy Zaporozhets baf12f45d8 Repository#blob_at should return nil for 00000000... sha
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-07-01 11:02:37 +02:00
Dmitriy Zaporozhets a5b54f919a Reporter role can manage issue tracker now
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-06-30 13:33:02 +02:00
Dmitriy Zaporozhets 7ca017b513 Refactor issue, mr, note abilities to include project abilities too
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-06-26 18:15:36 +02:00
Dmitriy Zaporozhets 083d4604c4 Change dynamic abilities to new format
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-06-26 17:18:40 +02:00
Dmitriy Zaporozhets 342d553709 Rename abilities to correspond contoller/model action names
write_ was renamed to create_
modify_  was renamed to update_

So now in update action we have next code

def create
  can?(current_user, :create_issue, @issue)
end

def update
  can?(current_user, :update_issue, @issue)
end

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-06-26 15:55:56 +02:00
Dmitriy Zaporozhets d5947ada44 Simplify set of assignee, milestone and label to admin_issue rule
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-06-26 15:45:45 +02:00
Dmitriy Zaporozhets d315d1eba4 Dont allow guest to set assigne, milestone and label when create new issue or merge request
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-06-25 15:38:04 +02:00
Dmitriy Zaporozhets 0c8b96bdbc Merge branch 'performance-improvements' into 'master'
Performance improvements

* store @participants in variable
* store result of subscribed? call into variable

In total it reduce amount of SQL queries for issue or merge_request with 10 comments/participants almost twice.

See merge request !883
2015-06-25 08:14:03 +00:00
Dmitriy Zaporozhets a5f23435f7 Improve performance for issue#show page
* store @participants in variable
* store result of subscribed? call into variable

In total it reduce amount of SQL queries for issue with 10 comments/participants twice.

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-06-24 12:49:34 +02:00
Douwe Maan 43b444f40a Merge branch 'rs-issue-1850' into 'master'
Only look up Commit authors/committers by email

- Removes looking up authors/committers by name
- Renames `User.find_for_commit` to `User.find_by_any_email`

Closes #1850

See merge request !878
2015-06-24 09:47:13 +00:00