From 82aeafcfe4c14425c23101266db9144e07343041 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 25 Mar 2026 00:55:47 +0000 Subject: [PATCH 1/3] Initial plan From bdee517647354b9fbb9071d97d2769cc91188f54 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 25 Mar 2026 00:59:16 +0000 Subject: [PATCH 2/3] Fix render_in to return html_safe empty string when render? is false Co-authored-by: joelhawksley <1940294+joelhawksley@users.noreply.github.com> Agent-Logs-Url: https://github.com/ViewComponent/view_component/sessions/bfc044d6-6ca7-4999-a544-ff12b3f1b00d --- lib/view_component/base.rb | 2 +- test/sandbox/test/rendering_test.rb | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/lib/view_component/base.rb b/lib/view_component/base.rb index 5fee45ea1..b251991d7 100644 --- a/lib/view_component/base.rb +++ b/lib/view_component/base.rb @@ -160,7 +160,7 @@ def render_in(view_context, &block) value else - "" + "".html_safe end ensure view_context.instance_variable_set(:@virtual_path, @old_virtual_path) diff --git a/test/sandbox/test/rendering_test.rb b/test/sandbox/test/rendering_test.rb index c57bf6ee7..b394bba4d 100644 --- a/test/sandbox/test/rendering_test.rb +++ b/test/sandbox/test/rendering_test.rb @@ -877,6 +877,12 @@ def test_does_not_render_passed_in_content_if_render_is_false assert total < 1 end + def test_render_in_returns_html_safe_string_when_render_is_false + render_inline(ConditionalRenderComponent.new(should_render: false)) + + assert_predicate @rendered_content, :html_safe? + end + def test_collection_parameter_does_not_require_compile dynamic_component = Class.new(ViewComponent::Base) do From 8733dad440082b5bc1c881f885e8a3c65baa5bd6 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 25 Mar 2026 15:07:38 +0000 Subject: [PATCH 3/3] Add changelog entry for html_safe fix in render_in Co-authored-by: joelhawksley <1940294+joelhawksley@users.noreply.github.com> Agent-Logs-Url: https://github.com/ViewComponent/view_component/sessions/039c0c05-2746-411e-acce-af421239caa1 --- docs/CHANGELOG.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index a0cf18b43..4e6a11460 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -10,6 +10,10 @@ nav_order: 6 ## main +* Return `html_safe` empty string from `render_in` when `render?` is false. + + *Copilot* + ## 4.5.0 * Fix initialization ordering issue causing missing asset errors in Sprockets.