История изменений/0.96.1
Изменение формата базы: текущий драйвер базы Dbx_mdbx будет окончательно заменён новым драйвером Dbx_sqlite.
При первом запуске после обновления вы получите сообщение «Формат вашей базы является устаревшим. Нажмите "Да", чтобы преобразовать её в новый формат или "Нет", чтобы вернуться назад». Преобразование базы произойдёт в автоматическом режиме. Будет создана резервная копия старой базы. Кроме того, перед обновлением стоит сделать копию базы вручную.
Также перед обновлением настоятельно рекомендуется выполнить проверку базы (Главное меню → База данных → Проверить базу) и сжать базу (Главное меню → База данных → Сжать базу).
Для преобразования понадобятся драйвер Dbx_mdbx и плагин Import. Если они не установлены, вы увидите сообщение об ошибке и ссылку, по которой сможете скачать плагин.
Если какая-то из учётных записей использовала протокол Dummy с нестандартным ID (настройка «Уникальные настройки ID»), то контакты этой учётной записи придётся импортировать из старого профиля вручную.
После преобразования режим шифрование базы будет сброшен на «Стандартный», а пароль (если он имелся) удалён. Не забудьте выбрать желаемый режим шифрования и установить пароль, если это нужно.Если перестала работать отправка сообщений по горячей клавише (Ctrl+Enter, Shift+Enter и т. п.), следует задать желаемое сочетание в разделе настроек Тонкая настройка → Горячие клавиши.
Ядро и библиотеки
- появилась возможность скрывать групповые чаты из списка контактов (как обычные контакты).
- добавлена поддержка сборки с помощью Visual Studio 2022.
- сделан первый шаг навстречу Linux — теперь ядро mir_core может быть собрано под эту операционную систему.
- обновлены библиотеки BASS, BASSWMA, libcurl, libtox, PCRE, pthreads-win32 (pthreads4w), SQLite и TinyXML2.
- инсталлятор теперь помещает звуковые файлы в %miranda_path%\Sounds, а не в %miranda_path%\Skins\Sounds.
- из инсталлятора удалён протокол GG (протокол по-прежнему будет поддерживаться Мирандой).
- Issue #2871 исправлено падение при открытии окна сообщений.
- исправлено падение, возникавшее в случаях, когда имя учётной записи совпадало с именем протокола.
- исправлены проблемы при завершении работы приложения.
- Issue #2992 исправлена невозможность удаления autoexec-файлов, когда Миранда установлена в Program Files (теперь будет запрашиваться повышение прав).
- Issue #3012 исправлено падение при попытке назначить горячую клавишу на действие, в имени которого есть косая черта.
- форма импорта autoexec-файлов: кнопка Переместить больше не удаляет файл, если новое имя файла совпадает со старым.
- Issue #3048 запрещено отключать плагин, если отсутствует плагин ядра, предоставляющий аналогичные функции (например, не получится отключить TabSRMM при отсутствующем StdMsg, чтобы пользователь не оставил себя без окна сообщений).
- Issue #3084 исправлено падение при попытке изменить промежуток между кнопками в окне сообщений.
- налажено переподключение при выходе из спящего режима под Wine.
Протоколы
- Discord
- Issue #2994 разработка этого протокольного плагина прекращена. Компания Discord Inc. максимально затрудняет разработку протокола и заблокировала учётные записи разработчиков. Контакты и история будут автоматически переведены на протокол Dummy.
- EmLanProto
- Issue #2897 исправлено зависание при выходе.
- Facebook
- Issue #2901 добавлено всплывающее окно о неверном логине/пароле.
- удалена возможность поиска контактов (она не реализована в протоколе и была лишь иллюзией, смущавшей пользователей).
- налажено чтение контактов у учётных записей, имеющих более 500 друзей.
- ICQ
- исправлено редкое падение при входе.
- Issue #2733 заблокированные спамерские чаты больше не висят в списке контактов как "Неизвестные контакты".
- налажено добавление контакта.
- Issue #2940 налажено обновление статусов контактов, которые поменяли статус во время текущей сессии.
- Issue #2964 исправлена ошибочная загрузка контактов MRA у пользователей, чья учётная запись ICQ связана с почтой @mail.ru.
- Issue #2972 налажен вход/регистрация по номеру телефона.
- Issue #2981 налажен поиск контактов у пользователей, вошедших по номеру телефона.
- Issue #2988 исправлено падение при отмене передачи файла.
- Issue #2989 налажена загрузка истории у пользователей, вошедших по номеру телефона.
- налажено чтение описаний передаваемых файлов.
- IRC
- Issue #3000 всплывающее окно о неполных настройках протокола больше не будет беспокоить пользователей, пока протокол находится «Не в сети».
- Issue #2928 удалена настройка «Поддержка скриптов».
- Jabber
- реализовано управление всплывающими окнами об ошибках (Настройки → Всплывающие окна → События).
- добавлена скрытая настройка "DisableOmemo", позволяющая отключить поддержку OMEMO для выбранного контакта.
- добавлена поддержка поля с описанием во входящих внеполосных передачах файлов.
- по соображениям приватности добавлена настройка «Отвечать на запросы локального времени и часового пояса (XEP-0202)» (благодаря @deadsend).
- Issue #1255 в информацию о контакте добавлены сведения об OMEMO.
- Issue #2911 в личные данные добавлены сведения об OMEMO.
- добавлено сообщение для клиентов, не поддерживающих OMEMO.
- Issue #3022 добавлено сообщение про неудавшийся приём файла.
- Issue #3038 по соображениям приватности отключена по умолчанию настройка «Отправлять информацию об операционной системе в запросах версии».
- Issue #3041 удалён список предустановленных XMPP-серверов.
- Issue #2750 налажена поддержка XEP-0384: OMEMO Encryption (благодаря @deadsend). Протестировано в связке из Миранды и Conversations/Gajim/Psi+.
- исправлена отрисовка значков настроения в списке контактов (как значков расширенного статуса).
- Issue #2910 исправлены проблемы с подключением.
- Issue #2915 исправлена задержка при выходе.
- Issue #3014 MirVer больше не содержит пробел в случаях, когда отсутствуют сведения о клиенте собеседника.
- Issue #3015 исправлено падение при запуске.
- Issue #3064 исправлена работа скрытой настройки "Identity" (версия клиента поддерживалась лишь в Service Discovery, но не в сведениях о пользователей).
- недавние изменения темы в групповом чате больше не вызывают получение оповещения о новом сообщении в чате при каждом входе.
- LotusNotify
- Issue #3007 исправлено падение при выборе учётной записи.
- MRA
- Issue #2934 налажен вход с постоянным паролем.
- Issue #2939 исправлена невозможность войти в учётную запись MRA по номеру телефона, если тот же номер привязан ещё и к ICQ.
- Omegle
- Issue #2947 исправлены проблемы со входом.
- Issue #2976 исправлено падение.
- SkypeWeb
- Issue #2588 появилась возможность загрузить с сервера более 100 последних сообщений.
- Issue #2946 исправлены проблемы со входом.
- Twitter
- исправлено редкое падение при чтении аватара.
- исправлено некорректное отображение символов Юникода в именах в чате.
- твиты от неизвестных контактов теперь создаются, как временные контакты, а не игнорируются.
- VKontakte
- добавлен костыль для входа сразу же после того, как пользователь ввёл код подтверждения (VK присылает 404 вместо токена и Миранда не могла войти, пока пользователь не переподключит соединение).
- налажена работа статуса «Невидимый».
- налажена авторизация.
- налажена отправка аудиосообщений.
- налажена двухфакторная авторизация.
- исправлена форма ввода капчи.
- Issue #2965 исправлено некорректное отображение в Scriver кириллических сообщений о действиях на странице.
Плагины
- AVS
- исправлено повреждение памяти.
- Issue #3025 исправлено падение.
- Issue #3043 налажена перезагрузка аватаров после их удаления с локального диска.
- ClientChangeNotify
- управление всплывающими окнами переехало из Главное меню → Всплывающие окна в Настройки → Всплывающие окна → События.
- Clist_modern
- Issue #2895 исправлены различные проблемы со встроенными списками контактов, метаконтактами и перетаскиванием.
- Issue #2991 исправлено падение при перемещении группы.
- исправлено редкое падение под Wine.
- CrashDumper
- Issue #2993 удалена поддержка vi.miranda-ng.org. Сервис закрыт из-за низкой популярности среди пользователей.
- CurrencyRates
- добавлен модификатор %d, позволяющий визуализировать дельту курса.
- DbChecker
- возвращена возможность исправлять кодировку UTF-8 в старых событиях.
- Issue #3020 добавлена настройка «Удалить дубликаты событий».
- Db autobackups
- Issue #1281 настройка «Использовать CloudFile» больше не доступна, если не установлен плагин CloudFile.
- управление всплывающими окнами переехало из Главное меню → Всплывающие окна в Настройки → Всплывающие окна → События.
- DbEditorPP
- налажено удаление глобальных настроек.
- Dbx_mdbx
- Issue #2771 удалены все MDBX-утилиты, поскольку все базы будут преобразованы в формат SQLite.
- Dbx_sqlite
- Issue #2917 исправлено повреждение базы при одновременном измении пароля и режима шифрования.
- Issue #2958 налажено сжатие базы (оно попросту не работало).
- Dummy
- Issue #3004 улучшен автоматический перевод учётных записей устаревших протоколов на протокол Dummy.
- IEView
- исправлены сломанные шаблоны.
- Issue #3023 налажено отображений описаний передаваемых файлов.
- Import
- реализована поддержка импорта из JSON событий, связанных с файламиa.
- налажена установка корректного размера блобов при импорте из JSON.
- MessageState
- Issue #2884 налажено отображение времени.
- Msg_Export
- Issue #2942 в меню контакта добавлен пункт «Экспортировать историю».
- налажена замена идентификаторов контактов в имени файла.
- налажен экспорт описаний файлов.
- mRadio
- теперь плагин ищет ini-файлы в %miranda_path%\Plugins\mRadio, а не в %miranda_path%\Plugins. Переместите свои ini-файлы в соответствующий каталог.
- NewEventNotify
- настройки «Отключить уведомления о событиях сообщений» и «Отключить уведомления о событиях групповых чатов» переименованы в «Включить уведомления о событиях сообщений» и «Включить уведомления о событиях групповых чатов» соответственно.
- удалена настройка «Пункт в меню "Вспл. окна"» (управление всплывающими окнами переехало из Главное меню → Всплывающие окна в Настройки → Всплывающие окна → События.).
- NewXstatusNotify
- управление всплывающими окнами переехало из Главное меню → Всплывающие окна в Настройки → Всплывающие окна → События.
- NotesReminders
- добавлен значок напоминания в высоком разрешении (благодаря C1eriC).
- Issue #2793 исправлены проблемы с созданием напоминаний.
- Issue #2898 исправлено пропадание заметок при перезапуске программы.
- OpenSSL
- Issue #2912 разработка плагина прекращена. Функциональность плагина перенесена в ядро.
- Ping
- Issue #2999 исправлено зависание при выходе.
- Issue #3006 исправлены различные проблемы с фреймом.
- PluginUpdater
- удалена настройка «Использовать HTTPS» (поскольку все защищённые соединения теперь обрабатываются с помощью библиотек OpenSSL, входящих в базовую поставку, больше не требуется отключать поддержку HTTPS в устаревших операционных системах).
- Issue #3003 налажена настройка цвета всплывающих окон.
- Issue #3008 налажено переключение между архитектурами (32-разрядная ←→ 64-разрядная).
- Issue #3085 налажено переключение между каналами обновления.
- ProxySwitch
- управление всплывающими окнами переехало из Главное меню → Всплывающие окна в Настройки → Всплывающие окна → События.
- QuickSearch
- плагин переписан с Pascal на C++.
- удалена кнопка Закрыть (для закрытия окна существует крестик в заголовке окна).
- Scriver
- Issue #3057 удалена настройка «Отправлять по:». Горячие клавиши для управления отправкой сообщений следует указывать с помощью настройки Тонкая настройка → Горячие клавиши → Сообщения → Действие: отправить сообщение.
- Issue #3028 налажена работа горячей клавиши Ctrl+F.
- Issue #3083 исправлено закрытие окна сообщений при открытии диалогового окна настроек.
- StdMsg
- Issue #3057 удалены настройки «Отправлять по двойному Enter», «Отправлять по Enter» и «Отправлять по Ctrl+Enter». Горячие клавиши для управления отправкой сообщений следует указывать с помощью настройки Тонкая настройка → Горячие клавиши → Сообщения → Отправить сообщение.
- Issue #3061 исправлены проблемы, возникавшие при включении плагина.
- StdSSL
- Issue #2912 разработка плагина прекращена, как прекращена и поддержка Microsoft CryptoAPI. Все защищённые соединения теперь обрабатываются с помощью библиотек OpenSSL, входящих в базовую поставку.
- StdUIHist
- Issue #2893 добавлена горячая клавиша Ctrl+F.
- Issue #2906 добавлена горячая клавиша F3.
- Issue #2907 добавлена горячая клавиша Del.
- Issue #2914 добавлена возможность очистки системной истории.
- Issue #2906 введённый в окно поиска текст больше не пропадает при закрытии и повторном открытии окна поиска.
- Issue #2907 множественное нажатие кнопки Найти... больше не открывает несколько окон поиска.
- TabSRMM
- добавлена новая "Aero"-тема (подходит для тёмных тем лучше, чем прочие).
- Issue #2984 исправлена ошибка, из-за которой невозможно было изменить цвет и шрифт событий смены статуса.
- управление всплывающими окнами переехало из Главное меню → Всплывающие окна в раздел настроек Всплывающие окна → События.
- Issue #3058 настройки всплывающих окон для групповых чатов переехали в раздел настроек Всплывающие окна → Чаты.
- Issue #3071 настройка «Всплывающие окна, когда пользователь набирает текст» переехала в раздел настроек Всплывающие окна → События.
- Issue #1950 удалён встроенный движок уведомлений (фактически внутрь TabSRMM была вшита древняя и устаревшая версия NewEventNotify). Теперь эти функции выполняет плагин NewEventNotify, который поставляется вместе с TabSRMM.
- Issue #3057 удалены настройки «Отправлять по Shift+Enter», «Отправлять по Enter» и «Отправлять по двойному Enter». Горячие клавиши для управления отправкой сообщений следует указывать с помощью настройки Тонкая настройка → Горячие клавиши → Окна сообщений - все → Отправить сообщение.
- Issue #3028 налажена работа горячей клавиши Ctrl+F.
- Issue #3055 встроенный журнал больше не обрезает длинные сообщения об ошибках.
- Toaster
- Issue #3076 исправлено падение при включении плагина.
- UInfoEx
- налажен корректный подсчёт среднего возраста.
- Issue #3001 удалена устаревшая поддержка mBirthday.
- Issue #3018 удалена сломанная и нежелательная сортировка по столбцам в списке праздников.
- Weather
- Issue #2872 добавлено состояние «partly sunny» в качестве синонима «cloudy».
- добавлено определение погодных условий «Snow Shower» и «Rain Shower».
- добавлена поддержка gismeteo.com и gismeteo.ru (благодаря Dimtr).
- Issue #2886 теперь погода отображается в списке контактов как экстразначок, а не как статус.
- управление всплывающими окнами переехало из Главное меню → Всплывающие окна в Настройки → Всплывающие окна → События.
- прекращена поддержка старых файлов gismeteo.ini и weatherxml.ini.
- налажено обновление времени для MSN Weather.
- Issue #2872 налажено корректное переопределение значков.
- Issue #2889 исправлена ошибка, препятствующая корректной локализации.
- Issue #2931 добавлена поддержка ini-файлов в кодировке UTF-8.
- WhenWasIt
- Issue #3001 удалена устаревшая поддержка mBirthday.
- WhoUsesMyFiles
- управление всплывающими окнами переехало из Главное меню → Всплывающие окна в Настройки → Всплывающие окна → События.
- XSoundNotify
- исправлено падение при заходе в настройки плагина.
- YAMN
- Issue #3021 удалена вкладка «Плагины».
Разработчикам
- добавлены новые методы: CCtrlListView::MoveItem, CCtrlListView::SetCurSel и CCtrlCombo::SelectData.
- скрытая функция Proto_GetAccount экспортирована как Proto_GetContactAccount.
- добавлен удобный хелпер для выпадающих списков — CCtrlCombo::GetCurData.
- добавлена обёртка для команды WM_SETREDRAW — SetDraw(bool bEnable).
- добавлена Юникод-версия регистронезависимого поиска подстроки — mir_wstrstri.
- добавлен сервис для очистки истории — MS_HISTORY_EMPTY.
- в ядро добавлена функция для определения необходимости отрисовать значок щита на кнопке в случаях, когда требуется повышение привилегий — PU::IsMirandaFolderWritable.
- добавлены новые хелперы базы — db_is_module_empty и db_copy_module.
- старая структура NETLIBOPENCONNECTION преобразована в набор параметров — Netlib_OpenConnection.