summaryrefslogtreecommitdiff
path: root/CHANGELOG
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'fix/import-pending-user' into 'master' Rémy Coutable2016-08-081-0/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Support pending invitation project members importing projects Adds support for pending invitation project members on Import/Export - previously the import would fail. Fixes https://gitlab.com/gitlab-org/gitlab-ce/issues/19973 - [x] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry 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 !5683
| * Support pending invitation project members importing projectsJames Lopez2016-08-081-0/+1
| |
* | Merge branch 'faster-cache-keys' into 'master' Rémy Coutable2016-08-081-0/+1
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Optimize "cache_key" using a concern ## What does this MR do? This MR adds a concern (used by Issue and Note) that provides an optimized version of Rails' `cache_key` method. See 77c8520e2ecd70520757aed0fbdf434643b60234 for more details. ## Are there points in the code the reviewer needs to double check? No, though a spell check would be appreciated. ## Why was this MR needed? When loading a lot of data from Redis (e.g. an issue with lots of notes) quite a large amount of time is spent in generating cache keys. This is due to multiple reasons such as: * Rails trying to figure out if it should use `updated_at` or `updated_on` using somewhat inefficient code * Rails relying on pluralization logic to figure out how to generate a cache namespace using a model name * Rails calling a whole bunch of methods in general in the process of generating cache keys In short, Rails is trying to cater to every possible use case, at the cost of performance. ## What are the relevant issue numbers? https://gitlab.com/gitlab-org/gitlab-ce/issues/13651 is not directly related but I ran into this `cache_key` problem when looking into said issue. See merge request !5715
| * | Added concern for a faster "cache_key" methodfaster-cache-keysYorick Peterse2016-08-081-0/+1
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This concern provides an optimized/simplified version of the "cache_key" method. This method is about 9 times faster than the default "cache_key" method. The produced cache keys _are_ different from the previous ones but this is worth the performance improvement. To showcase this I set up a benchmark (using benchmark-ips) that compares FasterCacheKeys#cache_key with the regular cache_key. The output of this benchmark was: Calculating ------------------------------------- cache_key 4.825k i/100ms cache_key_fast 21.723k i/100ms ------------------------------------------------- cache_key 59.422k (± 7.2%) i/s - 299.150k cache_key_fast 543.243k (± 9.2%) i/s - 2.694M Comparison: cache_key_fast: 543243.4 i/s cache_key: 59422.0 i/s - 9.14x slower To see the impact on real code I applied these changes and benchmarked Issue#referenced_merge_requests. For an issue referencing 10 merge requests these changes shaved off between 40 and 60 milliseconds.
* | Merge branch 'master' of gitlab.com:gitlab-org/gitlab-ceDmitriy Zaporozhets2016-08-081-0/+9
|\ \
| * \ Merge branch '18256-secret-token-docs' into 'master' Rémy Coutable2016-08-081-0/+1
| |\ \ | | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Document that webhook secret token is sent in X-Gitlab-Token HTTP header ## What does this MR do? Note that the secret token is sent in the X-Gitlab-Token header on the webhook documentation page, as well as directly below the secret token field on the webhook settings form. ## Are there points in the code the reviewer needs to double check? No. ## Why was this MR needed? It took me a while to figure out how to verify the token in my hook endpoint. Issue #18256 is where I found how to do it. ## What are the relevant issue numbers? #18256 ## Screenshots (if relevant) ## 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) - [ ] API support added - Tests - [ ] 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) Closes #18256 See merge request !5664
| | * Move CHANGELOG entry to middle of current releaseSteve Halasz2016-08-051-1/+1
| | | | | | | | | | | | Hope to avoid CHANGELOG conflicts. Credit myself for the MR.
| | * Merge branch 'master' into 18256-secret-token-docsSteve Halasz2016-08-051-0/+22
| | |\
| | * | Document that webhook secret token is sent in X-Gitlab-Token HTTP headerSteve Halasz2016-08-031-0/+1
| | | |
| * | | Added changelog item for issuable form dropdownsPhil Hughes2016-08-051-0/+3
| | |/ | |/|
| * | Merge branch '19752-pipelines-finished-at' into 'master' Jacob Schatz2016-08-051-0/+1
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update timeago to shorter representation ## What does this MR do? Shortens representation of `Finished at` block in pipelines & builds ## What are the relevant issue numbers? Closes #19752 Part of https://gitlab.com/gitlab-org/gitlab-ce/issues/18920 ## Screenshots (if relevant) ![Screen_Shot_2016-07-14_at_8.54.44_AM](/uploads/85000549c49165d4481422eac5eb0ca9/Screen_Shot_2016-07-14_at_8.54.44_AM.png) See merge request !5225
| | * | Update timeago to shorter representation19752-pipelines-finished-atAnnabel Dunstone2016-08-041-0/+1
| | | |
| * | | Bump gitlab_git to lazy load compare commits14202-compare-lazy-load-commitsPaco Guzman2016-08-051-0/+1
| | | |
| * | | Merge branch 'leading-slashes-relative-links' into 'master' Rémy Coutable2016-08-051-0/+1
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Ignore URLs starting with // in Markdown links ## What does this MR do? Render `[foo](//bar/baz)` as `<a href="//bar/baz">foo</a>`. ## Why was this MR needed? `[foo](//bar/baz)` currently renders as `<a href="//bar/gitlab-org/gitlab-ce/master/baz">foo</a>` ## What are the relevant issue numbers? fixes #7032 See merge request !5677
| | * | | Ignore URLs starting with // (!5677)winniehell2016-08-051-0/+1
| | |/ /
| * | | Merge branch 'add_description_to_plain_text' into 'master' Rémy Coutable2016-08-051-0/+1
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add issue description to txt/plain emails ## What does this MR do? Adds issue description to new_issue mail when in text/plain content-type ## Are there points in the code the reviewer needs to double check? ## Why was this MR needed? Because clients that are rendering emails in text mode can see issue description ## What are the relevant issue numbers? #1821 ## 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 - [ ] 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 !5663
| | * | | Add description to text/plain emailsdixpac2016-08-041-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Added to * new_issue_email * new_merge_request_email
| * | | | Merge branch 'side-by-side-unfold' into 'master' Douwe Maan2016-08-051-0/+1
| |\ \ \ \ | | |_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add unfold links for Side-by-Side view ## What does this MR do? Add unfold links for Side-by-Side view and refactor some diff related code ## What are the relevant issue numbers? Closes #3877 ## 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 !5415
| | * | | Add unfold links for Side-by-Side viewTim Masliuchenko2016-08-041-0/+1
| | | |/ | | |/|
* | | | Merge branch ↵Douwe Maan2016-08-051-0/+1
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | '14898-protected-branches-developer-can-not-push-without-permission' into 'master' Developer cannot push to protected branch when project is empty or he has not been granted permission to do so This MR was created following !1979 and !1978 Closes #14898 See merge request !1980
| * | | developer cannot push to protected branch when project is empty or he has ↵tiagonbotelho2016-08-021-0/+1
| | | | | | | | | | | | | | | | not been granted permission to do so
* | | | Update CHANGELOG for 8.10.4Rémy Coutable2016-08-041-4/+6
| | | | | | | | | | | | | | | | Signed-off-by: Rémy Coutable <remy@rymai.me>
* | | | Merge branch ↵Rémy Coutable2016-08-041-0/+1
|\ \ \ \ | |_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | '20512-fix-rename-add-users-into-project-to-add-users-to-project-and-projects-ids-to-project-ids' into 'master' Fix Rename `add_users_into_project` and `projects_ids` ## What does this MR do? Only modifies the name of a method that leaves more semantic and expressive and the name of the keywords arguments to the rails convention. ## Are there points in the code the reviewer needs to double check? Only if it has been changed at every point that is calling this method and that passing arguments. ## Why was this MR needed? To make the code more expressive. ## What are the relevant issue numbers? Closes #20512. - [x] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added - Tests - [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 !5659
| * | | Fix Rename `add_users_into_project` and `projects_ids`Herminio Torres2016-08-041-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | We never add things `into` projects, we just add them `to` projects. So how about we rename this to `add_users_to_project`. Rename `projects_ids` to `project_ids` by following the convention of rails.
* | | | Merge branch 'fix/ha-mode-import-issue' into 'master' Rémy Coutable2016-08-041-0/+3
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix Import/Export not working in HA mode Use a shared path instead of `Tempfile` default `/tmp` so the import file is accessible by any GitLab instance. Fixes https://gitlab.com/gitlab-org/gitlab-ce/issues/20506 - [x] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added - Tests - [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 !5618
| * | | using shared path for project import uploads and refactored gitlab remove ↵James Lopez2016-08-041-0/+3
| | | | | | | | | | | | | | | | export worker
* | | | Merge branch ↵Yorick Peterse2016-08-041-0/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | '20491-remove-unnecessary-index_projects_on_builds_enabled-index-from-the-projects-table' into 'master' Remove unnecessary index_projects_on_builds_enabled index from the projects table See merge request !5611
| * | | | Remove unnecessary index_projects_on_builds_enabled index from the projects ↵20491-remove-unnecessary-index_projects_on_builds_enabled-index-from-the-projects-tableAlejandro Rodríguez2016-08-031-0/+1
| | | | | | | | | | | | | | | | | | | | table
* | | | | Merge branch 'devise-deprecations' into 'master' Rémy Coutable2016-08-041-0/+1
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix Devise deprecation warnings by updating omniauth provider paths to use the new Devise/Rails 5 format. See merge request !5331
| * | | | | Remove provider path, replace with dynamic path.devise-deprecationsConnor Shea2016-08-031-0/+1
| | | | | |
* | | | | | Merge branch 'instrument-gitlab-highlight' into 'master' Rémy Coutable2016-08-041-0/+1
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instrument Gitlab::Highlight ## What does this MR do? This instruments the class `Gitlab::Highlight`. ## Are there points in the code the reviewer needs to double check? No. ## Why was this MR needed? This class is not instrumented. ## What are the relevant issue numbers? #18592 ## Does this MR meet the acceptance criteria? - [x] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added - [x] 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) - [x] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits) See merge request !5644
| * | | | | | Instrument Gitlab::Highlightinstrument-gitlab-highlightYorick Peterse2016-08-031-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This class does quite a few interesting things so let's instrument it so we can see how much time is being spent in this class.
* | | | | | | Merge branch 'fix/confusing-blocked-user-description' into 'master' Achilleas Pipinellis2016-08-041-0/+1
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix confusing description of a blocked user. ## What does this MR do? Rewrite confusing description of a blocked user in admin settings. If someone is blocked, the same message is displayed as if he is unblocked. ## Are there points in the code the reviewer needs to double check? No. ## Why was this MR needed? Because it seems that this is a cosmetic bug. ## What are the relevant issue numbers? None. ## Screenshots (if relevant) ![blocked_user](/uploads/0782a82760ae19661d69c63a97daaf33/blocked_user.png) ## 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 !5582
| * | | | | | | Fix confusing description of a blocked user.Elias Werberich2016-08-021-0/+1
| | |_|_|/ / / | |/| | | | |
* | | | | | | Merge branch 'syntax-highlight-filter-performance' into 'master' Rémy Coutable2016-08-041-0/+1
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Improve performance of SyntaxHighlightFilter ## What does this MR do? This MR improves the performance of `Banzai::Filter::SyntaxHighlightFilter`. See e9bacc6575d0002c6cab620075dea3dc7f93f100 for more information. ## Are there points in the code the reviewer needs to double check? Styling mostly. ## Why was this MR needed? Syntax highlighting is rather slow. ## What are the relevant issue numbers? #18592 ## 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~~ - [ ] All builds are passing - [x] 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) - [x] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits) See merge request !5643
| * | | | | | | Improve performance of SyntaxHighlightFiltersyntax-highlight-filter-performanceYorick Peterse2016-08-031-0/+1
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | By using Rouge::Lexer.find instead of find_fancy() and memoizing the HTML formatter we can speed up the highlighting process by between 1.7 and 1.8 times (at least when measured using synthetic benchmarks). To measure this I used the following benchmark: require 'benchmark/ips' input = '' Dir['./app/controllers/**/*.rb'].each do |controller| input << <<-EOF <pre><code class="ruby">#{File.read(controller).strip}</code></pre> EOF end document = Nokogiri::HTML.fragment(input) filter = Banzai::Filter::SyntaxHighlightFilter.new(document) puts "Input size: #{(input.bytesize.to_f / 1024).round(2)} KB" Benchmark.ips do |bench| bench.report 'call' do filter.call end end This benchmark produces 250 KB of input. Before these changes the timing output would be as follows: Calculating ------------------------------------- call 1.000 i/100ms ------------------------------------------------- call 22.439 (±35.7%) i/s - 93.000 After these changes the output instead is as follows: Calculating ------------------------------------- call 1.000 i/100ms ------------------------------------------------- call 41.283 (±38.8%) i/s - 148.000 Note that due to the fairly high standard deviation and this being a synthetic benchmark it's entirely possible the real-world improvements are smaller.
* | | | | | | Merge branch 'fix/import-error' into 'master' Rémy Coutable2016-08-041-0/+3
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix Import/Export error checking versions Fixes small bug preventing the correct error message about Import/Export version being displayed. Fixes https://gitlab.com/gitlab-org/gitlab-ce/issues/20536 - [x] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry 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 !5638
| * | | | | | | Fix Import/Export error checking versionsfix/import-errorJames Lopez2016-08-031-0/+3
| | | | | | | |
* | | | | | | | Merge branch 'autolink-filter-text-parse' into 'master' Rémy Coutable2016-08-041-0/+1
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Improve AutolinkFilter#text_parse performance ## What does this MR do? This MR improves the performance of `AutolinkFilter#text_parse` by using XPath queries for filtering out most text nodes. ## Are there points in the code the reviewer needs to double check? Mostly the styling of things. ## Why was this MR needed? Parsing text nodes is slow, mostly because most of this happens in Ruby. ## What are the relevant issue numbers? https://gitlab.com/gitlab-org/gitlab-ce/issues/18593 ## 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~~ - [ ] 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 !5629
| * | | | | | | | Improve AutolinkFilter#text_parse performanceautolink-filter-text-parseYorick Peterse2016-08-031-0/+1
| | |/ / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | By using clever XPath queries we can quite significantly improve the performance of this method. The actual improvement depends a bit on the amount of links used but in my tests the new implementation is usually around 8 times faster than the old one. This was measured using the following benchmark: require 'benchmark/ips' text = '<p>' + Note.select("string_agg(note, '') AS note").limit(50).take[:note] + '</p>' document = Nokogiri::HTML.fragment(text) filter = Banzai::Filter::AutolinkFilter.new(document, autolink: true) puts "Input size: #{(text.bytesize.to_f / 1024 / 1024).round(2)} MB" filter.rinku_parse Benchmark.ips(time: 15) do |bench| bench.report 'text_parse' do filter.text_parse end bench.report 'text_parse_fast' do filter.text_parse_fast end bench.compare! end Here the "text_parse_fast" method is the new implementation and "text_parse" the old one. The input size was around 180 MB. Running this benchmark outputs the following: Input size: 181.16 MB Calculating ------------------------------------- text_parse 1.000 i/100ms text_parse_fast 9.000 i/100ms ------------------------------------------------- text_parse 13.021 (±15.4%) i/s - 188.000 text_parse_fast 112.741 (± 3.5%) i/s - 1.692k Comparison: text_parse_fast: 112.7 i/s text_parse: 13.0 i/s - 8.66x slower Again the production timings may (and most likely will) vary depending on the input being processed.
* | | | | | | | Merge branch 'remove-unused-images' into 'master' Rémy Coutable2016-08-041-0/+1
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove unused images ## What does this MR do? Remove unused images ``` bg-header.png bg_fallback.png chosen-sprite.png diff_note_add.png icon-search.png icon_sprite.png images.png move.png progress_bar.gif slider_handles.png ``` ## Are there points in the code the reviewer needs to double check? Just need to check if the images are still being used :smile: ## Why was this MR needed? To reduce the technical debt of the project ## What are the relevant issue numbers? Closes #20499 ## Does this MR meet the acceptance criteria? - [x] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added - [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 !5601
| * | | | | | | | Remove unused imagesClement Ho2016-08-031-0/+1
| | | | | | | | |
* | | | | | | | | Fix Mystery GuestHerminio Torres2016-08-041-0/+1
| |_|_|_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Magic Variable - Change the name of the variable to assign the local variable for partial, rather than `i` use the `index`. Don't pass a local variable called `i` to a partial.
* | | | | | | | Fix skip_repo parameter being ignored when destroying a namespaceStan Hu2016-08-031-0/+1
| |_|_|_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When destroying a namespace, the `skip_repo` parameter is supposed to prevent the repository directory from being destroyed and allow the namespace after_destroy hook to run. If the namespace fails to be deleted for some reason, we could be left with repositories that are deleted with existing projects.
* | | | | | | Use commit deltas when counting files in IrkerWorkerfix/speed-up-commit-repo-changesAhmad Sherif2016-08-031-1/+1
| | | | | | |
* | | | | | | Use only deltas in diffs when scanning the last commit for changes in the ↵Stan Hu2016-08-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | avatar to save memory
* | | | | | | Speed up Commit#repo_changesAhmad Sherif2016-08-031-0/+1
|/ / / / / /
* | | | | | Merge branch '20034-safe-diffs' into 'master' Douwe Maan2016-08-031-0/+1
|\ \ \ \ \ \ | |_|_|/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Cache diff syntax highlighted output ## What does this MR do? Cache highlighted diffs for merge requests when they are requested for existing merge requests but after each change on the merge request diff recalculate again the cache. I've introduced the concept of SafeDiffs which are the diffs that we're going to show on the UI and will be highlighted so maybe we can extend cache capabilities to more diffs. The more problematic part is what and how we cache the highlighted lines, for the moment what I did was store in Redis as Gitlab::Diff::Line serialized as an array of json objects, similar of what we do for commits and diffs on merge request diffs. The next step can be add a new field in the merge_request_diff object if we find it worth it. But let's first confirm this is the way to go ## What are the relevant issue numbers? Closes #20034 ## 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 [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 !5401
| * | | | | Cache highlighted diff lines for merge requestsPaco Guzman2016-08-031-0/+1
| | |/ / / | |/| | | | | | | | | | | | | Introducing the concept of SafeDiffs which relates diffs with UI highlighting.
* | | | | Merge branch 'fix-filter-input-alignment' into 'master' Fatih Acet2016-08-031-0/+1
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix filter input alignment ## What does this MR do? If you carefully observe the filter inputs on the [issues page](https://gitlab.com/gitlab-org/gitlab-ce/issues) and the [projects dashboard page](https://gitlab.com/dashboard/projects), you will notice that those input fields are actually a few pixels lower than the UI elements beside them (More so for the projects dashboard page than the issues page). This MR fixes that alignment issue so that they are aligned to the buttons on their right. ## Are there points in the code the reviewer needs to double check? Shouldn't be ## Why was this MR needed? Improves the existing UI ## What are the relevant issue numbers? Closes #20559 ## Screenshots (if relevant) Before ![Screen_Shot_2016-08-02_at_5.42.28_PM](/uploads/8530fc6c9ce20f28ae74b950bc1bd6be/Screen_Shot_2016-08-02_at_5.42.28_PM.png) After ![Screen_Shot_2016-08-02_at_5.49.28_PM](/uploads/ec20e68045c2190aec52e5f059d1a3bc/Screen_Shot_2016-08-02_at_5.49.28_PM.png) After (with color markings) ![Screen_Shot_2016-08-02_at_5.49.25_PM](/uploads/6e032b1ffb438018f6fadf294c3cebd3/Screen_Shot_2016-08-02_at_5.49.25_PM.png) Before ![Screen_Shot_2016-08-02_at_5.41.19_PM](/uploads/11a3c30d0290328bb3298bc392facf9f/Screen_Shot_2016-08-02_at_5.41.19_PM.png) After ![Screen_Shot_2016-08-02_at_5.49.47_PM](/uploads/f8e20346a19dc67cc3e54788dc0e72fb/Screen_Shot_2016-08-02_at_5.49.47_PM.png) After (with color markings) ![Screen_Shot_2016-08-02_at_5.49.58_PM](/uploads/1839d5681ab2f3518609004511af86a6/Screen_Shot_2016-08-02_at_5.49.58_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 - [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 !5633