История изменений/0.96.1

From Miranda NG
Jump to navigation Jump to search

Version: 0.96.1

Rev: v0.96.1

Released: 2 June 2022

Important
Изменение формата базы: текущий драйвер базы Dbx_mdbx будет окончательно заменён новым драйвером Dbx_sqlite.

При первом запуске после обновления вы получите сообщение «Формат вашей базы является устаревшим. Нажмите "Да", чтобы преобразовать её в новый формат или "Нет", чтобы вернуться назад». Преобразование базы произойдёт в автоматическом режиме. Будет создана резервная копия старой базы. Кроме того, перед обновлением стоит сделать копию базы вручную.

Также перед обновлением настоятельно рекомендуется выполнить проверку базы (Главное меню → База данных → Проверить базу) и сжать базу (Главное меню → База данных → Сжать базу).

Для преобразования понадобятся драйвер Dbx_mdbx и плагин Import. Если они не установлены, вы увидите сообщение об ошибке и ссылку, по которой сможете скачать плагин.

Если какая-то из учётных записей использовала протокол Dummy с нестандартным ID (настройка «Уникальные настройки ID»), то контакты этой учётной записи придётся импортировать из старого профиля вручную.

После преобразования режим шифрование базы будет сброшен на «Стандартный», а пароль (если он имелся) удалён. Не забудьте выбрать желаемый режим шифрования и установить пароль, если это нужно.
Note
Если перестала работать отправка сообщений по горячей клавише (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.
  • 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, но не в сведениях о пользователей).
    • недавние изменения темы в групповом чате больше не вызывают получение оповещения о новом сообщении в чате при каждом входе.
  • MRA
    • Issue #2934 налажен вход с постоянным паролем.
    • Issue #2939 исправлена невозможность войти в учётную запись MRA по номеру телефона, если тот же номер привязан ещё и к ICQ.
  • 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.
  • 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.
  • WhoUsesMyFiles
    • управление всплывающими окнами переехало из Главное меню → Всплывающие окна в Настройки → Всплывающие окна → События.
  • XSoundNotify
    • исправлено падение при заходе в настройки плагина.

Разработчикам

  • добавлены новые методы: 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.