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-01Review changesLuke Bennett
Updated tests
2016-10-01Added soft wrap logic and button to editorLuke Bennett
Added tests Added awesomeeeeee icons
2016-09-30Merge branch '21744-fix-missing-values-in-linter' into 'master' Rémy Coutable
Add missing values to linter (`only`, `except`) and add new one `Environment` Closes #21744 See merge request !6276
2016-09-30Merge branch 'close-merge-request-if-open-without-source-project' into 'master' Rémy Coutable
Before rendering `show` template we close open merge request without source project. This way there is no need to render `invalid` template. I think that it's better solution than !6383 See merge request !6478
2016-09-30Merge branch '15356-filters-should-change-issue-counts' into 'master' Robert Speicher
Take filters in account in issuable counters ## What does this MR do? This merge request ensure we display issuable counters that take in account all the selected filters, solving #15356. ## Are there points in the code the reviewer needs to double check? There was an issue (#22414) in the original implementation (!4960) when more than one label was selected because calling `#count` when the ActiveRecordRelation contains a `.group` returns an OrderedHash. This merge request relies on [how Kaminari handle this case](https://github.com/amatsuda/kaminari/blob/master/lib/kaminari/models/active_record_relation_methods.rb#L24-L30). A few things to note: - The `COUNT` query issued by Kaminari for the pagination is now cached because it's already run by `ApplicationHelper#state_filters_text_for`, so in the end we issue one less SQL query than before; - In the case when more than one label are selected, the `COUNT` queries return an OrderedHash in the form `{ ISSUABLE_ID => COUNT_OF_SELECTED_FILTERS }` on which `#count` is called: this drawback is already in place (for instance when loading https://gitlab.com/gitlab-org/gitlab-ce/issues?scope=all&state=all&utf8=%E2%9C%93&label_name%5B%5D=bug&label_name%5B%5D=regression) since that's how Kaminari solves this, **the difference is that now we do that two more times for the two states that are not currently selected**. I will let the ~Performance team decide if that's something acceptable or not, otherwise we will have to find another solution... - The queries that count the # of issuable are a bit more complex than before, from: ``` (0.6ms) SELECT COUNT(*) FROM "issues" WHERE "issues"."deleted_at" IS NULL AND "issues"."project_id" = $1 AND ("issues"."state" IN ('opened','reopened')) [["project_id", 2]] (0.2ms) SELECT COUNT(*) FROM "issues" WHERE "issues"."deleted_at" IS NULL AND "issues"."project_id" = $1 AND ("issues"."state" IN ('closed')) [["project_id", 2]] (0.2ms) SELECT COUNT(*) FROM "issues" WHERE "issues"."deleted_at" IS NULL AND "issues"."project_id" = $1 [["project_id", 2]] ``` to ``` (0.7ms) SELECT COUNT(*) AS count_all, "issues"."id" AS issues_id FROM "issues" INNER JOIN "label_links" ON "label_links"."target_id" = "issues"."id" AND "label_links"."target_type" = $1 INNER JOIN "labels" ON "labels"."id" = "label_links"."label_id" WHERE "issues"."deleted_at" IS NULL AND ("issues"."state" IN ('opened','reopened')) AND "issues"."project_id" = 2 AND "labels"."title" IN ('bug', 'discussion') AND "labels"."project_id" = 2 GROUP BY "issues"."id" HAVING COUNT(DISTINCT labels.title) = 2 [["target_type", "Issue"]] (0.5ms) SELECT COUNT(*) AS count_all, "issues"."id" AS issues_id FROM "issues" INNER JOIN "label_links" ON "label_links"."target_id" = "issues"."id" AND "label_links"."target_type" = $1 INNER JOIN "labels" ON "labels"."id" = "label_links"."label_id" WHERE "issues"."deleted_at" IS NULL AND ("issues"."state" IN ('closed')) AND "issues"."project_id" = 2 AND "labels"."title" IN ('bug', 'discussion') AND "labels"."project_id" = 2 GROUP BY "issues"."id" HAVING COUNT(DISTINCT labels.title) = 2 [["target_type", "Issue"]] (0.5ms) SELECT COUNT(*) AS count_all, "issues"."id" AS issues_id FROM "issues" INNER JOIN "label_links" ON "label_links"."target_id" = "issues"."id" AND "label_links"."target_type" = $1 INNER JOIN "labels" ON "labels"."id" = "label_links"."label_id" WHERE "issues"."deleted_at" IS NULL AND "issues"."project_id" = 2 AND "labels"."title" IN ('bug', 'discussion') AND "labels"."project_id" = 2 GROUP BY "issues"."id" HAVING COUNT(DISTINCT labels.title) = 2 [["target_type", "Issue"]] ``` - We could cache the counters for a few minutes? The key could be `PROJECT_ID-ISSUABLE_TYPE-PARAMS`. A few possible arguments in favor of "it's an acceptable solution": - most of the time people filter with a single label => no performance problem here - when filtering with more than one label, usually the result set is reduced, limiting the performance issues ## What are the relevant issue numbers? Closes #15356 See merge request !6496
2016-09-30Merge branch 'koding-setting-api' into 'master' Robert Speicher
Expose the Koding application settings in the API ## Why was this MR needed? When saving the GitLab application secrets in Koding, and authorising your admin user to have access to the UI, we want to let Koding enable the integration, and populate the url in GitLab for the user. ## What are the relevant issue numbers? Fixes https://gitlab.com/gitlab-org/gitlab-ce/issues/22705 See merge request !6555
2016-09-30Refactor fields in viewKatarzyna Kobierska
2016-09-30Expose jobs to viewKatarzyna Kobierska
2016-09-30Build attributes with hash, fix gitlab yaml processor testsKatarzyna Kobierska
2016-09-30Improve tests grammarKatarzyna Kobierska
2016-09-30Add test for linter values visibilityKatarzyna Kobierska
2016-09-30Small improvements thanks to Robert's feedbackRémy Coutable
Signed-off-by: Rémy Coutable <remy@rymai.me>
2016-09-30Cache the issuable counters for 2 minutesRémy Coutable
Signed-off-by: Rémy Coutable <remy@rymai.me>
2016-09-30Take filters in account in issuable countersRémy Coutable
Signed-off-by: Rémy Coutable <remy@rymai.me>
2016-09-30Improve grammarKatarzyna Kobierska
2016-09-30Close merge request if open without source projectKatarzyna Kobierska
2016-09-30Merge branch '22452-milestone-title-unnecessary-escaping-fix' into 'master' Rémy Coutable
This MR fixes a bug that unnecessary escapes reserved HTML characters for Milestone's title. See #22452. ## Are there points in the code the reviewer needs to double check? - Unescaping of sanitized milestone title before it is being stored in the database. See `Milestone#title` and a private method called `Milestone#sanitize_title` - Sufficient tests were added (Model and API tests were modified/added). ## Why was this MR needed? To allow reserved HTML characters in a milestone's title, such as "PHP migration 5.6 -> 7.0". The text appears in 'milestones' and in a dropdown during issue creation, issue list, and in another dropdown for issue filter. Closes #22452 See merge request !6533
2016-09-30Merge branch 'mr_api_todo_close' into 'master' Rémy Coutable
Closes todos for a merge request when the MR is accepted via the API by the MR assignee. ## Are there points in the code the reviewer needs to double check? Please review refresh service test changes to see if they are correct - I think in those cases, the todos should actually be cleared instead of left pending. ## Why was this MR needed? To make the API behavior consistent with the UI behavior (accepting your own MRs closes the todo item and prevents them from piling up). Closes #22477 See merge request !6486
2016-09-30Merge branch 'rc-new-access-requests-finder' into 'master' Douwe Maan
New `AccessRequestsFinder` Part of #21979. ## Does this MR meet the acceptance criteria? - [x] API support added - Tests - [x] Added for this feature/bug - [x] All builds are passing - [ ] Conform by the [merge request performance guides](http://docs.gitlab.com/ce/development/merge_request_performance_guidelines.html) - [ ] 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 !6268
2016-09-30Allowing ">" to be used for Milestone models's title and storing the value ↵Makoto Scott-Hinkle
in db as unescaped. Updating test value for milestone title Adding API test for title with reserved HTML characters. Updating changelog Adding the MR number for fixing bug #22452. removing duplicate line Updating MR number.
2016-09-29Close todos when accepting a MR via the API.Tony Gambone
2016-09-29Merge branch 'fix/rugged-repo-error' into 'master' Rémy Coutable
Fix broken repo errors in the UI This should prevent repo errors (or 404s) in the UI, together with https://gitlab.com/gitlab-org/gitlab_git/merge_requests/124 The `exists?` cache is now expired if the repo gets broken. Related MR: https://gitlab.com/gitlab-org/gitlab_git/merge_requests/124 Fixes https://gitlab.com/gitlab-org/gitlab-ce/issues/20501 See merge request !6491
2016-09-29Expose the Koding application settings in the APIDJ Mountney
This will allow the Koding app to enable the integration itself once is has authorized an admin user using the application secrets.
2016-09-29Merge branch 'axil/gitlab-ce-typos_runners_pages' into 'master' Achilleas Pipinellis
Fix grammar and typos in Runners pages _Originally opened at !1791 by @axil._ - - - ## 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 - [ ] All builds are passing - [ ] Conform by the [merge request performance guides](http://docs.gitlab.com/ce/development/merge_request_performance_guidelines.html) - [ ] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides) - [ ] 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) See merge request !6547
2016-09-29fix broken repo 500 errors in UI and added relevant specsJames Lopez
2016-09-29Merge branch 'issue_22382' into 'master' Rémy Coutable
Expose project share expiration_date field on API closes #22382 See merge request !6484
2016-09-29Merge branch 'cs-upgrade-devise' into 'master' Robert Speicher
Upgrade Devise from 4.1.1 to 4.2.0. This fixes an issue with Rails 5 and brings us up-to-date with the latest Devise release. It also deprecates `Devise::TestHelpers` in favor of `Devise::Test::ControllerHelpers`. Changelog: https://github.com/plataformatec/devise/blob/v4.2.0/CHANGELOG.md#420---2016-07-01 Working toward #14286, as always. See merge request !6461
2016-09-29Merge branch '22367-add-pipeline-id-build' into 'master' Rémy Coutable
Expose pipeline data in builds API Exposes pipeline data in builds API, as suggested by #22367. The fields exposed were 'id', 'status', 'ref', and 'sha'. Closes #22367 See merge request !6502
2016-09-29expose pipeline data in builds APIGuilherme Salazar
add pipeline ref, sha, and status to the build API response add tests of build API (pipeline data) change API documentation for builds API log change to builds API in CHANGELOG CHANGELOG: add reference to pull request and contributor's name
2016-09-29Revert "Merge branch ↵Jacob Schatz
'18297-i-would-like-text-to-wrap-when-in-edit-mode-on-web-app' into 'master'" This reverts merge request !6188
2016-09-28Merge branch 'lfs-ssh-authorization-fix' into 'master' Douwe Maan
Do not regenerate the `lfs_token` every time `git-lfs-authenticate` is called ## What does this MR do? Do not regenerate the `lfs_token` every time `git-lfs-authenticate` is called, instead return the saved token if one is present. This was causing a lot of 401s, leading to 403s, as state in #22527 As it turns out, when pushing a lot of LFS objects, the LFS client was calling `git-lfs-authenticate` in the middle of the request again. This caused the `lfs_token` to be regenerated. The problem lies in that the LFS client was not aware of this change, and was still using the old token. This caused all subsequent requests to fail with a 401 error. Since HTTP Auth is protected by Rack Attack, this 401s where immediately flagged and resulted in the IP of the user being banned. With this change, GitLab returns the value stored in Redis, if one is present, thus if the LFS client calls `git-lfs-authenticate` again during the request, the auth header will remain unchanged, allowing all subsequent requests to continue without issues. ## What are the relevant issue numbers? Fixes #22527 cc @SeanPackham @jacobvosmaer-gitlab See merge request !6551
2016-09-28Handle LFS token creation and retrieval in the same method, and in the same ↵Patricio Cano
Redis connection. Reset expiry time of token, if token is retrieved again before it expires.
2016-09-28Merge branch ↵Douwe Maan
'22592-can-set-due-date-through-slash-commands-even-though-i-m-not-authorized-to' into 'master' Fix permission for setting an issue's due date ## What does this MR do? This merge request ensure the current user can `:admin_issue` in order to change the issue's `due_date`, in `BaseIssuableService` and in `SlashCommands::InterpretService`. Closes #22592 ## Are there points in the code the reviewer needs to double check? No. ## 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) - [ ] 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 !6539
2016-09-28Added soft wrap logic and button to editorLuke Bennett
Added tests Added awesomeeeeee icons
2016-09-28Fix permission for setting an issue's due dateRémy Coutable
Signed-off-by: Rémy Coutable <remy@rymai.me>
2016-09-28Expose project share expiration_date field on APIFelipe Artur
2016-09-28Fix grammar and typos in Runners pagesAchilleas Pipinellis
Signed-off-by: Rémy Coutable <remy@rymai.me>
2016-09-28Merge branch 'hvlad/gitlab-ce-feature/add_test_for_git_http_ldap_user' into ↵Rémy Coutable
'master' Added git http requests tests for user with LDAP identity ## What does this MR do? Added tests to git http request for a user with ldap identity. ## Are there points in the code the reviewer needs to double check? In order to stick to the way the existing tests are defined in spec files, I have added the new tests in the same spec file that coveres the git http request feature and thus it seems to be a lot of changes in the git_http_spec.rb when looking at the commit git in Gitlab, but the largest change is indentation so please check with a better diff tool (i.e. kdiff3). Let me know if this is OK with you or do you want to have a new file introduced (i.e. `git_http_ldap_spec.rb`) ## Why was this MR needed? To increase test coverage and to make sure the changes that will be introduced by #20820 will not introduce any regressions. ## What are the relevant issue numbers? #20820 See merge request !6559
2016-09-28New AccessRequestsFinderRémy Coutable
Signed-off-by: Rémy Coutable <remy@rymai.me>
2016-09-28Added git http requests tests for user with LDAP identityHoratiu Eugen Vlad
Signed-off-by: Rémy Coutable <remy@rymai.me>
2016-09-28Log LDAP lookup errors and don't swallow unrelated exceptionsMarkus Koller
Signed-off-by: Roger Meier <r.meier@siemens.com>
2016-09-28Fix test failure by accessing Content-Type header directly.Connor Shea
2016-09-28Upgrade Devise from 4.1.1 to 4.2.0.Connor Shea
This fixes an issue with Rails 5 and brings us up-to-date with the latest Devise release. This also replaces the deprecated Devise::TestHelpers with Devise::Test::ControllerHelpers. Changelog: https://github.com/plataformatec/devise/blob/v4.2.0/CHANGELOG.md#420---2016-07-01
2016-09-28Merge branch 'label-update-check-new' into 'master' Jacob Schatz
Send ajax request for label update only if they are changed ## What does this MR do? At the moment we send requests to update the labels on issue even if nothing has been changed. This fixes that and only sends requests when something has actually been changed. The code gets the initial selected values based on the inputs & then compares that to the selected values when submitting. If they are equal, then no request is sent. ## What are the relevant issue numbers? Closes #19472 See merge request !5071
2016-09-27Import all GitHub comments after importing issues and PRsAhmad Sherif
2016-09-27Speed up label-applying process for GitHub importingAhmad Sherif
* No need to re-fetch issues from GH to read their labels, the labels are already there from the index request. * No need to look up labels on the database for every application, so we cache them.
2016-09-27Process each page of GitHub resources instead of concating them then processingAhmad Sherif
This should avoid having large memory growth when importing GitHub repos with lots of resources.
2016-09-27Do not regenerate the `lfs_token` every time `git-lfs-authenticate` is ↵Patricio Cano
called, instead return the saved token if one is present.
2016-09-27Merge branch 'add-calendar-tests' into 'master' Jacob Schatz
Add more tests for calendar contribution ## What does this MR do? Add more tests for calendar contribution ## Are there points in the code the reviewer needs to double check? Shouldn't be ## Why was this MR needed? Improve test coverage for calendar ## Screenshots (if relevant) None ## Does this MR meet the acceptance criteria? - [ ] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added - Tests - [ ] 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) - [ ] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides) - [ ] 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 #22347 See merge request !6421
2016-09-27Send ajax request for label update only if they are changed (#19472 !5071)Phil Hughes