-
-
Notifications
You must be signed in to change notification settings - Fork 14
Open
Labels
Description
Describe the bug
inflector.humanize("éclaireurs")
#=> "éclaireurs"
The uppercase version "é" is "É". I expected to receive "Éclaireurs". This affects all characters I tried: ê, ï, à.
It could be argued that it isn't the job of the inflector to work in such cases, but the API is convenient :)
In the Hanami 2.2 app that I'm building, humans will record roles in a field. The roles may be typed in different casings, but I normalize to downcase for sorting, then humanize for display. I will add a #normalized_role to make things consistent, but having this in the inflector sure would have been nice.
To Reproduce
require 'bundler/inline'
gemfile do
gem 'dry-inflector', '~> 1.0'
end
puts RUBY_VERSION
inflector = Dry::Inflector.new
actual = inflector.humanize('éclaireurs')
if actual == 'Éclaireurs'
puts 'OK'
else
p actual
puts 'failed'
endExpected behavior
"éclaireurs" #=> "Éclaireurs"
My environment
- Affects my production application: YES, but not a biggie for now
- Ruby version: 3.2.4
- OS:
Sonoma 14.5 (23F79)