<commit_before># ActiveModel Detailed Errors

This is just a temporary gem to bring [this feature](https://github.com/rails/rails/pull/18322) that is scheduled for Rails 5 to the ancient world of Rails 4. This is a blatant copy and paste of that PR so full forward compatibility is ensured.

## What this does?

If you didn't read the PR, this is a fix to what `ActiveModel#Error` does. When you validate something, you get errors wrapped in this object. In Rails 3 and 4, this object just contained a simple **string** with the message of the validation. That was a very limited behavior because when you did this:

```ruby
errors.add(:base, :not_enough_monkeys, count: 100)<commit_msg>docs(REAMDE): add no longer maintained message<commit_after># ActiveModel Detailed Errors

This is just a temporary gem to bring [this feature](https://github.com/rails/rails/pull/18322) that is scheduled for Rails 5 to the ancient world of Rails 4. This is a blatant copy and paste of that PR so full forward compatibility is ensured.

## ActiveModel Detailed Errors is no longer maintained.

- We will leave the Issues open as a discussion forum only.
- We do not guarantee a response from us in the Issues.
- We are no longer accepting pull requests.

## What this does?

If you didn't read the PR, this is a fix to what `ActiveModel#Error` does. When you validate something, you get errors wrapped in this object. In Rails 3 and 4, this object just contained a simple **string** with the message of the validation. That was a very limited behavior because when you did this:

```ruby
errors.add(:base, :not_enough_monkeys, count: 100)
{'fraction_non_alphanumeric': 0.06523076923076923, 'fraction_numerical': 0.014769230769230769, 'mean_word_length': 4.438127090301004, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '7089445', 'n_tokens_mistral': 461, 'n_tokens_neox': 412, 'n_words': 250}