- 02 Oct, 2016 3 commits
-
-
Robert Speicher authored
Merge branch '21983-member-add_user-doesn-t-detect-existing-members-that-have-requested-access' into 'master' Resolve "`Member.add_user`doesn't detect existing members that have requested access" ## What does this MR do? This merge request handle the case when an access requester is added to a group or project (via the members page or the API). In `Member.add_user`, if an access requester already exists, we simply accept their request (and set the `created_by`, `access_level` and `expires_at` attributes if given). ## Are there points in the code the reviewer needs to double check? I've taken the opportunity to cleanup the whole `{Group,Project}Member.add_user*` methods since it was quite a mess. ## What are the relevant issue numbers? Closes #21983 See merge request !6393
-
Robert Speicher authored
New `Members::RequestAccessService` Part of #21979. See merge request !6265
-
Robert Speicher authored
Preserve label filters when sorting ## What does this MR do? Allows Issues that are already filtered by labels to be sorted without losing the label filters. ## Why was this MR needed? Users don't expect to lose their label filters when sorting Issues. ## What are the relevant issue numbers? Closes #20982 See merge request !6136
-
- 01 Oct, 2016 7 commits
-
-
Annabel Dunstone Gray authored
Center the header logo _Originally opened at !6507 by @AshleyDumaine._ - - - ## What does this MR do? * Centers the header logo using `relative` positioning on the svg or img in the header-logo ## Are there points in the code the reviewer needs to double check? ## Why was this MR needed? The custom wide header logos aren't centered after logging in as seen in #22494 ## Screenshots (if relevant) | Before | After | | --------- | ------ | | ![Screen_Shot_2016-09-24_at_3.35.26_PM](/uploads/576db77e0eb299b06d2a5abf341f058f/Screen_Shot_2016-09-24_at_3.35.26_PM.png) | ![Screen_Shot_2016-09-24_at_3.35.51_PM](/uploads/47237b6c28d438a6f255dffb8b3d39d4/Screen_Shot_2016-09-24_at_3.35.51_PM.png) | Signout (for centering comparison): ![Screen_Shot_2016-09-24_at_3.35.59_PM](/uploads/4484313ff5841774769c4737584af7fc/Screen_Shot_2016-09-24_at_3.35.59_PM.png) ## Does this MR meet the acceptance criteria? - [x] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added - Tests - [x] 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) - [x] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits) ## What are the relevant issue numbers? Closes #22494 See merge request !6610
-
Jacob Schatz authored
Changed zero padded days to no padded days in date_format ## What does this MR do? Changed zero padded days to no padded days in date_format so that calendar spec tests will pass. Specs were failing because it was looking for `Saturday Oct 01, 2016` when it should have been looking for `Saturday Oct 1, 2016` ## Are there points in the code the reviewer needs to double check? None ## Why was this MR needed? Fixes failing test ## Screenshots (if relevant) None ## Does this MR meet the acceptance criteria? - Tests - [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 #22861 See merge request !6634
-
Clement Ho authored
-
Fatih Acet authored
Changed compare dropdowns to dropdowns with search input ## What does this MR do? This changes the compare dropdowns from text inputs, that when clicked, open a dropdown of branches/tags to dropdowns that have a dropdown toggle and an isolated search input. ## Are there points in the code the reviewer needs to double check? ## Why was this MR needed? This was needed to fix the poor UX highlighted in #22221, where opening the dropdown showed an initially filtered set of results because the dropdown toggle was the dropdown filter itself. The compare page is always loaded with `master` as each branch/tag selection, so when opening the dropdown, it would only show results matching `master`. ## Screenshots (if relevant) ![2016-09-27_18.28.10](/uploads/0ea1d91cb592c6e140ed62c336e77227/2016-09-27_18.28.10.gif) ## 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) ## What are the relevant issue numbers? Closes #22221 See merge request !6550
-
Fatih Acet authored
MR banner & flash notices updates ### What does this MR do? * Moves the create MR banner below subnav * Changes MR banner background to white * Moves flash notices underneath subnav * Adds container within flash notices to align with content Closes #22767 ### Why was this MR needed? It looked a bit out of place between the two navs & had unneeded spacing. ### Screenshots (if relevant) Before: <img src="/uploads/c1676a1923893a7ba7e1c6d6a50d4ea6/Screen_Shot_2016-09-09_at_7.17.31_PM.png" width="800px"> After: <img src="/uploads/74a2d6c8c43b9a15cd535a2a7adb2685/Screen_Shot_2016-09-28_at_3.41.29_PM.png" width="800px"> Before: <img src="/uploads/285e3de31326c48de43bb48abd4d907c/Screen_Shot_2016-09-29_at_10.57.55_AM.png" width="800px"> After: <img src="/uploads/0877e3e45755e5ca36694c52ad2e6198/Screen_Shot_2016-09-29_at_10.56.04_AM.png" width="800px"> With both alert and broadcast message: ![Screen_Shot_2016-09-29_at_11.06.51_AM](/uploads/ba3963a73b5c82940533c369ec54ec50/Screen_Shot_2016-09-29_at_11.06.51_AM.png) See merge request !6581
-
Jacob Schatz authored
Add Frontend Development Guidelines to the Developer Documentation ## What does this MR do? WIP incomplete draft of some Frontend Development Guidelines for contributors to the project, new hires, and for other projects and persons to look to for guidance. These are all subject to removal, modification, etc. If you disagree with any of these, please feel free to voice your concerns :) ## Why was this MR needed? There are a number of guidelines we currently follow implicitly, this makes them more official and available for reference/discussion. It also exists as a reference for certain patterns we use which may be unfamiliar to new contributors, e.g. the per-page JS. Feel free to give feedback on wording, missing sections/guidelines, whether a guideline should even exist, etc. See merge request !5477
-
Jacob Schatz authored
Updated diff toggle targets and added icon ## What does this MR do? Adds the new diff toggle icon and alters the toggle targets. User can now click on the file header bar _(where no other elements are above it, apart from the icon)_ and the `Click to expand` link to expand the diff and no where else. ## Are there points in the code the reviewer needs to double check? ## Why was this MR needed? ## Screenshots (if relevant) ![Screen_Shot_2016-09-02_at_15.35.15](/uploads/c1cb8c0547328153250294d6c95dd96a/Screen_Shot_2016-09-02_at_15.35.15.png) #### Gif ![2016-09-02_15.34.31](/uploads/abaefaeba9ce8ef129522dae34574c57/2016-09-02_15.34.31.gif) ## 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) ## What are the relevant issue numbers? Closes #21369 Closes #20326 See merge request !6183
-
- 30 Sep, 2016 30 commits
-
-
Fatih Acet authored
Added soft wrap option to editor (attempt 2 after killing master) Previously !6188. ## What does this MR do? Adds a `Soft wrap` button to the editor, when clicked, it wraps the text in the editor and changes to `No wrap`, then when clicked, it unwraps the text in the editor. ## Are there points in the code the reviewer needs to double check? Let's make sure we dont blow up `master` this time.
😨 😆 ## Why was this MR needed? ## Screenshots (if relevant) https://youtu.be/8LW5nQsraSM #### No wrap ![Screen_Shot_2016-09-02_at_19.54.54](/uploads/97f2d1b2d415d03fe1b0be0640ab12e0/Screen_Shot_2016-09-02_at_19.54.54.png) #### Soft wrap ![Screen_Shot_2016-09-02_at_19.54.45](/uploads/5af425587ce7198e015cce58440971b9/Screen_Shot_2016-09-02_at_19.54.45.png) ## 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) ## What are the relevant issue numbers? Closes #18297 See merge request !6594 -
Annabel Dunstone Gray authored
-
Annabel Dunstone Gray authored
-
Annabel Dunstone Gray authored
-
Annabel Dunstone Gray authored
-
Joseph Frazier authored
Closes #20982 https://gitlab.com/gitlab-org/gitlab-ce/issues/20982
-
Luke Bennett authored
Updated tests
-
Luke Bennett authored
Added tests Added awesomeeeeee icons
-
Luke Bennett authored
-
Annabel Dunstone Gray authored
-
Ashley Dumaine authored
Signed-off-by: Rémy Coutable <remy@rymai.me>
-
Jacob Schatz authored
Fix lint-doc error ## What does this MR do? Removes duplicate changelog versions to fix lint-doc error (https://gitlab.com/gitlab-org/gitlab-ce/builds/4621603) See merge request !6623
-
Annabel Dunstone Gray authored
-
Rémy Coutable authored
Add missing values to linter (`only`, `except`) and add new one `Environment` Closes #21744 See merge request !6276
-
Rémy Coutable authored
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
-
Rémy Coutable authored
Update "Installation from source" guide for 8.13.0 Following the steps from https://gitlab.com/gitlab-org/release-tools/blob/master/doc/release-candidates.md#creating-rc1. See merge request !6565
-
Dmitriy Zaporozhets authored
Added "View wiki pages" to list of actions granted to various user permission levels in a project. This MR clarifies the actions allowed by various user permission levels in a project to include "View wiki pages" See merge request !5749
-
Rémy Coutable authored
Signed-off-by: Rémy Coutable <remy@rymai.me>
-
Rémy Coutable authored
Signed-off-by: Rémy Coutable <remy@rymai.me>
-
Dmitriy Zaporozhets authored
-
Dmitriy Zaporozhets authored
Fixed Session Cookie header ## What does this MR do? This MR fixes the wiki text header for the Session Cookie section ## Are there points in the code the reviewer needs to double check? It is markdown so probably not. Two very simple changes - first is replacing a dot with a space (was causing invalid markdown, not rendered as a header) and capitalized the word Cookie to match the other header formatting. ## Why was this MR needed? Fix the wiki documentation. ## Screenshots (if relevant) None. ## Does this MR meet the acceptance criteria? I can't imagine it wouldn't. - [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 [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? I didn't think this warranted an issue as it is just some simple wiki markdown formatting with little to no consequence. See merge request !6584
-
Dmitriy Zaporozhets authored
Smaller formatting fix See the contents, it's just a smaller fix in formatting. No detailed description needed - just keeping the docs clean See merge request !6614
-
Annabel Dunstone Gray authored
Fix build sidebar build details padding ## What does this MR do? Removes a `.block-first` overriding declaration that was added to fix the coverage padding and moved the padding that fixes the coverage block to a `.block.coverage` declaration. ## Are there points in the code the reviewer needs to double check? ## Why was this MR needed? The build sidebar build details had too much padding as seen in #22529. ## Screenshots (if relevant) ![Screen_Shot_2016-09-24_at_19.38.40](/uploads/2c11a71f3022909fe8a5d1e983445667/Screen_Shot_2016-09-24_at_19.38.40.png) ![Screen_Shot_2016-09-24_at_19.39.06](/uploads/482af29f4bb7e284469466da59901087/Screen_Shot_2016-09-24_at_19.39.06.png) ## 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) ## What are the relevant issue numbers? Closes #22529 See merge request !6506
-
Achilleas Pipinellis authored
Fix a confusion in OAuth2 documentation ## What does this MR do? fixes confusion :) ## Why was this MR needed? Because no body wants to be confused :) See merge request !6563
-
Achilleas Pipinellis authored
# Conflicts: # doc/api/oauth2.md
-
Yorick Peterse authored
Initialize Redis pool in single-threaded context See merge request !6613
-
Rémy Coutable authored
Update templates for 8.13 See merge request !6612
-
Rémy Coutable authored
Remove the "soon to be deprecated" `alias_method_chain` in favor of `Module#prepend`. ## Are there points in the code the reviewer needs to double check? Double check whether the behavior of `attr_encrypted_no_db_connection` is still the desired one. ## Why was this MR needed? The `alias_method_chain` becomes deprecated in Rails 5 in favor of the `Module#prepend` introduced in Ruby 2.0. This MR prevents future deprecated warnings in light of a possible Rails version bump. Closes #22302 See merge request !6570
-
Nils Brinkmann authored
-
Robert Speicher authored
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
-