summaryrefslogtreecommitdiff
path: root/spec
Commit message (Collapse)AuthorAgeFilesLines
* fix blob controller spec failure - updated not to use file-path-fix/blob-controller-specJames Lopez2016-11-291-1/+1
|
* Merge branch 'hide-project-variables' into 'master' Fatih Acet2016-11-291-0/+25
|\ | | | | | | | | | | | | | | | | | | | | Hide project variables values by default Add a button to reveal/hide the values to help prevent accidental disclosure of sensitive information from wandering on a page. ![hide-vars](/uploads/5b5eeef9b4650776b529b780998bbb1b/hide-vars.gif) Closes #21358 See merge request !7731
| * Add spec for hiding variables and remove the need for ES6 SymbolStan Hu2016-11-241-0/+25
| |
* | Merge branch 'hoopes/gitlab-ce-21027-add-diff-hunks-to-notification-emails' ↵Douwe Maan2016-11-292-3/+95
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into 'master' Add diff hunks to notification emails Add diff hunks to notification emails. Continued from https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/5855 - thanks @hoopes! This also fixes an issue where the + / - prefixes were missing from diffs in emails. Screenshots (from my browser) of the HTML emails, along with text screenshots :stuck_out_tongue: ![image](/uploads/cb31400becf5149d40c8bb98a655aa93/image.png) ``` New comment for Merge Request !1 on app/views/admin/builds/index.html.haml: http://localhost:3000/gitlab-org/gitlab-ce/merge_requests/1#note_1023 > Finished This is a comment at the top of a match section. ``` ![image](/uploads/704dd3845797530697a27f5c1953c053/image.png) ``` New comment for Merge Request !1 on app/views/admin/builds/index.html.haml: http://localhost:3000/gitlab-org/gitlab-ce/merge_requests/1#note_1022 > Finished > %span.badge.js-running-count= @all_builds.finished.count(:id) > > - %li{class: ('active' if @scope == 'all')} > - = link_to admin_builds_path(scope: :all) do > - All > - %span.badge.js-totalbuilds-count= @all_builds.count(:id) > - > .gray-content-block > #{(@scope || 'running').capitalize} builds > This is a comment at the bottom of a match section. ``` ![image](/uploads/4063f3d9738aea8ebf3c0e690d0eddee/image.png) ``` New comment for Merge Request !1 on app/views/admin/builds/index.html.haml: http://localhost:3000/gitlab-org/gitlab-ce/merge_requests/1#note_1024 > = link_to 'Cancel all', cancel_all_admin_builds_path, data: { confirm: 'Are you sure?' }, class: 'btn btn-danger', method: :post > > %ul.center-top-menu > - %li{class: ('active' if @scope.nil?)} > + %li{class: ('active' if @scope == 'all')} > = link_to admin_builds_path do > + All This is a comment with some deleted and added lines above it. ``` Closes #21027, closes #24340. See merge request !7660
| * | Fix spec styleSean McGivern2016-11-282-10/+5
| | |
| * | Tidy up text emailsSean McGivern2016-11-281-4/+4
| | |
| * | Clean up rubocop complainthhoopes2016-11-251-1/+1
| | |
| * | Add keyword arguments to truncated_diff methodhhoopes2016-11-252-9/+3
| | | | | | | | | | | | | | | * Added keyword arguments to truncated_diff_lines method to allow for using highlighting or not (html templates vs. text) * Tweaked templates for consistency and format appropriateness
| * | Change diff highlight/truncate for reusabilityhhoopes2016-11-252-1/+104
| | | | | | | | | | | | | | | | | | Previously the `truncated_diff_lines` method for outputting a discussion diff took in already highlighted lines, which meant it wasn't reuseable for truncating ANY lines. In the way it was used, it also meant that for any email truncation, the whole diff was being highlighted before being truncated, meaning wasted time highlighting lines that wouldn't even be used (granted, they were being memoized, so perhaps this wasn't that great of an issue). I refactored truncation away from highlighting, in order to truncate formatted diffs for text templates in email, using `>`s to designate each line, but otherwise retaining the parsing already done to create `diff_lines`. Additionally, while notes on merge requests or commits had already been tested, there was no existing test for notes on a diff on an MR or commit. Added mailer tests for such, and a unit test for truncating diff lines.
| * | Add new template to handle both commit & mr noteshhoopes2016-11-251-17/+2
| | | | | | | | | | | | | | | | | | | | | | | | Currently comments on commits and merge requests do not require merge request- or commit-specific information, but can use the same template. Rather than change the method which calls the template, I opted to keep the templates separate and create a new template to highlight their identicality, while preserving the option to distinguish them from each other in the future. Also removed some of the inconsistencies between text and html email versions. Still needed is a text-only version of git diffs and testing.
| * | Add diff hunks to notification emails on MRhhoopes2016-11-251-2/+17
| | | | | | | | | | | | | | | | | | Added diff hunks to notification emails of messages on merge requests. This provides code context to the note. Uses existing template for formatting a diff for email (from repository push notifications).
* | | Merge branch 'jej-use-issuable-finder-instead-of-access-check' into 'security' Douwe Maan2016-11-285-22/+84
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Replace issue access checks with use of IssuableFinder Split from !2024 to partially solve https://gitlab.com/gitlab-org/gitlab-ce/issues/23867 ## Which fixes are in this MR? :warning: - Potentially untested :bomb: - No test coverage :traffic_light: - Test coverage of some sort exists (a test failed when error raised) :vertical_traffic_light: - Test coverage of return value (a test failed when nil used) :white_check_mark: - Permissions check tested ### Issue lookup with access check Using `visible_to_user` likely makes these security issues too. See [Code smells](#code-smells). - [x] :vertical_traffic_light: app/finders/notes_finder.rb:15 [`visible_to_user`] - [x] :traffic_light: app/views/layouts/nav/_project.html.haml:73 [`visible_to_user`] [`.count`] - [x] :white_check_mark: app/services/merge_requests/build_service.rb:84 [`issue.try(:confidential?)`] - [x] :white_check_mark: lib/api/issues.rb:112 [`visible_to_user`] - CHANGELOG: Prevented API returning issues set to 'Only team members' to everyone - [x] :white_check_mark: lib/api/helpers.rb:126 [`can?(current_user, :read_issue, issue)`] Maybe here too? - [x] :white_check_mark: lib/gitlab/search_results.rb:53 [`visible_to_user`] ### Previous discussions - [ ] https://dev.gitlab.org/gitlab/gitlabhq/merge_requests/2024/diffs#b2ff264eddf9819d7693c14ae213d941494fe2b3_128_126 - [ ] https://dev.gitlab.org/gitlab/gitlabhq/merge_requests/2024/diffs#7b6375270d22f880bdcb085e47b519b426a5c6c7_87_87 See merge request !2031
* | | Merge branch 'jej-fix-missing-access-check-on-issues' into 'security'Douwe Maan2016-11-2810-10/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix missing access checks on issue lookup using IssuableFinder Split from !2024 to partially solve https://gitlab.com/gitlab-org/gitlab-ce/issues/23867 :warning: - Potentially untested :bomb: - No test coverage :traffic_light: - Test coverage of some sort exists (a test failed when error raised) :vertical_traffic_light: - Test coverage of return value (a test failed when nil used) :white_check_mark: - Permissions check tested - [x] :white_check_mark: app/controllers/projects/branches_controller.rb:39 - `before_action :authorize_push_code!` helpes limit/prevent exploitation. Always checks for reporter access so fine with confidential issues, issues only visible to team, etc. - [x] :traffic_light: app/models/cycle_analytics/summary.rb:9 [`.count`] - [x] :white_check_mark: app/controllers/projects/todos_controller.rb:19 - [x] Potential double render in app/controllers/projects/todos_controller.rb - https://dev.gitlab.org/gitlab/gitlabhq/merge_requests/2024/diffs#cedccb227af9bfdf88802767cb58d43c2b977439_24_24 See merge request !2030
* | | Merge branch 'jej-22869' into 'security'Douwe Maan2016-11-282-0/+94
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix information disclosure in `Projects::BlobController#update` It was possible to discover private project names by modifying `from_merge_request`parameter in `Projects::BlobController#update`. This fixes that. - [ ] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG.md) 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] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits) https://gitlab.com/gitlab-org/gitlab-ce/issues/22869 See merge request !2023
* | | Merge branch 'zj-fix-label-creation-non-members' into 'security'Douwe Maan2016-11-283-17/+26
| | | | | | | | | | | | | | | | | | | | | | | | Fix label creation non members Fixes https://gitlab.com/gitlab-org/gitlab-ce/issues/23416 See merge request !2006
* | | Merge branch '25026-authenticate-user-for-new-snippet' into 'master' Sean McGivern2016-11-282-0/+42
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Ensure user is authenticated to create a new snippet Closes #25026 See merge request !7786
| * | | Ensure user is authenticated to create a new snippet25026-authenticate-user-for-new-snippetRémy Coutable2016-11-282-0/+42
| | | | | | | | | | | | | | | | Signed-off-by: Rémy Coutable <remy@rymai.me>
* | | | Merge branch 'zen-mode-fixture' into 'master' Alfredo Sumaran2016-11-282-12/+5
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Replace static fixture for zen_mode_spec ## What does this MR do? Replace `zen_mode.html.haml` for `zen_mode_spec.js` by already existing dynamically generated fixture. ## What are the relevant issue numbers? #24753 See merge request !7686
| * | | | Replace static fixture for zen_mode_spec (!7686)winniehell2016-11-232-12/+5
| | | | |
* | | | | Merge branch 'add-find-poly' into 'master' Alfredo Sumaran2016-11-282-23/+46
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add `.find` poly ## What does this MR do? Adds `[].find()` poly ## Are there points in the code the reviewer needs to double check? ## Why was this MR needed? ## Screenshots (if relevant) ## Does this MR meet the acceptance criteria? - [ ] [Changelog entry](https://docs.gitlab.com/ce/development/changelog.html) 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) - [x] [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 !7710
| * | | | | Add `.find` polyadd-find-polyLuke "Jared" Bennett2016-11-252-23/+46
| | | | | |
* | | | | | Merge branch 'dynamic-build-fixture' into 'master' Alfredo Sumaran2016-11-287-208/+183
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Create dynamic fixture for build_spec ## What does this MR do? Replace `spec/javascripts/fixtures/build.html.haml` by a dynamically created fixture (using `rake teaspoon:fixtures`). ## Why was this MR needed? The existing fixture was not representing the real page. ## What are the relevant issue numbers? #24614 would have been avoided following !6059 See merge request !7589
| * | | | | | Prefer arrow functions in build_spec.js.es6winniehell2016-11-251-14/+14
| | | | | | |
| * | | | | | Strip <link> tags from fixtures to ignore CSSwinniehell2016-11-251-0/+3
| | | | | | |
| * | | | | | Explicitly name namespace and projects for frontend fixtureswinniehell2016-11-254-4/+6
| | | | | | |
| * | | | | | Use Rails test host name for frontend fixtureswinniehell2016-11-254-14/+17
| | | | | | |
| * | | | | | Remove unnecessary IIFE from build_specwinniehell2016-11-251-143/+141
| | | | | | |
| * | | | | | Adjust build_spec to match fixturewinniehell2016-11-251-9/+16
| | | | | | |
| * | | | | | Create dynamic fixture for build_spec (!7589)winniehell2016-11-253-72/+34
| | | | | | |
* | | | | | | Merge branch ↵Sean McGivern2016-11-281-18/+22
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | '24813-project-members-with-developer-access-can-no-longer-create-tags' into 'master' Create tag after running pre-hooks and pass updated SHA to post-hooks Closes #24813 See merge request !7700
| * | | | | | | Pass tag SHA to post-receive hook when tag is created via UI24813-project-members-with-developer-access-can-no-longer-create-tagsAdam Niedzielski2016-11-281-0/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We only know the tag SHA after we create the tag. This means that we pass a different value to the hooks that happen before creating the tag, and a different value to the hooks that happen after creating the tag. This is not an ideal situation, but it is a trade-off we decided to make. For discussion of the alternatives please refer to https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/7700#note_18982873 "pre-receive" and "update" hooks always get the SHA of the commit that the tag points to. "post-receive" gets the tag SHA if it is an annotated tag or the commit SHA if it is an lightweight tag. Currently we always create annotated tags if UI is used.
| * | | | | | | Revert "Pass correct tag target to post-receive hook when creating tag via UI"Adam Niedzielski2016-11-281-22/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit ae51774bc45d2e15ccc61b01a30d1b588f179f85.
* | | | | | | | Merge branch ↵Sean McGivern2016-11-281-0/+31
|\ \ \ \ \ \ \ \ | |_|_|_|_|/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | '24860-actionview-template-error-undefined-method-size-for-nil-nilclass' into 'master' Prevent error when submitting a merge request and pipeline is not defined Closes #24860 See merge request !7707
| * | | | | | | Prevent error when submitting a merge request and pipeline is not defined24860-actionview-template-error-undefined-method-size-for-nil-nilclassAdam Niedzielski2016-11-281-0/+31
| |/ / / / / /
* | | | | | | Merge branch 'issuable_filters_present-refactor' into 'master' Robert Speicher2016-11-281-0/+21
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Refactor issuable_filters_present to reduce duplications See https://gitlab.com/gitlab-org/gitlab-ce/issues/23546 See merge request !7776
| * | | | | | | Refactor issuable_filters_present to reduce duplicationsSemyon Pupkov2016-11-281-0/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://gitlab.com/gitlab-org/gitlab-ce/issues/23546
* | | | | | | | Merge branch 'rs-phantomjs-disable-images' into 'master' Rémy Coutable2016-11-281-1/+9
|\ \ \ \ \ \ \ \ | |_|/ / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Pass `--load-images=no` to PhantomJS via Capybara/Poltergeist We were unintentionally hitting `gravatar.com` whenever a test that used Poltergeist was run. This was certainly wasting their resources and slowing down our tests even further, for no reason. Part of https://gitlab.com/gitlab-org/gitlab-ce/issues/24899 See merge request !7781
| * | | | | | | Pass `--load-images=no` to PhantomJS via Capybara/Poltergeistrs-phantomjs-disable-imagesRobert Speicher2016-11-281-1/+9
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We were unintentionally hitting `gravatar.com` whenever a test that used Poltergeist was run. This was certainly wasting their resources and slowing down our tests even further, for no reason.
* | | | | | | Merge branch 'rs-project-security-spec-speed' into 'master' Rémy Coutable2016-11-284-765/+747
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Speed up Project security access specs Prior, every single test was creating four `ProjectMember` objects, each of which created one `User` record, even though each test only used _one_ of those Users, if any. Now each test only creates the single user record it needs, if it needs one. This shaves minutes off of each spec file changed here. Part of https://gitlab.com/gitlab-org/gitlab-ce/issues/24899 See merge request !7779
| * | | | | | | Speed up Project security access specsRobert Speicher2016-11-284-765/+747
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Prior, every single test was creating four `ProjectMember` objects, each of which created one `User` record, even though each test only used _one_ of those Users, if any. Now each test only creates the single user record it needs, if it needs one. This shaves minutes off of each spec file changed here.
* | | | | | | Merge branch 'fix-dead-help-link' into 'master' Rémy Coutable2016-11-282-11/+27
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix a broken link and avoid potential creation of future broken links on the help page. See merge request !7582
| * | | | | | | Check that both '/help' and '/help/' URLs have the same behaviourDavid Wagner2016-11-251-0/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The links in the help page may be modified. This new test checks that URLs in this page are absolute and do not depend on the presence of a trailing slash in the URL. Signed-off-by: David Wagner <david@marvid.fr>
| * | | | | | | Fix broken external links in help/index.htmlDavid Wagner2016-11-201-11/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | An external link was recently added but was broken because 'https://gitlab.com/help/' was prepended to every link in the page. Since no link in the main help readme begins with "help" and since doing so wouldn't make sense, the substitution conditionaly prepending "help" can be simplified and reused. Signed-off-by: David Wagner <david@marvid.fr>
* | | | | | | | Merge branch 'refresh-authorizations-with-lease' into 'master' Douwe Maan2016-11-282-6/+44
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Refresh project authorizations using a Redis lease This MR changes `User#refresh_authorized_projects` so it uses a Redis lease instead of relying on serializable transactions. See the commit message(s) for more details. See merge request !7733
| * | | | | | | | Refresh project authorizations using a Redis leaserefresh-authorizations-with-leaseYorick Peterse2016-11-252-6/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When I proposed using serializable transactions I was hoping we would be able to refresh data of individual users concurrently. Unfortunately upon closer inspection it was revealed this was not the case. This could result in a lot of queries failing due to serialization errors, overloading the database in the process (given enough workers trying to update the target table). To work around this we're now using a Redis lease that is cancelled upon completion. This ensures we can update the data of different users concurrently without overloading the database. The code will try to obtain the lease until it succeeds, waiting at least 1 second between retries. This is necessary as we may otherwise end up _not_ updating the data which is not an option.
* | | | | | | | | Merge branch 'events-cache-invalidation' into 'master' Douwe Maan2016-11-282-4/+18
|\ \ \ \ \ \ \ \ \ | |_|_|/ / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove caching of events data This MR removes the caching of events data as this was deemed unnecessary while increasing load on the database. See https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/6578#note_18864037 and 5371da341e9d7768ebab8e159b3e2cc8fad1d827 for more information. See merge request !6578
| * | | | | | | | Removed data-user-is view codeevents-cache-invalidationYorick Peterse2016-11-252-4/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With events no longer being cached this is no longer needed.
* | | | | | | | | Merge branch 'zj-expose-coverage-pipelines' into 'master' Rémy Coutable2016-11-251-0/+12
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Expose coverage on GET pipelines/:id Closes gitlab-org/gitlab-ce#24801 See merge request !7670
| * | | | | | | | | Expose coverage on GET pipelines/:idzj-expose-coverage-pipelinesZ.J. van de Weg2016-11-251-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The coverage wasn't exposed yet, now it is but only for detailed requests to save queries on the database.
* | | | | | | | | | Merge branch 'timeout-merge-request-for-binary-file' into 'master' Yorick Peterse2016-11-252-0/+14
|\ \ \ \ \ \ \ \ \ \ | |_|_|_|_|_|/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix: Timeout creating and viewing merge request for binary file See merge request !7713