Разработчики почтового клиента Thunderbird объявили о начале интеграции в кодовую базу компонентов, написанных на языке Rust. В следующий значительный выпуск Thunderbird, релиз которого ожидается в июле этого года, войдёт код с реализацией почтового протокола Microsoft Exchange Web Services (EWS), реализованный на языке Rust. Поддержка доступа к календарю и адресной книге Microsoft Exchange будет добавлена позднее. Встроенная реализация позволит обойтись без установки сторонних дополнений, через которые до сих пор обеспечивалась поддержка Microsoft Exchange.
Отмечается, что использование языка Rust для реализации намеченной функциональности позволит снизить вероятность совершения ошибок при работе с памятью, обеспечит увеличение производительности по сравнению с дополнением на JavaScript и позволит вписаться в существующую экосистему, развивающую связанные с электронной почтой модули на языке Rust. Интеграцию средств для разработки на новом языке упрощает то, что Rust уже применяется в Firefox и в Thunderbird можно будет задействовать уже существующую инфраструктуру для тестирования и непрерывной интеграции, а также обвязки XPCOM (Cross-Platform Component Object Model) для взаимодействия компонентов на языке Rust с кодом на C++ и JavaScript.
Из недостатков интеграции поддержки Rust отмечается увеличение кодовой базы, необходимость создания недостающих привязок и адаптация для работы с кодом на Rust некоторых асинхронных обработчиков, не сочетаемых с моделью асинхронных операций в Rust.
Из других возможностей, запланированных для включение в июльский ESR-выпуск Thunderbird можно упомянуть:
- Поддержка синхронизации настроек между системами через привязку к учётной записи в Mozilla Account.
- Переход на новую глобальную базу хранения сообщений, позволяющую реализовать альтернативные способы отображения переписки.
- Продолжение развития режима вертикальной компоновки списка сообщений (Card View), стилизованного под мобильные интерфейсы в которых элементы показываются в форме «плоских» карт.
- Полноценная поддержка тёмного режима оформления, применимая к сообщениям и изображениям.
- Новые возможности панели со списком почтовых папок (Folder Pane).
- Создание Account Hub, единой точки настройки всех учётных записей.
- Интеграция встроенного движка машинного перевода Firefox Translate.
Источник: opennet.ru