-
Notifications
You must be signed in to change notification settings - Fork 454
v4.0.0 #2085
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
joelhawksley
wants to merge
108
commits into
main
Choose a base branch
from
v4
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
v4.0.0 #2085
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
* Minimum Ruby version is non-EOL per https://www.ruby-lang.org/en/downloads/branches/ (#2086) * Only support current Rails and Ruby In further review of the end-of-life dates for Ruby and Rails, I propose that we target Ruby >= 3.2 and Rails >= 7.1 which will be the lowest actively supported versions on April 1, 2025. We can ship v4 on that date. * remove backwards compat carve-out * docs update * merge cleanup * update CI config * remove rails version warning * grammar
* remove appraisals for unsupported rails versions * remove accommodations for Rails < 6.1 in PreviewHelper * remove support for Rails < 6.1 in Preview layout * remove old gemfiles * remove known issue docs for version of rails no longer supported * remove old rails support in test suite * simplify render_inline to only support modern Rails * always include collection_renderer * remove ruby and rails deprecation warnings in engine.rb * remove render_monkey_patch * remove render monkey patch * update rendering test for rails and ruby deprecations * remove duplicate components
* add .DS_Store to gitignore * Add Template subclasses to improve compiler polymorphism * Move template type-specific logic to constructors * Inline source into templates that require it * Flatten inline_call conditional in compile_to_component * Remove defined_on_self param from non-inline-call templates * Use ActionView logic for parsing template names Removes support for variant names containing `.`. * Delegate template format and variant to TemplateDetails --------- Co-authored-by: Joel Hawksley <[email protected]>
9 tasks
Closed
* Move generators into ViewComponent namespace * Update tests * Update changelog * Update docs with new generator namespace
* BREAKING: Use Nokogiri::HTML5 instead of Nokogiri::HTML4 for test helpers Co-authored-by: Noah Silvera <[email protected]> * update allocation counts * allocation counts --------- Co-authored-by: Noah Silvera <[email protected]>
* do not use respond_to in gemspec * do not use respond_to in PreviewActions * remove unnecessary respond_to check * remove unnecessary respond_to check in template annotations helper Co-authored-by: Tiago Menegaz <[email protected]> --------- Co-authored-by: Tiago Menegaz <[email protected]>
* Remove unnecessary usage of ruby2_keywords * Remove unnecessary usage of ruby2_keywords * Remove unnecessary usage of ruby2_keywords * Remove unnecessary usage of ruby2_keywords * Remove unnecessary usage of ruby2_keywords * Remove unnecessary usage of ruby2_keywords. * Remove unnecessary usage of ruby2_keywords. * Remove unnecessary usage of ruby2_keywords. * add changelog * bump rubocop ruby version * what about this? * fix bug found by PVC suite? * allocations * fix lint * allocations
* move dev dependencies to Gemfile * bundle update * get appraisal tests green
…ace (#2317) * BREAKING: Move previews-related configuration (enabled, route, paths, default_layout, controller) to under previews namespace. * Update lib/view_component/config.rb Co-authored-by: Simon Fish <[email protected]> --------- Co-authored-by: Simon Fish <[email protected]>
* Remove .test_controller in favor of vc_test_controller_class ViewComponent tests should not be beholden to application configuration, but instead should be configured in the test setup. I've removed `config.test_controller` and added `vc_test_controller_class` as such. * allocations
In reviewing the framework as a whole for the v4 release, we decided to remove support for the #use_helper(s) macro, as it does not align with broader Ruby patterns.
* Deprecate use_helper(s) in favor of include MyHelper or helpers. (#2331) * Reduce allocations in #with_collection (#2333) * Add test of number of allocations when rendering with with_collection * Ensure one-time initializations are done before testing allocations * Cache calculated collection parameter * Cache collection_counter_parameter * Cache collection_iteration_parameter * Cache initialize_parameter_names * Add expected number of allocations for all tested Ruby/Rails combinations * Remove code handling obsolete Rails version * fix allocations --------- Co-authored-by: Matijs van Zuijlen <[email protected]>
* Validate compatibility with Dry::Initializer in test suite. * wip * Fix final line endings * re-add conditional for url_helpers include * use class_attribute default: false * allocations, lints * add comment about need for empty init * update changelog * fix allocations * allocations * disable instrumentation in collection allocations test * allocations * allocations * add more test cases * lints --------- Co-authored-by: GitHub Actions Bot <41898282+github-actions[bot]@users.noreply.github.com>
20250610 merge main
run more erb_lint linters
add test case for discussion #966
add test case validating discussion #1092 is closed
add test case showing preview reloading works
add test cases to validate discussion #2215 is not an issue
use 4.0.0.alpha6 compat branch of PVC
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR will contain the breaking changes to ship for
v4.0.0
. We're still likely a long way's off, but I wanted to start to collect changes we know we'll want to land here. Until decided otherwise, we plan to release v4 on or after April 1, 2025,Tasks
Potentially breaking:
Slot
wrapper? (enables.with_slot.with_content
)__vc_
prefixCleanups:
rubygems_mfa_required
main
source controlDone:
v4
, such as in the compiler.SlotableDefault
by defaultActionView::Base
?respond_to?
checks are still necessary