dosubot[bot] commented on issue #34615: URL: https://github.com/apache/superset/issues/34615#issuecomment-3167405081
<!-- Greeting --> Hi @zmeygarinich! I'm [Dosu](https://go.dosu.dev/dosubot) and I’m helping the superset team. <!-- Answer --> Виджет "Календарная тепловая карта" в Superset 5.0 отображает названия месяцев на английском языке, потому что его реализация использует d3.time.format без поддержки локализации — в коде не происходит установка русской локали для D3.js, и настройки BABEL_DEFAULT_LOCALE или D3_TIME_FORMAT из superset_config.py не передаются в компонент календаря. Даже если вы указали русские месяцы в D3_TIME_FORMAT, при использовании формата "adaptive" или по умолчанию, месяц всегда будет на английском, так как d3.time.format использует только встроенную (английскую) локаль, если явно не задана другая [подробнее] (https://github.com/apache/superset/issues/31790). В коде виджета (Calendar.js и cal-heatmap.js) нет механизма для передачи локали или пользовательских названий месяцев в D3.js — все форматирование дат происходит через d3.time.format('%B'), который всегда возвращает английские месяцы, если не использовать d3.timeFormatLocale с нужной локалью [см. детали реализации](https://github.com/apache/superset/blob/829e4d92d91ceae4b43b1ed3b063ffe45377799c/superset-frontend/plugins/legacy-plugin-chart-calendar/src/vendor/cal-heatmap.js). На данный момент нет штатного способа добиться русских названий месяцев в этом виджете только через конфиг. Для поддержки локализации потребуется доработка: нужно добавить возможность передавать d3.timeFormatLocale с русскими месяцами в компонент календаря и использовать его для форматирования дат. В качестве временного обходного пути можно попробовать явно задать формат даты (например, %m или %Y), чтобы избежать вывода английских названий, но полноценная локализация требует изменений в коде [подробнее](https://github.com/apache/superset/issues/31790). Похожие проблемы с локализацией дат и месяцев обсуждаются в [issue #31790](https://github.com/apache/superset/issues/31790). <!-- Dosu Comment Footer --> *To reply, just mention [@dosu](https://go.dosu.dev/dosubot).* --- <sup>How did I do? [Good](https://app.dosu.dev/response-feedback/22b87965-289f-4c1e-bcb9-3f43eee22be3?feedback_type=great_response) | [Irrelevant](https://app.dosu.dev/response-feedback/22b87965-289f-4c1e-bcb9-3f43eee22be3?feedback_type=irrelevant_answer) | [Incorrect](https://app.dosu.dev/response-feedback/22b87965-289f-4c1e-bcb9-3f43eee22be3?feedback_type=incorrect_sources) | [Verbose](https://app.dosu.dev/response-feedback/22b87965-289f-4c1e-bcb9-3f43eee22be3?feedback_type=too_verbose) | [Hallucination](https://app.dosu.dev/response-feedback/22b87965-289f-4c1e-bcb9-3f43eee22be3?feedback_type=hallucination) | [Report 🐛](https://app.dosu.dev/response-feedback/22b87965-289f-4c1e-bcb9-3f43eee22be3?feedback_type=bug_report) | [Other](https://app.dosu.dev/response-feedback/22b87965-289f-4c1e-bcb9-3f43eee22be3?feedback_type=other)</sup> [](https://app.dosu.dev/a28d3c7e-a9d3-459e-9fb6-3a6f9ff4f357/ask?utm_source=githu b) [](https://go.dosu.dev/discord-bot) [](https://twitter.com/intent/tweet?text=%40dosu_ai%20helped%20me%20solve%20this%20issue!&url=https%3A//github.com/apache/superset/issues/34615) -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: notifications-unsubscr...@superset.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: notifications-unsubscr...@superset.apache.org For additional commands, e-mail: notifications-h...@superset.apache.org