actionview 8.0.0.beta1 → 8.0.0.rc2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +16 -0
- data/lib/action_view/dependency_tracker/erb_tracker.rb +2 -1
- data/lib/action_view/gem_version.rb +1 -1
- data/lib/action_view/helpers/atom_feed_helper.rb +0 -2
- data/lib/action_view/helpers/date_helper.rb +3 -3
- data/lib/action_view/helpers/form_helper.rb +17 -16
- data/lib/action_view/helpers/form_options_helper.rb +7 -7
- data/lib/action_view/helpers/tag_helper.rb +2 -18
- data/lib/action_view/helpers/text_helper.rb +1 -1
- data/lib/action_view/record_identifier.rb +1 -1
- data/lib/action_view/template.rb +13 -3
- metadata +11 -11
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA256:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: ce23d8a9002fa8d5652aa3ad756287330509fc1c7c32944a99e5859a70d50d5a
         | 
| 4 | 
            +
              data.tar.gz: 475923449e3916cd5feb3db9eaf19d44dac25f6b9c01196a63c6995060550d2e
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 2cc4355e81f77ee5f7e06fdddc53e4e7aebdce0b4c8c0d4bc83e9ab39a0042fc70d54acf2a55f6b0f12a79fdda710d4fd5a26fb156edea0b8a5a01a5bc5bbe51
         | 
| 7 | 
            +
              data.tar.gz: dcdbfa1dc4538656447d4594dee2c6d8c75a67930f9672f80ae3e6d068088f3331fb1f00568da812f35834b058fc9e56d990cfc5e2684149ad43b0fd50ef06f8
         | 
    
        data/CHANGELOG.md
    CHANGED
    
    | @@ -1,3 +1,19 @@ | |
| 1 | 
            +
            ## Rails 8.0.0.rc2 (October 30, 2024) ##
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            *   No changes.
         | 
| 4 | 
            +
             | 
| 5 | 
            +
             | 
| 6 | 
            +
            ## Rails 8.0.0.rc1 (October 19, 2024) ##
         | 
| 7 | 
            +
             | 
| 8 | 
            +
            *   Remove deprecated support to passing a content to void tag elements on the `tag` builder.
         | 
| 9 | 
            +
             | 
| 10 | 
            +
                *Rafael Mendonça França*
         | 
| 11 | 
            +
             | 
| 12 | 
            +
            *   Remove deprecated support to passing `nil` to the `model:` argument of `form_with`.
         | 
| 13 | 
            +
             | 
| 14 | 
            +
                *Rafael Mendonça França*
         | 
| 15 | 
            +
             | 
| 16 | 
            +
             | 
| 1 17 | 
             
            ## Rails 8.0.0.beta1 (September 26, 2024) ##
         | 
| 2 18 |  | 
| 3 19 | 
             
            *   Enable DependencyTracker to evaluate renders with trailing interpolation.
         | 
| @@ -127,7 +127,8 @@ module ActionView | |
| 127 127 | 
             
                            wildcard_dependency << scanner.pre_match
         | 
| 128 128 |  | 
| 129 129 | 
             
                            while unmatched_brackets > 0 && !scanner.eos?
         | 
| 130 | 
            -
                              scanner.scan_until(/[{}]/)
         | 
| 130 | 
            +
                              found = scanner.scan_until(/[{}]/)
         | 
| 131 | 
            +
                              return unless found
         | 
| 131 132 |  | 
| 132 133 | 
             
                              case scanner.matched
         | 
| 133 134 | 
             
                              when "{"
         | 
| @@ -1228,7 +1228,7 @@ module ActionView | |
| 1228 1228 | 
             
                class FormBuilder
         | 
| 1229 1229 | 
             
                  # Wraps ActionView::Helpers::DateHelper#date_select for form builders:
         | 
| 1230 1230 | 
             
                  #
         | 
| 1231 | 
            -
                  #   <%=  | 
| 1231 | 
            +
                  #   <%= form_with model: @person do |f| %>
         | 
| 1232 1232 | 
             
                  #     <%= f.date_select :birth_date %>
         | 
| 1233 1233 | 
             
                  #     <%= f.submit %>
         | 
| 1234 1234 | 
             
                  #   <% end %>
         | 
| @@ -1240,7 +1240,7 @@ module ActionView | |
| 1240 1240 |  | 
| 1241 1241 | 
             
                  # Wraps ActionView::Helpers::DateHelper#time_select for form builders:
         | 
| 1242 1242 | 
             
                  #
         | 
| 1243 | 
            -
                  #   <%=  | 
| 1243 | 
            +
                  #   <%= form_with model: @race do |f| %>
         | 
| 1244 1244 | 
             
                  #     <%= f.time_select :average_lap %>
         | 
| 1245 1245 | 
             
                  #     <%= f.submit %>
         | 
| 1246 1246 | 
             
                  #   <% end %>
         | 
| @@ -1252,7 +1252,7 @@ module ActionView | |
| 1252 1252 |  | 
| 1253 1253 | 
             
                  # Wraps ActionView::Helpers::DateHelper#datetime_select for form builders:
         | 
| 1254 1254 | 
             
                  #
         | 
| 1255 | 
            -
                  #   <%=  | 
| 1255 | 
            +
                  #   <%= form_with model: @person do |f| %>
         | 
| 1256 1256 | 
             
                  #     <%= f.datetime_select :last_request_at %>
         | 
| 1257 1257 | 
             
                  #     <%= f.submit %>
         | 
| 1258 1258 | 
             
                  #   <% end %>
         | 
| @@ -30,20 +30,21 @@ module ActionView | |
| 30 30 | 
             
                # when the form is initially displayed, input fields corresponding to attributes
         | 
| 31 31 | 
             
                # of the resource should show the current values of those attributes.
         | 
| 32 32 | 
             
                #
         | 
| 33 | 
            -
                # In \Rails, this is usually achieved by creating the form using  | 
| 34 | 
            -
                # a number of related helper methods.  | 
| 35 | 
            -
                #  | 
| 36 | 
            -
                #  | 
| 37 | 
            -
                #  | 
| 33 | 
            +
                # In \Rails, this is usually achieved by creating the form using either
         | 
| 34 | 
            +
                # +form_with+ or +form_for+ and a number of related helper methods. These
         | 
| 35 | 
            +
                # methods generate an appropriate <tt>form</tt> tag and yield a form
         | 
| 36 | 
            +
                # builder object that knows the model the form is about. Input fields are
         | 
| 37 | 
            +
                # created by calling methods defined on the form builder, which means they
         | 
| 38 | 
            +
                # are able to generate the appropriate names and default values
         | 
| 38 39 | 
             
                # corresponding to the model attributes, as well as convenient IDs, etc.
         | 
| 39 | 
            -
                # Conventions in the generated field names allow controllers to receive form | 
| 40 | 
            -
                # nicely structured in +params+ with no effort on your side.
         | 
| 40 | 
            +
                # Conventions in the generated field names allow controllers to receive form
         | 
| 41 | 
            +
                # data nicely structured in +params+ with no effort on your side.
         | 
| 41 42 | 
             
                #
         | 
| 42 43 | 
             
                # For example, to create a new person you typically set up a new instance of
         | 
| 43 44 | 
             
                # +Person+ in the <tt>PeopleController#new</tt> action, <tt>@person</tt>, and
         | 
| 44 | 
            -
                # in the view template pass that object to +form_for+:
         | 
| 45 | 
            +
                # in the view template pass that object to +form_with+ or +form_for+:
         | 
| 45 46 | 
             
                #
         | 
| 46 | 
            -
                #   <%=  | 
| 47 | 
            +
                #   <%= form_with model: @person do |f| %>
         | 
| 47 48 | 
             
                #     <%= f.label :first_name %>:
         | 
| 48 49 | 
             
                #     <%= f.text_field :first_name %><br />
         | 
| 49 50 | 
             
                #
         | 
| @@ -753,7 +754,7 @@ module ActionView | |
| 753 754 | 
             
                  #     form_with(**options.merge(builder: LabellingFormBuilder), &block)
         | 
| 754 755 | 
             
                  #   end
         | 
| 755 756 | 
             
                  def form_with(model: false, scope: nil, url: nil, format: nil, **options, &block)
         | 
| 756 | 
            -
                     | 
| 757 | 
            +
                    raise ArgumentError, "Passed nil to the :model argument, expect an object or false" if model.nil?
         | 
| 757 758 |  | 
| 758 759 | 
             
                    options = { allow_method_names_outside_object: true, skip_default_ids: !form_with_generates_ids }.merge!(options)
         | 
| 759 760 |  | 
| @@ -783,9 +784,9 @@ module ActionView | |
| 783 784 | 
             
                    end
         | 
| 784 785 | 
             
                  end
         | 
| 785 786 |  | 
| 786 | 
            -
                  # Creates a scope around a specific model object like form_with | 
| 787 | 
            -
                  # doesn't create the form tags themselves. This makes fields_for | 
| 788 | 
            -
                  # for specifying additional model objects in the same form.
         | 
| 787 | 
            +
                  # Creates a scope around a specific model object like +form_with+, but
         | 
| 788 | 
            +
                  # doesn't create the form tags themselves. This makes +fields_for+
         | 
| 789 | 
            +
                  # suitable for specifying additional model objects in the same form.
         | 
| 789 790 | 
             
                  #
         | 
| 790 791 | 
             
                  # Although the usage and purpose of +fields_for+ is similar to +form_with+'s,
         | 
| 791 792 | 
             
                  # its method signature is slightly different. Like +form_with+, it yields
         | 
| @@ -2032,9 +2033,9 @@ module ActionView | |
| 2032 2033 | 
             
                  end
         | 
| 2033 2034 | 
             
                  alias_method :text_area, :textarea
         | 
| 2034 2035 |  | 
| 2035 | 
            -
                  # Creates a scope around a specific model object like form_with | 
| 2036 | 
            -
                  # doesn't create the form tags themselves. This makes fields_for | 
| 2037 | 
            -
                  # for specifying additional model objects in the same form.
         | 
| 2036 | 
            +
                  # Creates a scope around a specific model object like +form_with+, but
         | 
| 2037 | 
            +
                  # doesn't create the form tags themselves. This makes +fields_for+
         | 
| 2038 | 
            +
                  # suitable for specifying additional model objects in the same form.
         | 
| 2038 2039 | 
             
                  #
         | 
| 2039 2040 | 
             
                  # Although the usage and purpose of +fields_for+ is similar to +form_with+'s,
         | 
| 2040 2041 | 
             
                  # its method signature is slightly different. Like +form_with+, it yields
         | 
| @@ -840,7 +840,7 @@ module ActionView | |
| 840 840 | 
             
                class FormBuilder
         | 
| 841 841 | 
             
                  # Wraps ActionView::Helpers::FormOptionsHelper#select for form builders:
         | 
| 842 842 | 
             
                  #
         | 
| 843 | 
            -
                  #   <%=  | 
| 843 | 
            +
                  #   <%= form_with model: @post do |f| %>
         | 
| 844 844 | 
             
                  #     <%= f.select :person_id, Person.all.collect { |p| [ p.name, p.id ] }, include_blank: true %>
         | 
| 845 845 | 
             
                  #     <%= f.submit %>
         | 
| 846 846 | 
             
                  #   <% end %>
         | 
| @@ -852,7 +852,7 @@ module ActionView | |
| 852 852 |  | 
| 853 853 | 
             
                  # Wraps ActionView::Helpers::FormOptionsHelper#collection_select for form builders:
         | 
| 854 854 | 
             
                  #
         | 
| 855 | 
            -
                  #   <%=  | 
| 855 | 
            +
                  #   <%= form_with model: @post do |f| %>
         | 
| 856 856 | 
             
                  #     <%= f.collection_select :person_id, Author.all, :id, :name_with_initial, prompt: true %>
         | 
| 857 857 | 
             
                  #     <%= f.submit %>
         | 
| 858 858 | 
             
                  #   <% end %>
         | 
| @@ -864,7 +864,7 @@ module ActionView | |
| 864 864 |  | 
| 865 865 | 
             
                  # Wraps ActionView::Helpers::FormOptionsHelper#grouped_collection_select for form builders:
         | 
| 866 866 | 
             
                  #
         | 
| 867 | 
            -
                  #   <%=  | 
| 867 | 
            +
                  #   <%= form_with model: @city do |f| %>
         | 
| 868 868 | 
             
                  #     <%= f.grouped_collection_select :country_id, @continents, :countries, :name, :id, :name %>
         | 
| 869 869 | 
             
                  #     <%= f.submit %>
         | 
| 870 870 | 
             
                  #   <% end %>
         | 
| @@ -876,7 +876,7 @@ module ActionView | |
| 876 876 |  | 
| 877 877 | 
             
                  # Wraps ActionView::Helpers::FormOptionsHelper#time_zone_select for form builders:
         | 
| 878 878 | 
             
                  #
         | 
| 879 | 
            -
                  #   <%=  | 
| 879 | 
            +
                  #   <%= form_with model: @user do |f| %>
         | 
| 880 880 | 
             
                  #     <%= f.time_zone_select :time_zone, nil, include_blank: true %>
         | 
| 881 881 | 
             
                  #     <%= f.submit %>
         | 
| 882 882 | 
             
                  #   <% end %>
         | 
| @@ -888,7 +888,7 @@ module ActionView | |
| 888 888 |  | 
| 889 889 | 
             
                  # Wraps ActionView::Helpers::FormOptionsHelper#weekday_select for form builders:
         | 
| 890 890 | 
             
                  #
         | 
| 891 | 
            -
                  #   <%=  | 
| 891 | 
            +
                  #   <%= form_with model: @user do |f| %>
         | 
| 892 892 | 
             
                  #     <%= f.weekday_select :weekday, include_blank: true %>
         | 
| 893 893 | 
             
                  #     <%= f.submit %>
         | 
| 894 894 | 
             
                  #   <% end %>
         | 
| @@ -900,7 +900,7 @@ module ActionView | |
| 900 900 |  | 
| 901 901 | 
             
                  # Wraps ActionView::Helpers::FormOptionsHelper#collection_checkboxes for form builders:
         | 
| 902 902 | 
             
                  #
         | 
| 903 | 
            -
                  #   <%=  | 
| 903 | 
            +
                  #   <%= form_with model: @post do |f| %>
         | 
| 904 904 | 
             
                  #     <%= f.collection_checkboxes :author_ids, Author.all, :id, :name_with_initial %>
         | 
| 905 905 | 
             
                  #     <%= f.submit %>
         | 
| 906 906 | 
             
                  #   <% end %>
         | 
| @@ -913,7 +913,7 @@ module ActionView | |
| 913 913 |  | 
| 914 914 | 
             
                  # Wraps ActionView::Helpers::FormOptionsHelper#collection_radio_buttons for form builders:
         | 
| 915 915 | 
             
                  #
         | 
| 916 | 
            -
                  #   <%=  | 
| 916 | 
            +
                  #   <%= form_with model: @post do |f| %>
         | 
| 917 917 | 
             
                  #     <%= f.collection_radio_buttons :author_id, Author.all, :id, :name_with_initial %>
         | 
| 918 918 | 
             
                  #     <%= f.submit %>
         | 
| 919 919 | 
             
                  #   <% end %>
         | 
| @@ -4,7 +4,6 @@ require "active_support/code_generator" | |
| 4 4 | 
             
            require "active_support/core_ext/enumerable"
         | 
| 5 5 | 
             
            require "active_support/core_ext/string/output_safety"
         | 
| 6 6 | 
             
            require "active_support/core_ext/string/inflections"
         | 
| 7 | 
            -
            require "set"
         | 
| 8 7 | 
             
            require "action_view/helpers/capture_helper"
         | 
| 9 8 | 
             
            require "action_view/helpers/output_safety_helper"
         | 
| 10 9 |  | 
| @@ -48,16 +47,6 @@ module ActionView | |
| 48 47 | 
             
                    include CaptureHelper
         | 
| 49 48 | 
             
                    include OutputSafetyHelper
         | 
| 50 49 |  | 
| 51 | 
            -
                    def deprecated_void_content(name)
         | 
| 52 | 
            -
                      ActionView.deprecator.warn <<~TEXT
         | 
| 53 | 
            -
                        Putting content inside a void element (#{name}) is invalid
         | 
| 54 | 
            -
                        according to the HTML5 spec, and so it is being deprecated
         | 
| 55 | 
            -
                        without replacement. In Rails 8.0, passing content as a
         | 
| 56 | 
            -
                        positional argument will raise, and using a block will have
         | 
| 57 | 
            -
                        no effect.
         | 
| 58 | 
            -
                      TEXT
         | 
| 59 | 
            -
                    end
         | 
| 60 | 
            -
             | 
| 61 50 | 
             
                    def self.define_element(name, code_generator:, method_name: name)
         | 
| 62 51 | 
             
                      return if method_defined?(name)
         | 
| 63 52 |  | 
| @@ -72,13 +61,8 @@ module ActionView | |
| 72 61 | 
             
                    def self.define_void_element(name, code_generator:, method_name: name)
         | 
| 73 62 | 
             
                      code_generator.class_eval do |batch|
         | 
| 74 63 | 
             
                        batch << "\n" <<
         | 
| 75 | 
            -
                          "def #{method_name}( | 
| 76 | 
            -
                          "   | 
| 77 | 
            -
                          "    deprecated_void_content(#{name.inspect})" <<
         | 
| 78 | 
            -
                          "    tag_string(#{name.inspect}, content, options, escape: escape, &block)" <<
         | 
| 79 | 
            -
                          "  else" <<
         | 
| 80 | 
            -
                          "    self_closing_tag_string(#{name.inspect}, options, escape, '>')" <<
         | 
| 81 | 
            -
                          "  end" <<
         | 
| 64 | 
            +
                          "def #{method_name}(escape: true, **options, &block)" <<
         | 
| 65 | 
            +
                          "  self_closing_tag_string(#{name.inspect}, options, escape, '>')" <<
         | 
| 82 66 | 
             
                          "end"
         | 
| 83 67 | 
             
                      end
         | 
| 84 68 | 
             
                    end
         | 
| @@ -166,7 +166,7 @@ module ActionView | |
| 166 166 | 
             
                  #   highlight('You searched for: rails', 'rails', highlighter: '<a href="search?q=\1">\1</a>')
         | 
| 167 167 | 
             
                  #   # => "You searched for: <a href=\"search?q=rails\">rails</a>"
         | 
| 168 168 | 
             
                  #
         | 
| 169 | 
            -
                  #   highlight('You searched for: rails', 'rails') { |match| link_to(search_path(q: match | 
| 169 | 
            +
                  #   highlight('You searched for: rails', 'rails') { |match| link_to(search_path(q: match)) }
         | 
| 170 170 | 
             
                  #   # => "You searched for: <a href=\"search?q=rails\">rails</a>"
         | 
| 171 171 | 
             
                  #
         | 
| 172 172 | 
             
                  #   highlight('<a href="javascript:alert(\'no!\')">ruby</a> on rails', 'rails', sanitize: false)
         | 
    
        data/lib/action_view/template.rb
    CHANGED
    
    | @@ -229,11 +229,21 @@ module ActionView | |
| 229 229 | 
             
                end
         | 
| 230 230 |  | 
| 231 231 | 
             
                def spot(location) # :nodoc:
         | 
| 232 | 
            -
                  ast = RubyVM::AbstractSyntaxTree.parse(compiled_source, keep_script_lines: true)
         | 
| 233 232 | 
             
                  node_id = RubyVM::AbstractSyntaxTree.node_id_for_backtrace_location(location)
         | 
| 234 | 
            -
                   | 
| 233 | 
            +
                  found =
         | 
| 234 | 
            +
                    if RubyVM::InstructionSequence.compile("").to_a[4][:parser] == :prism
         | 
| 235 | 
            +
                      require "prism"
         | 
| 235 236 |  | 
| 236 | 
            -
             | 
| 237 | 
            +
                      if Prism::VERSION >= "1.0.0"
         | 
| 238 | 
            +
                        result = Prism.parse(compiled_source).value
         | 
| 239 | 
            +
                        result.breadth_first_search { |node| node.node_id == node_id }
         | 
| 240 | 
            +
                      end
         | 
| 241 | 
            +
                    else
         | 
| 242 | 
            +
                      node = RubyVM::AbstractSyntaxTree.parse(compiled_source, keep_script_lines: true)
         | 
| 243 | 
            +
                      find_node_by_id(node, node_id)
         | 
| 244 | 
            +
                    end
         | 
| 245 | 
            +
             | 
| 246 | 
            +
                  ErrorHighlight.spot(found) if found
         | 
| 237 247 | 
             
                end
         | 
| 238 248 |  | 
| 239 249 | 
             
                # Translate an error location returned by ErrorHighlight to the correct
         | 
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: actionview
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 8.0.0. | 
| 4 | 
            +
              version: 8.0.0.rc2
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - David Heinemeier Hansson
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date: 2024- | 
| 11 | 
            +
            date: 2024-10-30 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: activesupport
         | 
| @@ -16,14 +16,14 @@ dependencies: | |
| 16 16 | 
             
                requirements:
         | 
| 17 17 | 
             
                - - '='
         | 
| 18 18 | 
             
                  - !ruby/object:Gem::Version
         | 
| 19 | 
            -
                    version: 8.0.0. | 
| 19 | 
            +
                    version: 8.0.0.rc2
         | 
| 20 20 | 
             
              type: :runtime
         | 
| 21 21 | 
             
              prerelease: false
         | 
| 22 22 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 23 23 | 
             
                requirements:
         | 
| 24 24 | 
             
                - - '='
         | 
| 25 25 | 
             
                  - !ruby/object:Gem::Version
         | 
| 26 | 
            -
                    version: 8.0.0. | 
| 26 | 
            +
                    version: 8.0.0.rc2
         | 
| 27 27 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 28 28 | 
             
              name: builder
         | 
| 29 29 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| @@ -86,28 +86,28 @@ dependencies: | |
| 86 86 | 
             
                requirements:
         | 
| 87 87 | 
             
                - - '='
         | 
| 88 88 | 
             
                  - !ruby/object:Gem::Version
         | 
| 89 | 
            -
                    version: 8.0.0. | 
| 89 | 
            +
                    version: 8.0.0.rc2
         | 
| 90 90 | 
             
              type: :development
         | 
| 91 91 | 
             
              prerelease: false
         | 
| 92 92 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 93 93 | 
             
                requirements:
         | 
| 94 94 | 
             
                - - '='
         | 
| 95 95 | 
             
                  - !ruby/object:Gem::Version
         | 
| 96 | 
            -
                    version: 8.0.0. | 
| 96 | 
            +
                    version: 8.0.0.rc2
         | 
| 97 97 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 98 98 | 
             
              name: activemodel
         | 
| 99 99 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 100 100 | 
             
                requirements:
         | 
| 101 101 | 
             
                - - '='
         | 
| 102 102 | 
             
                  - !ruby/object:Gem::Version
         | 
| 103 | 
            -
                    version: 8.0.0. | 
| 103 | 
            +
                    version: 8.0.0.rc2
         | 
| 104 104 | 
             
              type: :development
         | 
| 105 105 | 
             
              prerelease: false
         | 
| 106 106 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 107 107 | 
             
                requirements:
         | 
| 108 108 | 
             
                - - '='
         | 
| 109 109 | 
             
                  - !ruby/object:Gem::Version
         | 
| 110 | 
            -
                    version: 8.0.0. | 
| 110 | 
            +
                    version: 8.0.0.rc2
         | 
| 111 111 | 
             
            description: Simple, battle-tested conventions and helpers for building web pages.
         | 
| 112 112 | 
             
            email: david@loudthinking.com
         | 
| 113 113 | 
             
            executables: []
         | 
| @@ -247,10 +247,10 @@ licenses: | |
| 247 247 | 
             
            - MIT
         | 
| 248 248 | 
             
            metadata:
         | 
| 249 249 | 
             
              bug_tracker_uri: https://github.com/rails/rails/issues
         | 
| 250 | 
            -
              changelog_uri: https://github.com/rails/rails/blob/v8.0.0. | 
| 251 | 
            -
              documentation_uri: https://api.rubyonrails.org/v8.0.0. | 
| 250 | 
            +
              changelog_uri: https://github.com/rails/rails/blob/v8.0.0.rc2/actionview/CHANGELOG.md
         | 
| 251 | 
            +
              documentation_uri: https://api.rubyonrails.org/v8.0.0.rc2/
         | 
| 252 252 | 
             
              mailing_list_uri: https://discuss.rubyonrails.org/c/rubyonrails-talk
         | 
| 253 | 
            -
              source_code_uri: https://github.com/rails/rails/tree/v8.0.0. | 
| 253 | 
            +
              source_code_uri: https://github.com/rails/rails/tree/v8.0.0.rc2/actionview
         | 
| 254 254 | 
             
              rubygems_mfa_required: 'true'
         | 
| 255 255 | 
             
            post_install_message: 
         | 
| 256 256 | 
             
            rdoc_options: []
         |