Age | Commit message (Collapse) | Author |
|
This adds a database migration that creates routes for any projects and
namespaces that don't already have one. We also remove the runtime code
for dynamically creating routes, as this is no longer necessary.
|
|
|
|
Signed-off-by: Marko, Peter <peter.marko@siemens.com>
|
|
Signed-off-by: Marko, Peter <peter.marko@siemens.com>
|
|
Fix archived parameter for projects API
Closes #32301
See merge request gitlab-org/gitlab-ce!20566
|
|
|
|
This reverts commit 4d9a3f42f1fd3be21555e19872b7121cca65015e, reversing
changes made to ecf9c145f6e4d170cd059df88743393d9e63c489.
|
|
Port of Todos for epics
See merge request gitlab-org/gitlab-ce!19908
|
|
This adds Keyset pagination to GraphQL lists. PoC for that is
pipelines on merge requests and projects.
When paginating a list, the base-64 encoded id of the ordering
field (in most cases the primary key) can be passed in the `before` or
`after` GraphQL argument.
|
|
|
|
* Group filtering now includes also issues/MRs from
subgroups/subprojects
* fixed due_date
* Also DRYed todo controller specs
|
|
|
|
|
|
'master'
[master] Don't show internal info in public feed
See merge request gitlab/gitlabhq!2395
|
|
|
|
There is a bug https://github.com/rails/arel/issues/531 in Rails 5.0 and
5.1 in Arel/ActiveRecord.
This commit converts arel based queries to their raw counterparts to
make the finder work in Rails 5.0.
These changes should be reverted when on Rails 5.2 as since that version
such queries work well again. See the bug link.
|
|
This change fixes a bug where an anonymous user was able to see the
activity related to internal projects when visiting the public profile
of a user of the GitLab instance.
|
|
|
|
When filtering issues with a search string in a group, we observed on GitLab.com
that Postgres was using an inefficient query plan, preferring the (global)
trigram indexes on description and title, rather than using a filter on the
restricted set of issues within the group.
Change the callers of the IssuableFinder to use a CTE in this case to fence the
rest of the query from the LIKE filters, so that the optimiser is forced to
perform the filter in the order we prefer.
This will only force the use of a CTE when:
1. The use_cte_for_search params is truthy.
2. We are using Postgres.
3. We have passed the `search` param.
The third item is important - searching issues using the search box does not use
the finder in this way, but contructs a query and appends `full_search` to
that. For some reason, this query does not suffer from the same issue.
Currenly, we only pass this param when filtering issuables (issues or MRs) in a
group context.
|
|
We had `item_project_ids` to help make slow queries on the dashboard faster, but
this isn't necessary any more - the queries are plenty fast, and we forbid
searching the dashboard without filters.
|
|
|
|
GroupProjectsFinder#collection_with_user would run the following code:
if group.users.include?(current_user)
When running this code for multiple groups this would result in one
query being executed for every group.
This commit simple removes the entire "if" statement with the code of
the "else" statement. This ensures both paths use the same code, and
removes the need for explicitly checking if a user is a member of the
group.
|
|
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
|
|
|
|
|
|
To find the pipeline for a specific sha requires scanning the list of
all pipelines for a ref that contains the sha. This makes it hard to
find the pipeline id needed to access a trace for a specific job run
in the pipeline using the API.
|
|
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
|
|
This reverts commit 2c3c5b35549185080296670cfe6710aa80f99944.
Revisit this after https://gitlab.com/gitlab-org/gitlab-ce/issues/45441
|
|
Make archived projects completely read-only
Closes #44788
See merge request gitlab-org/gitlab-ce!18136
|
|
This prevents creating merge requests targeting archived projects.
This could happen when a project was already forked, but then the
source was archived.
|
|
This removes the extra check for project-ids which is not needed at all.
This does not necessarily reduce execution time of the query, but
improves planning time by a few millseconds.
Closes #37125.
|
|
|
|
|
|
|
|
These extra sort keys caused sequential scans on the namespaces and projects
page. Removing them makes the page load on GitLab.com.
Closes #44338
|
|
Closes #40525.
|
|
into 'master'
Add overview of branches and filtered views for active/stale branches
Closes #40187 et #17293
See merge request gitlab-org/gitlab-ce!15402
|
|
|
|
This was causing todo priority sorting to fail.
|
|
Resolve "API support for selecting only updated issues before/after a given date"
Closes #41616
See merge request gitlab-org/gitlab-ce!17417
|
|
|
|
|
|
Don't use ProjectsFinder in TodosFinder
Closes #43767
See merge request gitlab-org/gitlab-ce!17462
|
|
Revert Project.public_or_visible_to_user changes but apply change to SnippetsFinder
Closes #42877
See merge request gitlab-org/gitlab-ce!17476
|
|
|
|
Using ProjectsFinder in TodosFinder to limit todos to the right projects
leads to overly complicated and slow database queries. This commit
removes the use of ProjectsFinder in favour of using
Project.public_or_visible_to_current_user directly.
Fixes https://gitlab.com/gitlab-org/gitlab-ce/issues/43767
|
|
Because epic index page includes also epics from subgroups
it's necessary to also get descendant group labels for filtering.
https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/4773#note_61236542
|
|
|
|
This applies the changes introduced in `Project.public_or_visible_to_user`
to the snippets finder only.
We know that for `SnippetsFinder`, this change improves SQL timing from
5/23/25s to 0.7/2/4s (mean/p95/p99). At the same time, the scope was too
broad, (negatively) affecting SQL timings in various other places:
https://gitlab.com/gitlab-com/infrastructure/issues/3772
With this commit, the snippets dashboard stays usuable as we generally
don't run into statement timeouts. In contrast to the earlier change in
!17088, the scope of the change is limited to `SnippetsFinder` only,
thus not affecting other places.
|