Fix deprecation warning in ActiveModel::Errors
What does this MR do?
Fix deprecation warning in ActiveModel::Errors
.
From the deprecation warning:
DEPRECATION WARNING: Enumerating ActiveModel::Errors as a hash has been deprecated. In Rails 6.1,
errors
is an array of Error objects, therefore it should be accessed by a block with a single block parameter like this:person.errors.each do |error| attribute = error.attribute message = error.message end
You are passing a block expecting two parameters, so the old hash behavior is simulated. As this is deprecated, this will result in an ArgumentError in Rails 6.2. (called from map at /Users/tanle/Code/gitlab/gitlab-development-kit/gitlab/app/helpers/form_helper.rb:13)
- Fix Rails/ContentTag violations
- Fix duplicate method calls
Steps to reproduce
Run the following spec and observe the above deprecation warning.
bundle exec rspec --format documentation gitlab/spec/helpers/form_helper_spec.rb
Does this MR meet the acceptance criteria?
Conformity
-
I have included changelog trailers, or none are needed. (Does this MR need a changelog?) -
I have added/updated documentation, or it's not needed. (Is documentation required?) -
I have properly separated EE content from FOSS, or this MR is FOSS only. (Where should EE code go?) -
I have added information for database reviewers in the MR description, or it's not needed. (Does this MR have database related changes?) -
I have self-reviewed this MR per code review guidelines. -
This MR does not harm performance, or I have asked a reviewer to help assess the performance impact. (Merge request performance guidelines) -
I have followed the style guides. -
This change is backwards compatible across updates, or this does not apply.
Availability and Testing
-
I have added/updated tests following the Testing Guide, or it's not needed. (Consider all test levels. See the Test Planning Process.) -
I have tested this MR in all supported browsers, or it's not needed. -
I have informed the Infrastructure department of a default or new setting change per definition of done, or it's not needed.
Edited by Tan Le