gitlab-org--gitlab-foss/spec/services
Yorick Peterse daad7144ec
Support Markdown rendering using multiple projects
This refactors the Markdown pipeline so it supports the rendering of
multiple documents that may belong to different projects. An example of
where this happens is when displaying the event feed of a group. In this
case we retrieve events for all projects in the group. Previously we
would group events per project and render these chunks separately, but
this would result in many SQL queries being executed. By extending the
Markdown pipeline to support this out of the box we can drastically
reduce the number of SQL queries.

To achieve this we introduce a new object to the pipeline:
Banzai::RenderContext. This object simply wraps two other objects: an
optional Project instance, and an optional User instance. On its own
this wouldn't be very helpful, but a RenderContext can also be used to
associate HTML documents with specific Project instances. This work is
done in Banzai::ObjectRenderer and allows us to reuse as many queries
(and results) as possible.
2018-04-11 14:10:19 +02:00
..
applications
auth Verify that deploy token has valid access when pulling container registry image 2018-04-10 07:31:30 +00:00
boards Fix more specs 2018-04-05 14:58:49 -03:00
chat_names Expose ChatName objects to slash commands 2018-02-23 14:37:53 +01:00
ci Revert "Merge branch 'improve-jobs-queuing-time-metric' into 'master'" 2018-04-10 10:41:08 +00:00
clusters Rearrange DeploymentPlatform methods 2018-03-22 14:52:33 -06:00
deploy_keys
deploy_tokens Handle limit for datetime attributes on MySQL 2018-04-06 22:28:44 -05:00
discussions Replace '.team << [user, role]' with 'add_role(user)' in specs 2017-12-22 19:18:28 +11:00
emails
events Support Markdown rendering using multiple projects 2018-04-11 14:10:19 +02:00
files Extract constant for LfsPointerFile::VERSION_LINE 2018-03-16 13:35:03 +00:00
gpg_keys
groups Remove permanent redirects 2018-03-28 14:12:08 +02:00
issuable Deleting a MR you are assigned to should decrements counter 2018-04-05 13:24:45 -05:00
issues Improve specs and docs 2018-04-05 15:14:04 -03:00
keys
labels Allow to find labels in ancestor groups and better group support in label service 2018-02-26 16:23:19 +00:00
lfs Extract constant for LfsPointerFile::VERSION_LINE 2018-03-16 13:35:03 +00:00
members Don't delete todos or unassign issues and MRs when a user leaves a project 2018-03-07 17:18:01 -06:00
merge_requests Fix 500 error when MR from fork has conflicts but worker has not run 2018-04-06 12:16:51 +01:00
milestones Replace '.team << [user, role]' with 'add_role(user)' in specs 2017-12-22 19:18:28 +11:00
notes Support Markdown rendering using multiple projects 2018-04-11 14:10:19 +02:00
projects Extend API for importing a project export with overwrite support 2018-04-06 15:23:49 +00:00
prometheus Implemente Prometheus:AdapterService 2018-03-05 19:34:59 +01:00
protected_branches ProtectedBranchPolicy used from Controller for destroy/update 2018-03-26 10:29:52 +01:00
protected_tags DestroyService for protected tags/branches used from controller 2018-03-26 10:29:52 +01:00
quick_actions Resolve "Milestone Quick Action not displayed with no project milestones but with group milestones" 2018-02-23 14:23:09 +00:00
search Merge branch 'security-10-4-25223-snippets-finder-doesnt-obey-feature-visibility' into 'security-10-4' 2018-02-09 12:04:05 -06:00
tags
test_hooks test hook for system merge request hook 2018-01-04 09:33:41 +01:00
users Use hashed storage in the specs 2018-02-07 13:40:46 +00:00
wiki_pages
access_token_validation_service_spec.rb
after_branch_delete_service_spec.rb
base_count_service_spec.rb allow caching options to be specified for counting services 2017-11-30 22:23:07 +00:00
check_gcp_project_billing_service_spec.rb Refactor GCP redirect test suite 2018-01-11 07:14:08 +01:00
cohorts_service_spec.rb
compare_service_spec.rb
create_branch_service_spec.rb
create_deployment_service_spec.rb Cache merged and closed events data in merge_request_metrics table 2018-01-02 17:45:25 -02:00
create_release_service_spec.rb
create_snippet_service_spec.rb
delete_branch_service_spec.rb Replace '.team << [user, role]' with 'add_role(user)' in specs 2017-12-22 19:18:28 +11:00
delete_merged_branches_service_spec.rb
event_create_service_spec.rb
git_push_service_spec.rb Replace '.team << [user, role]' with 'add_role(user)' in specs 2017-12-22 19:18:28 +11:00
git_tag_push_service_spec.rb Replace '.team << [user, role]' with 'add_role(user)' in specs 2017-12-22 19:18:28 +11:00
gravatar_service_spec.rb
import_export_clean_up_service_spec.rb
note_summary_spec.rb
notification_service_spec.rb Send notification emails when push to a merge request 2018-03-26 13:24:52 +01:00
pages_service_spec.rb
preview_markdown_service_spec.rb
push_event_payload_service_spec.rb
repair_ldap_blocked_user_service_spec.rb
repository_archive_clean_up_service_spec.rb
reset_project_cache_service_spec.rb Rename Project#cache_index to jobs_cache_index 2018-01-04 22:17:03 +01:00
search_service_spec.rb
spam_service_spec.rb
submit_usage_ping_service_spec.rb
system_hooks_service_spec.rb Merge branch 'sh-fix-issue-43871-system-hooks' into 'master' 2018-03-05 22:42:48 +00:00
system_note_service_spec.rb Improve JIRA event descriptions 2018-03-19 16:36:16 -03:00
todo_service_spec.rb Port read_cross_project ability from EE 2018-02-22 17:11:36 +01:00
update_merge_request_metrics_service_spec.rb Cache merged and closed events data in merge_request_metrics table 2018-01-02 17:45:25 -02:00
update_release_service_spec.rb
update_snippet_service_spec.rb
upload_service_spec.rb
user_project_access_changed_service_spec.rb
verify_pages_domain_service_spec.rb Allow pages domain verification to run on invalid domains 2018-03-26 15:07:01 +01:00
web_hook_service_spec.rb Merge branch 'fj-15329-services-callbacks-ssrf' into 'security-10-6' 2018-03-21 14:39:21 +00:00