From 3da8c2b38c57ae51f4a0b121a69044059937fa8b Mon Sep 17 00:00:00 2001 From: Matt Jankowski Date: Fri, 28 Feb 2025 10:13:31 -0500 Subject: [PATCH] Remove deprecated `mb_chars` method --- app/lib/hashtag_normalizer.rb | 2 +- app/models/tag.rb | 4 ++-- app/services/batched_remove_status_service.rb | 2 +- app/services/fan_out_on_write_service.rb | 4 ++-- app/services/remove_status_service.rb | 4 ++-- app/validators/note_length_validator.rb | 2 +- app/validators/poll_options_validator.rb | 2 +- app/validators/status_length_validator.rb | 2 +- 8 files changed, 11 insertions(+), 11 deletions(-) diff --git a/app/lib/hashtag_normalizer.rb b/app/lib/hashtag_normalizer.rb index 49fa6101de..5347271194 100644 --- a/app/lib/hashtag_normalizer.rb +++ b/app/lib/hashtag_normalizer.rb @@ -16,7 +16,7 @@ class HashtagNormalizer end def lowercase(str) - str.mb_chars.downcase.to_s + str.downcase.to_s end def cjk_width(str) diff --git a/app/models/tag.rb b/app/models/tag.rb index d29cd220f0..a3ccdd8ac6 100644 --- a/app/models/tag.rb +++ b/app/models/tag.rb @@ -160,11 +160,11 @@ class Tag < ApplicationRecord private def validate_name_change - errors.add(:name, I18n.t('tags.does_not_match_previous_name')) unless name_was.mb_chars.casecmp(name.mb_chars).zero? + errors.add(:name, I18n.t('tags.does_not_match_previous_name')) unless name_was.casecmp(name).zero? end def validate_display_name_change - unless HashtagNormalizer.new.normalize(display_name).casecmp(name.mb_chars).zero? + unless HashtagNormalizer.new.normalize(display_name).casecmp(name).zero? errors.add(:display_name, I18n.t('tags.does_not_match_previous_name')) end diff --git a/app/services/batched_remove_status_service.rb b/app/services/batched_remove_status_service.rb index de4ee16e91..5d6ea2550e 100644 --- a/app/services/batched_remove_status_service.rb +++ b/app/services/batched_remove_status_service.rb @@ -92,7 +92,7 @@ class BatchedRemoveStatusService < BaseService pipeline.publish(status.local? ? 'timeline:public:local:media' : 'timeline:public:remote:media', payload) end - status.tags.map { |tag| tag.name.mb_chars.downcase }.each do |hashtag| + status.tags.map { |tag| tag.name.downcase }.each do |hashtag| pipeline.publish("timeline:hashtag:#{hashtag}", payload) pipeline.publish("timeline:hashtag:#{hashtag}:local", payload) if status.local? end diff --git a/app/services/fan_out_on_write_service.rb b/app/services/fan_out_on_write_service.rb index 3c084bc857..f3aa479c15 100644 --- a/app/services/fan_out_on_write_service.rb +++ b/app/services/fan_out_on_write_service.rb @@ -128,8 +128,8 @@ class FanOutOnWriteService < BaseService def broadcast_to_hashtag_streams! @status.tags.map(&:name).each do |hashtag| - redis.publish("timeline:hashtag:#{hashtag.mb_chars.downcase}", anonymous_payload) - redis.publish("timeline:hashtag:#{hashtag.mb_chars.downcase}:local", anonymous_payload) if @status.local? + redis.publish("timeline:hashtag:#{hashtag.downcase}", anonymous_payload) + redis.publish("timeline:hashtag:#{hashtag.downcase}:local", anonymous_payload) if @status.local? end end diff --git a/app/services/remove_status_service.rb b/app/services/remove_status_service.rb index dc9fb6cab6..522437aeac 100644 --- a/app/services/remove_status_service.rb +++ b/app/services/remove_status_service.rb @@ -123,8 +123,8 @@ class RemoveStatusService < BaseService return if skip_streaming? @status.tags.map(&:name).each do |hashtag| - redis.publish("timeline:hashtag:#{hashtag.mb_chars.downcase}", @payload) - redis.publish("timeline:hashtag:#{hashtag.mb_chars.downcase}:local", @payload) if @status.local? + redis.publish("timeline:hashtag:#{hashtag.downcase}", @payload) + redis.publish("timeline:hashtag:#{hashtag.downcase}:local", @payload) if @status.local? end end diff --git a/app/validators/note_length_validator.rb b/app/validators/note_length_validator.rb index 554ad49ce2..98dd1d2562 100644 --- a/app/validators/note_length_validator.rb +++ b/app/validators/note_length_validator.rb @@ -8,7 +8,7 @@ class NoteLengthValidator < ActiveModel::EachValidator private def too_long?(value) - countable_text(value).mb_chars.grapheme_length > options[:maximum] + countable_text(value).length > options[:maximum] end def countable_text(value) diff --git a/app/validators/poll_options_validator.rb b/app/validators/poll_options_validator.rb index 0ac84f93f4..b59c3b365e 100644 --- a/app/validators/poll_options_validator.rb +++ b/app/validators/poll_options_validator.rb @@ -7,7 +7,7 @@ class PollOptionsValidator < ActiveModel::Validator def validate(poll) poll.errors.add(:options, I18n.t('polls.errors.too_few_options')) unless poll.options.size > 1 poll.errors.add(:options, I18n.t('polls.errors.too_many_options', max: MAX_OPTIONS)) if poll.options.size > MAX_OPTIONS - poll.errors.add(:options, I18n.t('polls.errors.over_character_limit', max: MAX_OPTION_CHARS)) if poll.options.any? { |option| option.mb_chars.grapheme_length > MAX_OPTION_CHARS } + poll.errors.add(:options, I18n.t('polls.errors.over_character_limit', max: MAX_OPTION_CHARS)) if poll.options.any? { |option| option.length > MAX_OPTION_CHARS } poll.errors.add(:options, I18n.t('polls.errors.duplicate_options')) unless poll.options.uniq.size == poll.options.size end end diff --git a/app/validators/status_length_validator.rb b/app/validators/status_length_validator.rb index dc841ded3e..527ec78edb 100644 --- a/app/validators/status_length_validator.rb +++ b/app/validators/status_length_validator.rb @@ -18,7 +18,7 @@ class StatusLengthValidator < ActiveModel::Validator end def countable_length(str) - str.mb_chars.grapheme_length + str.length end def combined_text(status)