Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/spec
AgeCommit message (Collapse)Author
2016-10-11Merge branch 'api-fix-project-group-sharing' into 'security'Rémy Coutable
API: Share projects only with groups current_user can access Aims to address the issues here: https://gitlab.com/gitlab-org/gitlab-ce/issues/23004 * Projects can be shared with non-existent groups * Projects can be shared with groups that the current user does not have access to read Concerns: The new implementation of the API endpoint allows projects to be shared with a larger range of groups than can be done via the web UI. The form for sharing a project with a group uses the following API endpoint to index the available groups: https://gitlab.com/gitlab-org/gitlab-ce/blob/494269fc92f61098ee6bd635a0426129ce2c5456/lib/api/groups.rb#L17. The groups indexed in the web form will only be those groups that the user is currently a member of. The new implementation allows projects to be shared with any group that the authenticated user has access to view. This widens the range of groups to those that are public and internal. See merge request !2005 Signed-off-by: Rémy Coutable <remy@rymai.me>
2016-10-11Merge branch 'allow_multiple_labels_commands' into 'master' Rémy Coutable
allow multiple labels commands ### What does this MR do? This MR should add multiple command support for all label related commands. ### What are the relevant issue numbers? Closes #22965 See merge request !6780
2016-10-11Merge branch '22211-500-instead-of-404' into 'master' Sean McGivern
Respond with 404 Not Found for non-existent tags ## What does this MR do? Handles the case when a non-existent tag is being viewed, and responds with 404 Not Found instead of 500 Internal Server Error. ## Are there points in the code the reviewer needs to double check? The small changes should be clear from a simple diff. ## Why was this MR needed? To resolve the issue #22211. ## Screenshots (if relevant) ## Does this MR meet the acceptance criteria? - [x] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added - [ ] [Documentation created/updated](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/development/doc_styleguide.md) - [ ] API support added - Tests - [x] Added for this feature/bug - [x] All builds are passing - [x] Conform by the [merge request performance guides](http://docs.gitlab.com/ce/development/merge_request_performance_guidelines.html) - [x] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides) - [x] Branch has no merge conflicts with `master` (if you do - rebase it please) - [x] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits) ## What are the relevant issue numbers? Closes #22211 See merge request !6699
2016-10-11Merge branch 'assign-issues-for-merge-request-18876' into 'master' Douwe Maan
Ability to bulk assign issues to author of merge request ## What does this MR do? Provides a link to auto-assign issues to the author of a merge request, when they are mentioned as being closed by the MR. ## Are there points in the code the reviewer needs to double check? ## Why was this MR needed? To help avoid working on a MR without having assigned related issues to self ## What are the relevant issue numbers? Fixes #18876 ## Screenshots (if relevant) ![ScreenShot-P216](/uploads/1af5e71a0a0ff0a60c5d7b54c0e09d9c/ScreenShot-P216.png) ## Tasks - [x] Refactor or move away from using `BulkUpdateService` - [x] ~~Consider alternate link message when only a subset of issues will be assigned~~ - [x] Minimize repeated calls to expensive `closes_issues` method - [x] Move away from using inflector for pluralization and fix flash message - [x] Change auth `before_action` and fallback to error flash message - [x] Shouldn't overwrite current assignee if one exists ## Does this MR meet the acceptance criteria? - [x] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added - [x] ~~[Documentation created/updated](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/development/doc_styleguide.md)~~ - [x] ~~API support added~~ - Tests - [x] Added for this feature/bug - [x] All builds are passing - [x] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides) - [x] Branch has no merge conflicts with `master` (if you do - rebase it please) - [x] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits) See merge request !5725
2016-10-11allow multiple labels commandsbarthc
2016-10-11Merge branch 'guests_cant_see_mrs' into 'master' Sean McGivern
Make guests unable to view MRs ## What does this MR do? Make guests unable to view MRs. This also fixes a bug when a non-member user could get notification if mentioned (in private project, it's OK for public project). Now if you are a guest and you will be mentioned in one of the MRs you won't get a notification. ## What are the relevant issue numbers? Closes https://gitlab.com/gitlab-org/gitlab-ce/issues/1410 See merge request !6673
2016-10-11Merge branch 'build-instead-create-in-label-link-spec' into 'master' Dmitriy Zaporozhets
Build instead create in label_link model spec ## What does this MR do? This MR improves spec for label link model. ## Are there points in the code the reviewer needs to double check? No ## Why was this MR needed? Because for check validations, we can use build instead create a record in the database. ## Screenshots (if relevant) No ## Does this MR meet the acceptance criteria? - n/a [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added - n/a [Documentation created/updated](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/development/doc_styleguide.md) - n/a API support added - Tests - n/a Added for this feature/bug - [x] All builds are passing - [x] Conform by the [merge request performance guides](http://docs.gitlab.com/ce/development/merge_request_performance_guidelines.html) - [x] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides) - [x] Branch has no merge conflicts with `master` (if it does - rebase it please) - n/a [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits) ## What are the relevant issue numbers? See merge request !6792
2016-10-11Merge branch 'remove-empty-describe' into 'master' Dmitriy Zaporozhets
Remove empty describe block on key spec model ## What does this MR do? Removes unnecessary describe in test ## Are there points in the code the reviewer needs to double check? No ## Why was this MR needed? It describe block not needed. ## Screenshots (if relevant) No ## Does this MR meet the acceptance criteria? - n/a [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added - n/a [Documentation created/updated](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/development/doc_styleguide.md) - n/a API support added - Tests - n/a Added for this feature/bug - [x] All builds are passing - [x] Conform by the [merge request performance guides](http://docs.gitlab.com/ce/development/merge_request_performance_guidelines.html) - [x] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides) - [x] Branch has no merge conflicts with `master` (if it does - rebase it please) - [ ] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits) ## What are the relevant issue numbers? No See merge request !6793
2016-10-11Merge branch 'atom-routes' into 'master' Robert Speicher
Allow browsing branches that end with '.atom' ## What does this MR do? 1. Simplify the regex capture in the routing for the CommitsController to not exclude the '.atom' suffix. That's a perfectly valid git branch name, so we shouldn't blow up if we get it. 2. Because Rails now can't automatically detect the request format, add some code to do so in `ExtractPath` when there is no path. This means that, given branches 'foo' and 'foo.atom', the Atom feed for the former is unroutable. To fix this: don't do that! Give the branches different names! ## Why was this MR needed? Creating a branch or tag name ending in '.atom' would cause some 500s on that repo. ## What are the relevant issue numbers? Closes #21955. Related to !5994. See merge request !6750
2016-10-11Make guests unable to view MRsValery Sizov
2016-10-11Allow browsing branches that end with '.atom'Sean McGivern
We need to do two things to support this: 1. Simplify the regex capture in the routing for the CommitsController to not exclude the '.atom' suffix. That's a perfectly valid git branch name, so we shouldn't blow up if we get it. 2. Because Rails now can't automatically detect the request format, add some code to do so in `ExtractPath` when there is no path. This means that, given branches 'foo' and 'foo.atom', the Atom feed for the former is unroutable. To fix this: don't do that! Give the branches different names!
2016-10-11Merge branch 'sh-fix-issue-20776' into 'master' Robert Speicher
Fix Error 500 when viewing old merge requests with bad diff data Customers running old versions of GitLab may have MergeRequestDiffs with the text ["--broken diff"] due to text generated by gitlab_git 1.0.3. To avoid the Error 500, verify that each element is a type that gitlab_git will accept before attempting to create a DiffCollection. Closes #20776 See merge request !6754
2016-10-11Merge branch 'new-gitlab-users-clear_all_authentication_tokens-task' into ↵Robert Speicher
'master' Add a new gitlab:users:clear_all_authentication_tokens task ## What are the relevant issue numbers? Part of #22537. See merge request !6745
2016-10-11Merge branch 'precalculate-trending-projects' into 'master' Robert Speicher
Precalculate trending projects ## What does this MR do? This MR changes the trending projects code so that data is precalculated, removing the need for any complex caching mechanisms. ## Why was this MR needed? Caching of trending data didn't work properly, still leading to queries. Using caching in general would be very hard due to users being able to apply custom filters to the list of trending projects. See merge request !6749
2016-10-11Merge branch 'empty-mrs' into 'master' Rémy Coutable
Allows empty merge requests for a workflow described in gitlab-org/gitlab-ce#14606 Closes gitlab-org/gitlab-ce#14606 See merge request !6384
2016-10-11Allow empty merge requestsArtem Sidorenko
2016-10-11Add a new gitlab:users:clear_all_authentication_tokens taskRémy Coutable
Signed-off-by: Rémy Coutable <remy@rymai.me>
2016-10-11Merge branch 'master' into 22211-500-instead-of-404Linus G Thiel
2016-10-11Merge branch 'dz-cleanup-routing' into 'master' Dmitriy Zaporozhets
Remove NamespacesController * removes unnecessary NamespacesController. The main purpose of this controller was redirect to group or user page when URL like https://gitlab.com/gitlab-org was used. Now this functionality is handled by constrainers (like this https://gitlab.com/gitlab-org/gitlab-ce/blob/master/config/routes/user.rb#L17-21) and take user to correct controller right from the start. * serve non existing API routes like `/api/v3/whatever` with Grape instead of Rails. Before this change wrong API url was served by rails with not obvious 404, 405 & 500 errors See merge request !6733
2016-10-11Remove empty describe block on key spec modelSemyon Pupkov
2016-10-11Build instead create in label_link model specSemyon Pupkov
2016-10-10Fix Error 500 when viewing old merge requests with bad diff dataStan Hu
Customers running old versions of GitLab may have MergeRequestDiffs with the text ["--broken diff"] due to text generated by gitlab_git 1.0.3. To avoid the Error 500, verify that each element is a type that gitlab_git will accept before attempting to create a DiffCollection. Closes #20776
2016-10-10Merge branch 'fix-misnamed-constant' into 'master' Robert Speicher
Rename HTMLEntityFilter to HtmlEntityFilter to fix autoloading See merge request !6776
2016-10-10Merge branch 'use-let-in-tests' into 'master' Stan Hu
Use user from let instead recreate in before ## What does this MR do? It`s minor fix in tests. We can use factory from let instead recreate user before each test. ## Are there points in the code the reviewer needs to double check? No ## Why was this MR needed? ## Screenshots (if relevant) No ## Does this MR meet the acceptance criteria? - [ ] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added - [ ] [Documentation created/updated](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/development/doc_styleguide.md) - [ ] API support added - Tests - [ ] Added for this feature/bug - [x] All builds are passing - [x] Conform by the [merge request performance guides](http://docs.gitlab.com/ce/development/merge_request_performance_guidelines.html) - [x] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides) - [x] Branch has no merge conflicts with `master` (if it does - rebase it please) - [ ] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits) ## What are the relevant issue numbers? See merge request !6762
2016-10-10fixup! Added link to bulk assign issues to MR author. (Issue #18876)James Edwards-Jones
2016-10-10HTMLEntityFilter -> HtmlEntityFilterNick Thomas
2016-10-10Merge branch 'fix/async-pipeline-processing-stale-data' into 'master' Kamil Trzciński
Fix ci pipeline processing with async jobs ## What does this MR do? This MR fixes CI pipeline processing with asynchronous jobs called from `around_transition` provided by state machine. For details see https://github.com/pluginaweek/state_machine/issues/191 and commit f68acba. ## Why was this MR needed? Recently merged https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/6650 introduced problem with asynchronous job being deployed when `around_transition` still held transaction, which caused race condition that prevented pipeline status to change in a proper way. ## What are the relevant issue numbers? Closes #23111 See merge request !6736
2016-10-10Merge branch 'namespace-validation-fixes' into 'master' Sean McGivern
Correct namespace validation to forbid bad names #21077 ## What does this MR do? Updates master namespace regex to forbid any namespace ending in `.git` or `.atom` and corrects and adds relevant tests ## Are there points in the code the reviewer needs to double check? I think it's all good. I could use help with the creation of tests for usernames with trailing `.atom` or `.git` as the testing framework is a bit over my head. ## Why was this MR needed? A group that ends in `.atom` will cause the relevent dashboard to crash if the user (ANY user, not just the creator) has visibility of the group until it is deleted through the admin panel (it cannot be renamed, the edit page will crash. It may be fixable through the API, that wasn't checked.) This allows a malicious user with group creation privileges to bulk add users to a group, rename the group to a bad name, and crash the groups dashboard for all members of the group. The same applies if the group is internal or public and users navigate to the explore tab of the groups dashboard. The same applies to usernames ending in `.atom`. In many places of the code, it implies that `.git` in not allowed at the end of namespaces, but many allowed it anyway. This MR forbids it everywhere to prevent potential issues (like the one with `.atom` going forward). ## What are the relevant issue numbers? Group path validation incomplete, crashes groups dashboard #21077 ## Does this MR meet the acceptance criteria? - [X] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added - [ ] [Documentation created/updated](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/development/doc_styleguide.md) - [ ] API support added - Tests - [X] Added for this feature/bug - [X] All builds are passing - [X] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides) - [X] Branch has no merge conflicts with `master` (if you do - rebase it please) - [X] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits) See merge request !5994
2016-10-10Fix api users spec for post request with invalid idDmitriy Zaporozhets
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2016-10-10Replace undefined Grape routing code from 400 to 404Dmitriy Zaporozhets
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2016-10-10Fix API specs behaviour for invalid routingDmitriy Zaporozhets
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2016-10-10Catch any undefined API routing and return 400 Bad RequestDmitriy Zaporozhets
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2016-10-10Update git over http test to match new routingDmitriy Zaporozhets
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2016-10-10Remove NamespacesControllerDmitriy Zaporozhets
The main purpose of this controller was redirect to group or user page when URL like https://gitlab.com/gitlab-org was used. Now this functionality is handled by contrainers and take user to correct controller right from the start Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2016-10-10Merge branch 'adam-commit-search-case-insensitive' into 'master' Sean McGivern
Make searching for commits case insensitive. ## Does this MR meet the acceptance criteria? - [x] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added - Tests - [x] Added for this feature/bug - [ ] All builds are passing - [x] Conform by the [merge request performance guides](http://docs.gitlab.com/ce/development/merge_request_performance_guidelines.html) - [x] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides) - [x] Branch has no merge conflicts with `master` (if you do - rebase it please) - [x] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits) ## What are the relevant issue numbers? Fixes #21800 See merge request !6715
2016-10-10Precalculate trending projectsYorick Peterse
This commit introduces a Sidekiq worker that precalculates the list of trending projects on a daily basis. The resulting set is stored in a database table that is then queried by Project.trending. This setup means that Unicorn workers no longer _may_ have to calculate the list of trending projects. Furthermore it supports filtering without any complex caching mechanisms. The data in the "trending_projects" table is inserted in the same order as the project ranking. This means that getting the projects in the correct order is simply a matter of: SELECT projects.* FROM projects INNER JOIN trending_projects ON trending_projects.project_id = projects.id ORDER BY trending_projects.id ASC; Such a query will only take a few milliseconds at most (as measured on GitLab.com), opposed to a few seconds for the query used for calculating the project ranks. The migration in this commit does not require downtime and takes care of populating an initial list of trending projects.
2016-10-10Merge branch 'tests-use-tmpfs' into 'master' Yorick Peterse
Try tmpfs for repository storage, etc See merge request !6730
2016-10-10Merge branch '22373-reduce-queries-in-api-helpers-find_project' into 'master' Yorick Peterse
Improve project policy specs See merge request !6442
2016-10-10Prevent conflict b/w search field and its dropdownBrennan Roberts
Stop the global search form's default "action" from fighting with dropdown items when using the keyboard to navigate the dropdown. `e.preventDefault()` is now called on the enter key when a dropdown item is already selected. Signed-off-by: Rémy Coutable <remy@rymai.me>
2016-10-10Make searching for commits case insensitive.Adam Niedzielski
Fixes #21800.
2016-10-09Use user from let instead recreate in beforeSemyon Pupkov
2016-10-08Improve spec for merge when build succeeds featureGrzegorz Bizon
2016-10-08Use Hash rocket syntax to maintain Ruby 2.1 compatibility in specStan Hu
2016-10-07Correct namespace validation to forbid bad names #21077Will Starms
Adds .git and .atom to the master namespace regex Updates existing group tests and adds two new ones Updates path cleaning to also forbid .atom
2016-10-07Merge branch '23096-expire-artifacts-per-job' into 'master' Yorick Peterse
ExpireBuildArtifactsWorker query builds table without ordering enqueuing one job… See merge request !6732
2016-10-07Merge branch '22774-retouch-environments-deployments' into 'master' Jacob Schatz
Resolve "Retouch environments list and deployments list" ## What does this MR do? #### Environments List - Fixes deployment ID - Removes bold styling from deployment ID - Changes Las Deployment Column to have '#ID by user' - Adds build column with link to the build - Adds external url to where the environment is hosted #### Environment Details - Add link to the build column and changes content to show "build (#id) by user" - Adds external link to the review app Adds tests ## Screenshots (if relevant) #### Environments List ![env_list](/uploads/6cfd737bb0d2f2853a610479877de5a3/env_list.png) #### Environments Details ![env_details](/uploads/70ec59d7d7de5c1ef57132c2ec9c1b8f/env_details.png) ## Does this MR meet the acceptance criteria? - [x] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added - [ ] [Documentation created/updated](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/development/doc_styleguide.md) - [ ] API support added - Tests - [x] Added for this feature/bug - [ ] All builds are passing - [ ] Conform by the [merge request performance guides](http://docs.gitlab.com/ce/development/merge_request_performance_guidelines.html) - [x] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides) - [x] Branch has no merge conflicts with `master` (if you do - rebase it please) - [ ] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits) ## What are the relevant issue numbers? Closes #22774 See merge request !6691
2016-10-07fixup! Added link to bulk assign issues to MR author. (Issue #18876)James Edwards-Jones
2016-10-07Merge branch 'rs-optimize-award_user_list-spec' into 'master' Rémy Coutable
Optimize the `award_user_list` helper spec According to https://gitlab.com/gitlab-org/gitlab-ce/issues/23034#note_16586657, each test for this helper generated 1,833 queries. Now we only generate stubbed records, and only as many as we need for each test. This also corrects a slight logic bug in the helper itself. When the number of awards was greater than the limit (9 by default), _and_ the current user was one of them, we actually included 10 names, including "You", plus the remaining count. Now we return the correct number regardless. See merge request !6722
2016-10-07Deletes extra empty line breaking the buildFilipa Lacerda
2016-10-07Optimize the `award_user_list` helper specRobert Speicher
According to https://gitlab.com/gitlab-org/gitlab-ce/issues/23034#note_16586657, each test for this helper generated 1,833 queries. Now we only generate stubbed records, and only as many as we need for each test. This also corrects a slight logic bug in the helper itself. When the number of awards was greater than the limit (9 by default), _and_ the current user was one of them, we actually included 10 names, including "You", plus the remaining count. Now we return the correct number regardless.