| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
Partially addresses #47424.
Had to make changes to spec files because
stubbing methods on frozen objects is a mess
in RSpec and leads to failures:
https://github.com/rspec/rspec-mocks/issues/1190
|
|
|
|
|
| |
This whitelists all existing offenses for the various CodeReuse cops, of
which most are triggered by the CodeReuse/ActiveRecord cop.
|
|
|
|
| |
This is more idiomatic than checking membership explicitly.
|
|
|
|
|
|
|
| |
- Allow `created_at` and `updated_at` parameters on Issues API
- Allow `created_at` on Issue Notes API
Closes gitlab-org/gitlab-ce#40059
|
| |
|
|
|
|
|
|
|
| |
This was being masked by the statement cache because only one author was used
per issue in the test..
Also adds support for an Rspec matcher `exceed_all_query_limit`.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In CE, every `Issue` entity is also a `ProjectEntity`, which calls
`entity&.project.try(:id)` to show the project ID. In an API
request with 100 issues, this would hit the Rails statement cache 100 times
for the same project and cause unnecessary overhead as related models would
also be loaded.
In EE, we call `Issue#supports_weight?` for each issue, which then calls
`project&.feature_available?(:issue_weights)`. If the project is not
preloaded, this incurs additional overhead, as each individual Project
object has to be queried. This can lead to a significant performance hit.
In loading the CE project with 100 issues, this contributed to at least 22%
of the load time.
See https://gitlab.com/gitlab-org/gitlab-ce/issues/47031 for why testing this
is a bit tricky.
|
|\
| |
| |
| |
| |
| |
| | |
Resolve "API naming for issue scope"
Closes #44799
See merge request gitlab-org/gitlab-ce!18935
|
| |
| |
| |
| | |
Deprecate corresponding dash versions created-by-me and assigned-to-me
|
|/ |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
This ensures that we have more visibility in the number of SQL queries
that are executed in web requests. The current threshold is hardcoded to
100 as we will rarely (maybe once or twice) change it.
In production and development we use Sentry if enabled, in the test
environment we raise an error. This feature is also only enabled in
production/staging when running on GitLab.com as it's not very useful to
other users.
|
| |
|
| |
|
|
|
|
| |
- Ensure that unwanted params are no passed to actual finder classes
|
|
|
|
|
|
|
|
|
| |
Prevent creating issues through API without having permissions
See merge request gitlab/gitlabhq!2225
(cherry picked from commit c298bbaa88883343dc9cbbb6abec0808fb3b546c)
915b97c5 Prevent creating issues through API without having permissions
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This method can be called with an array, or a relation:
1. Arrays always have a limited amount of values, so that's fine.
2. If the relation does not have a limit value applied, then we will load every
single object in that collection, and prevent N+1 queries for the metadata
for that. But that's wrong, because we should never call this without an
explicit limit set. So we raise in that case, and this commit will see which
specs fail.
The only failing specs here were the issues API specs, and the specs for
IssuableMetadata itself, and both have been addressed.
|
| |
|
| |
|
| |
|
| |
|
|\
| |
| |
| |
| |
| |
| |
| |
| | |
'master'
Add time stats to Issue and Merge Request API
Closes #28453
See merge request !13335
|
| | |
|
| | |
|
| | |
|
|/ |
|
|
|
|
| |
Should have been part of !13004.
|
|\
| |
| |
| |
| |
| |
| | |
Add author_id & assignee_id param to /issues API
Closes #29430
See merge request !13004
|
| | |
|
| |
| |
| |
| | |
Allow issues filtering on `author_id` and `assignee_id`.
|
|/ |
|
|
|
|
|
|
|
|
| |
New version of the gem returns 200 status code on delete with content
instead of 204 so we explicitly set status code to keep existing
behavior
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
|
| |
|
| |
|
| |
|
| |
|
|\
| |
| |
| |
| |
| |
| | |
Add issues/:iid/closed_by api endpoint
Closes #26437
See merge request !10511
|
| | |
|
| |
| |
| |
| | |
CE port of https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/962
|
|/ |
|
|
|
|
| |
Notice that this param is being supported since V3, but we have not added the proper docs for it
|
| |
|
|
|
|
| |
Closes #29631
|
|
|
|
|
|
| |
API routes
Signed-off-by: Rémy Coutable <remy@rymai.me>
|
|
|
|
|
| |
merge_request_for_resolving_discussions ->
merge_request_to_resolve_discussions_of
|
|
|
|
|
| |
And deduplicate the finding of MR's & discussions. Now the searching
is done in the service, istead of the controller & the API.
|
|
|
|
|
|
| |
Delegate a discussion in a merge request into a new issue.
The discussion wil be marked as resolved and a system note will be
added linking to the newly created issue.
|