| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
|
| |
By adding groups to milestones we can now include them
in the count of Open and Closed.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Enables frozen string for the following:
* app/controllers/dashboard/**/*.rb
* app/controllers/explore/**/*.rb
* app/controllers/google_api/**/*.rb
* app/controllers/groups/**/*.rb
* app/controllers/import/**/*.rb
* app/controllers/instance_statistics/**/*.rb
* app/controllers/ldap/**/*.rb
* app/controllers/oauth/**/*.rb
* app/controllers/profiles/**/*.rb
Partially addresses #47424.
|
| |
|
|
|
|
|
| |
This whitelists all existing offenses for the various CodeReuse cops, of
which most are triggered by the CodeReuse/ActiveRecord cop.
|
|\
| |
| |
| |
| | |
Group todos
See merge request gitlab-org/gitlab-ce!20675
|
| |
| |
| |
| | |
This reverts commit 8717c7dad9b5a8fa21ec9a652c54718a6b4c2175.
|
|/ |
|
|
|
|
|
| |
This reverts commit 4d9a3f42f1fd3be21555e19872b7121cca65015e, reversing
changes made to ecf9c145f6e4d170cd059df88743393d9e63c489.
|
| |
|
|
|
|
|
|
|
| |
* Group filtering now includes also issues/MRs from
subgroups/subprojects
* fixed due_date
* Also DRYed todo controller specs
|
|
|
|
|
|
|
|
|
|
| |
Rails 5.0 requires to explicitly permit attributes when building a URL
using current `params` object.
The `safe_params` helper allows developers to just call `safe_params.merge(...)`
instead of manually adding `permit` to every call.
https://github.com/rails/rails/pull/20868
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
The todos page limit is 20, and both that and a user's pending todo count are
integers. Using integer division means that the result's floor will be taken,
defeating the point of the later call to `#ceil`.
So we need to convert one side of the division to a float first, otherwise the
last page won't be treated as available.
|
| |
|
|\ |
|
| |
| |
| |
| | |
Closes #38808
|
| |
| |
| |
| |
| |
| | |
When there are no filters, we can get the total todos count from the cached
count on the user object, instead of performing a DB query. This query takes
about 80ms for me on GitLab.com.
|
| | |
|
| | |
|
| |
| |
| |
| | |
The children are lazy-loaded when expanding
|
|/ |
|
|
|
|
|
| |
This solves an N+1 query problem where we'd run multiple queries when
getting the namespace owners of the displayed projects.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This changes various controllers to use the new EventCollection class
for retrieving events. This class uses a JOIN LATERAL query on
PostgreSQL to retrieve queries in a more efficient way, while falling
back to a simpler / less efficient query for MySQL.
The EventCollection class also includes a limit on the number of events
to display to prevent malicious users from cycling through all events,
as doing so could put a lot of pressure on the database.
JOIN LATERAL is only supported on PostgreSQL starting with version 9.3.0
and as such this optimisation is only used when using PostgreSQL 9.3 or
newer.
|
|
|
|
|
| |
This solves an N+1 query problem where for every project we'd query the
creator separately just to figure out what avatar to display.
|
|
|
|
|
|
|
|
| |
TodoService should not call `.select(&:id)` on todos, because this is
bad performance. So instead use sub-queries, which will result in a
single SQL query to the database.
https://docs.gitlab.com/ee/development/sql.html#plucking-ids
|
|
|
|
|
| |
[9.3 security fix] Renders 404 if given project is not readable by the user on Todos dashboard
See merge request !2118
|
| |
|
| |
|
|\
| |
| |
| |
| | |
Refactor atom builder by using a layout
See merge request !12114
|
| | |
|
|/
|
|
|
| |
Instead of an integration test that creates 101 Todo records to test a
simple view helper, just unit test the helper.
|
|\
| |
| |
| |
| |
| |
| | |
Fixed dashboard milestone tabs not loading
Closes #33477
See merge request !12023
|
| |
| |
| |
| | |
Closes #33477
|
| | |
|
|\ \
| |/ |
|
| |
| |
| |
| | |
explicitly set 'status' in 'destroy' actions of controllers
|
|\ \
| |/
| |
| | |
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
|
| | |
|
| |
| |
| |
| |
| |
| | |
Refactor snippets finder & dont return internal snippets for external users
See merge request !2094
|
| | |
|
|/
|
|
| |
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
|
|
|
| |
This reverts merge request !10845
|
|
|
|
|
|
|
|
| |
TodoService should not call `.select(&:id)` on todos, because this is
bad performance. So instead use sub-queries, which will result in a
single SQL query to the database.
https://docs.gitlab.com/ee/development/sql.html#plucking-ids
|
|\
| |
| |
| |
| |
| |
| | |
ProjectsFinder should handle more options
Closes #28810
See merge request !9682
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Extended ProjectFinder in order to handle the following options:
- current_user - which user use
- project_ids_relation: int[] - project ids to use
- params:
- trending: boolean
- non_public: boolean
- starred: boolean
- sort: string
- visibility_level: int
- tags: string[]
- personal: boolean
- search: string
- non_archived: boolean
GroupProjectsFinder now inherits from ProjectsFinder.
Changed the code in order to use the new available options.
|
|/
|
|
|
| |
Fix for three open redirect vulns using redirect_to url_for(params.merge)))
See merge request !2082
|