Skip to content

Releases: ViewComponent/view_component

v3.23.2

23 May 18:33
9f3f4fd
Compare
Choose a tag to compare
  • Include .tt files in published gem. Fixes templates not being available when using generators.

    Florian Aßmann

v3.23.1

22 May 14:29
8d45f14
Compare
Choose a tag to compare
  • Restore Rake tasks in published gem.

    Franz Liedke

v3.23.0

21 May 21:04
a642301
Compare
Choose a tag to compare
  • Add docs about Slack channel in Ruby Central workspace. (Join us! #oss-view-component). Email [email protected] for an invite.

    *Joel Hawksley

  • Do not include internal DocsBuilderComponent or YARD::MattrAccessorHandler in published gem.

    Joel Hawksley

  • Only lock to concurrent-ruby 1.3.4 for Rails 6.1.

    Joel Hawksley

  • Fix generation of ViewComponent documentation that was broken due to HTML safety issues.

    Simon Fish

  • Add documentation on how ViewComponent works.

    Joel Hawksley

  • Clarify that config.use_deprecated_instrumentation_name will be removed in v4.

    Joel Hawksley

  • Run RSpec tests in CI.

    Joel Hawksley

4.0.0.alpha5

15 May 22:32
Compare
Choose a tag to compare
4.0.0.alpha5 Pre-release
Pre-release
  • BREAKING: config.view_component_path is now config.generate.path, as components have long since been able to exist in any directory.

    Joel Hawksley

  • BREAKING: Remove broken integration with rails stats that ignored components outside of app/components.

    Joel Hawksley

  • Add internal optimization for Ruby object shapes.

    Adam Hess, Joel Hawksley

4.0.0.alpha4

14 May 15:31
Compare
Choose a tag to compare
4.0.0.alpha4 Pre-release
Pre-release
  • BREAKING: Remove default initializer from ViewComponent::Base. Previously, ViewComponent::Base defined a catch-all initializer that allowed components without an initializer defined to be passed arbitrary arguments.

    Joel Hawksley

  • Graduate SlotableDefault to be included by default.

    Joel Hawksley

  • Fix bug in SlotableDefault where default couldn't be overridden when content was passed as a block.

    Bill Watts, Joel Hawksley

4.0.0.alpha3

30 Apr 20:25
Compare
Choose a tag to compare
4.0.0.alpha3 Pre-release
Pre-release
  • BREAKING: Remove dependency on ActionView::Base, eliminating the need for capture compatibility patch.

    Cameron Dutro

4.0.0.alpha2

25 Apr 19:56
Compare
Choose a tag to compare
4.0.0.alpha2 Pre-release
Pre-release
  • Add #current_template accessor and Template#path for diagnostic usage.

    Joel Hawksley

4.0.0.alpha1

24 Apr 22:22
Compare
Choose a tag to compare
4.0.0.alpha1 Pre-release
Pre-release

Almost six years after releasing v1.0.0, we're proud to ship the first alpha release of ViewComponent 4. This release marks a shift towards a Long Term Support model for the project, having reached significant feature maturity. While contributions are always welcome, we're unlikely to accept further breaking changes or major feature additions.

Please test this release and report any issues to this repository.

  • BREAKING: --inline generator option now generates inline template. Use --call to generate #call method.

    Joel Hawksley

  • BREAKING: Remove use_deprecated_instrumentation_name configuration option. Events will always use render.view_component name.

    Joel Hawksley

  • BREAKING: Remove preview_source functionality. Consider using Lookbook instead.

    Joel Hawksley

  • BREAKING: Use Nokogiri::HTML5 instead of Nokogiri::HTML4 for test helpers.

    Noah Silvera, Joel Hawksley

  • BREAKING: Move generators to a ViewComponent namespace.

    Before, ViewComponent generators pollute the generator namespace with a bunch of top level items, and claim the generic "component" name.

    Now, generators live in a "view_component" module/namespace, so what was before rails g component is now rails g view_component:component.

    Paul Sadauskas

  • BREAKING: Require non-EOL Rails (>= 7.1.0).

    Joel Hawksley

  • BREAKING: Require non-EOL Ruby (>= 3.2.0).

    Joel Hawksley

  • BREAKING: Remove render_component and render monkey patch configured with render_monkey_patch_enabled.

    Joel Hawksley

  • BREAKING: Remove support for variant names containing . to be consistent with Rails.

    Stephen Nelson

  • BREAKING: Use ActionView's lookup_context for picking templates instead of the request format.

    3.15 added support for using templates that match the request format, i.e. if /resource.csv is requested then
    ViewComponents would pick _component.csv.erb over _component.html.erb.

    With this release, the request format is no longer considered and instead ViewComponent will use the Rails logic
    for picking the most appropriate template type, i.e. the csv template will be used if it matches the Accept header
    or because the controller uses a respond_to block to pick the response format.

    Stephen Nelson

  • BREAKING: Rename internal methods to have __vc_ prefix if they shouldn't be used by consumers. Make internal constants private. Make Collection#components, Slotable#register_polymorphic_slot private. Remove unused ComponentError class.

    Joel Hawksley

  • Fix bug where request-aware helpers did not work outside of the request context.

    Joel Hawksley, Stephen Nelson

  • ViewComponentsSystemTestController should not be useable outside of test environment

    Joel Hawksley, Stephen Nelson

  • Remove unnecessary ENABLE_RELOADING test suite flag.

    Joel Hawksley

  • Add test coverage for uncovered code.

    Joel Hawksley

  • Remove unnecessary #format methods that returned nil.

    Joel Hawksley

  • Clean up project dependencies, relaxing versions of development gems.

    Joel Hawksley

  • Test against turbo-rails v2.

    Joel Hawksley

  • Test against rspec-rails v7.

    Joel Hawksley

  • Remove unnecessary usage of ruby2_keywords.

    Joel Hawksley

  • Remove unnecessary respond_to checks.

    Tiago Menegaz, Joel Hawksley

  • Do not include internal DocsBuilderComponent or YARD::MattrAccessorHandler in published gem.

    Joel Hawksley

  • Only lock to concurrent-ruby 1.3.4 for Rails 6.1.

    Joel Hawksley

  • Fix generation of ViewComponent documentation that was broken due to HTML safety issues.

    Simon Fish

  • Add documentation on how ViewComponent works.

    Joel Hawksley

  • Clarify that config.use_deprecated_instrumentation_name will be removed in v4.

    Joel Hawksley

  • Run RSpec tests in CI.

    Joel Hawksley

v3.22.0

25 Mar 22:35
5dd1a97
Compare
Choose a tag to compare
  • Rewrite ViewComponents at GitHub documentation as more general Best practices.

    Phil Schalm, Joel Hawksley

  • Add unused mechanism for inheriting config from parent modules to enable future engine-local configuration.

    Simon Fish

  • Improve handling of malformed component edge case when mocking components in tests.

    Martin Meyerhoff, Joel Hawksley

  • Clarify error message about render-dependent logic.

    Error messages about render-dependent logic were sometimes inaccurate, saying during initialization despite also being raised after a component had been initialized but before it was rendered.

    Joel Hawksley

  • Remove JS and CSS docs as they proved difficult to maintain and lacked consensus.

    Joel Hawksley

  • Do not prefix release tags with v, per recommendation from @bkuhlmann.

    Joel Hawksley

  • Add ruby 3.4 support to CI.

    Reegan Viljoen

  • Add HomeStyler AI to list of companies using ViewComponent.

    JP Balarini

  • Add Content Harmony & Learn To Be to list of companies using ViewComponent.

    Kane Jamison

v3.21.0

19 Dec 21:52
644bfb7
Compare
Choose a tag to compare
  • Updates testing docs to include an example of how to use with RSpec.

    Rylan Bowers

  • Add --skip-suffix option to component generator.

    KAWAKAMI Moeki

  • Add FreeATS to list of companies using ViewComponent.

    Ilia Liamshin

  • Ensure HTML output safety wrapper is used for all inline templates.

    Joel Hawksley

  • Expose .identifier method as part of public API.

    Joel Hawksley

  • Add rails 8 support to CI.

    Reegan Viljoen

  • Updates ActionText compatibility documentation to reference rich_textarea_tag for Rails 8.0 support.

    Alvin Crespo