Перейти к содержанию

Патч 3.6.0.4 (22.10.2021)

Добавление и изменение функциональности

  1. Скрипты “setup” и “upgrade” для Windows/Linux теперь импортируют приложения с параметром “-ignored”, в котором передаётся путь к файлу “Applications/ignored-files.txt” в сборке платформы. Это гарантирует, что файлы логов и другие артефакты не повлияют на возможность импорта карточек приложений.
  2. При работе с путями в storage-объектах добавлена возможность перехода к родительскому элементу. Подробности в документе “Руководство разработчика” в разделе “База знаний”, п. “API для работы со storage-объектами”.
  3. При экспорте карточек шаблонов этапов и вторичных процессов расширен набор выгружаемых во внешние файлы полей, содержащих C# и SQL скрипты. Файлы расположены в подпапке с именем карточки.
  4. При экспорте карточки “Методы расширений” текст метода теперь выгружается во внешний файл, расположенный в подпапке с именем карточки.
  5. В web-клиенте в обсуждениях (форумах) в контроле “Текст с форматированием” увеличен размер вставляемого изображения.
  6. Теперь при импорте карточек, для прикрепленных к ним файлов, по умолчанию всегда считается хэш. Поведение по умолчанию может быть изменено с помощью опций слияния. Информация по опциям слияния содержится в руководстве администратора в разделе “Карточки”, п. “Экспорт и импорт”, пп. “Карточки”.
  7. Добавлен вертикальный скроллинг в выпадающий список с доступными рабочими местами в desktop-клиенте.
  8. При экспорте/импорте карточки теперь вместе с ней экспортируются/импортируются экземпляры бизнес-процессов конструктора процессов.
  9. В web-клиенте для обсуждений добавлена поддержка настройки “Тип обсуждений”.

Новые версии библиотек

  1. .NET 5.0.11
  2. HtmlAgilityPack 1.11.37
  3. linq2db 3.5.0
  4. Microsoft.Data.SqlClient 3.0.1
  5. Npgsql 5.0.10
  6. NTwain 3.7.1
  7. StackExchange.Redis 2.2.79
  8. Swashbuckle.AspNetCore 6.2.3
  9. Unchase.Swashbuckle.AspNetCore.Extensions 2.6.12

Изменения API

  1. В ICardManager изменилась сигнатура метода ReadExportedRequestAsync(), метод больше не возвращает в кортеже IValidationResultBuilder, вместо этого добавлен обязательный параметр IValidationResultBuilder validationResult.
  2. В IStorageSerializer изменилась сигнатура метода DeserializeAsync(), метод больше не возвращает в кортеже IValidationResultBuilder, вместо этого добавлен обязательный параметр IValidationResultBuilder validationResult.
  3. В API тестов добавлены методы HybridClientTestBase.CreateContainerServerAsync() и HybridClientTestBase.InitializeContainerServerAsync(IUnityContainer), предназначенные для создания и инициализации серверного Unity контейнера, используемого в клиентских тестах, выполняющихся на специально подготовленном сервере приложений.
  4. В web-клиенте в модели представления topicEditorViewModel добавлены значения в поле name для элементов меню “Обновить” (Refresh), “Назад к списку топиков” (BackToTopics) и меню (TopicMenu).
  5. В web-клиенте в модели представления topicListViewModel добавлено поле name для меню (TopicListMenu).
  6. Изменены параметры метода StageTypeFormatterBase.AppendString. Удалены параметры: settings и name. Вместо них передавайте само значение. Добавлен параметр appendNewLine, позволяющий управлять добавлением символа новой строки.
  7. Добавлен метод IStoragePathResolver.IsUnambiguous, позволяющий определить, указывает ли путь на единственный элемент хранилища.
  8. Добавлен метод IStoragePathResolver.SetValueWithSuffix, принимающий хранилище типа IList.
  9. В API тестов метод TestConfigurationBuilder.GetExternalPendingActionsProvider заменён на PendingActionsProviderExtensions.RegisterPendingActionsProducer.
  10. Добавлен метод FormattingHelper.FormatNullable<T>(T?, string, IFormatProvider), возвращающий строковое представление объекта с использованием заданного формата, если он задан, иначе значение FormattingHelper.NullText.
  11. Добавлено свойство ICardModel.IsHtmlSanitizingEnabled, установив которое как true в области предпросмотра desktop-клиента выполняется санитайзинг html-документов для противодействия потенциальным угрозам безопасности. Ввиду ограничений, связанных с используемым браузером в области предпросмотра, санитайзинг приводит к искажениям в стилях html-содержимого, поэтому свойство по умолчанию установлено как false. Поскольку документ отображается внутри desktop-клиента, т.е. не внутри полноценного браузера, это не приводит к известным угрозам безопасности.
  12. В API тестов в методы TestHelper.ExecuteSqlScriptsAsync, TestHelper.ExecuteSqlScriptsFromEmbeddedResourcesAsync, TestConfigurationBuilder.ExecuteSqlScripts и атрибут SetupTempDbAttribute добавлена возможность указания таймаута при выполнении SQL-скриптов. В методах таймаут можно задать с помощью параметра timeoutSeconds, в атрибуте SetupTempDbAttribute - с помощью свойства SetupTempDbAttribute.TimeoutSeconds.
  13. В контекст скриптов подсистемы маршрутов IKrScript добавлено свойство CardType, возвращающее тип текущей карточки или значение null, если выполнение происходит вне карточки.
  14. При слиянии карточек в процессе импорта раздел Info из карточки-источника теперь целиком переносится в карточку-назначение. Карточки-сателлиты, содержащиеся в Info, используют ту же логику слияния, как и основные карточки.
  15. В API тестов добавлено свойство HybridClientTestBase.UnityContainerServer, возвращающее Unity-контейнер, используемый на сервере.
  16. В API тестов добавлен класс KrTestContext, предоставляющий дополнительную информацию, используемую в тестах.
  17. В API тестов добавлена возможность переопределения метода, выполняющего валидацию результатов выполнения отложенного действия по умолчанию. Для переопределения необходимо свойству KrTestContext.ValidationFunc задать требуемый метод. Если свойство KrTestContext.ValidationFunc возвращает значение null, то используется метод ValidationAssert.IsSuccessful(ValidationResult).
  18. В API тестов добавлены методы: KrSecondaryProcessBuilderExtensions.SetConditionForCard, KrStageGroupBuilderExtensions.SetConditionForCard и KrStageTemplateBuilderExtensions.SetConditionForCard, позволяющие задать условное выражение, ограничивающее применение вторичного процесса, группы или шаблона этапов указанной карточкой.
  19. В список флагов обработки процесса WorkflowEngineProcessFlags добавлен новый флаг SendToTaskSubscribers, который определяет, нужно ли отправлять сигнал на подписки по заданиям. Использование данного флага добавлено в методы-расширения для обработки сигнала процесса SendSignalToAllSubscribersAsync и SendSignalToAllSubscribersWithContextAsync.
  20. Добавлен метод Tessa.Platform.IO.FileHelper.CreateSubFolderPath(string), который создаёт и возвращает путь к уникальной по имени папке в заданной папке.

Исправления и оптимизации

  1. В контроле “Текст с форматированием” исправлен отображаемый текст для сплэша, который возникает при добавлении файлов Outlook.
  2. В web-клиенте сабсеты в узлах деревьев теперь отображают только уникальные значения.
  3. В web-клиенте для обсуждений добавлена инициализация со стандартными настройками, если настройки не были предоставлены сервером.
  4. Исправлена валидация внешних файлов, прикрепленных к карточке, в методе CardManager.ReadExportedRequestAsync.
  5. В web-клиенте исправлена ошибка, приводившая к тому, что при наличии нескольких элементов управления “Обсуждение” и переходе по ссылке на сообщение оно могло открыться в первом элементе управления, а не в том, в котором была нажата ссылка.
  6. В API тестов в клиентских тестах, выполняющихся на специально подготовленном сервере приложений, исправлена ошибка, из-за которой выполнялась повторная инициализация тестового сервера.
  7. В API тестов исправлена ошибка при создании Unity контейнера, используемого в клиентских тестах, выполняющихся на специально подготовленном сервере приложений. Ошибка приводила к некорректной инициализации Unity контейнера при переопределении TestBase.CreateContainerAsync.
  8. Исправлена ошибка в логике построения метаданных при слиянии карточек в процессе импорта. Неправильно строились уровни метаданных слияния по иерархии секций в карточках. Также данная ошибка приводила к тому, что могли выводиться лишние предупреждения с ключом ParentSectionNotExistsInCardType в случаях, когда этого не должно происходить.
  9. В web-клиенте исправлен баг, из-за которого тайл “Создать карточку” оставался виден, даже когда нет доступных для создания карточек.
  10. При закрытии диалога выбора из представления рабочие места помечаются как отключённые IWorkplaceViewModel.IsActive = false.
  11. В API тестов исправлено освобождение ресурсов, которые были зарегистрированы в IUnityDisposableContainer.
  12. StringWidthLimitConverter.Instance теперь возвращает корректный тип конвертера.
  13. В desktop-клиенте исправлена прокрутка пальцами на тач-скрине в области заданий, когда там отображаются сообщения форумов.
  14. В desktop-клиенте исправлена сериализация метаданных поискового запроса.
  15. Исправлена проверка соединения с существующей базой данных для скриптов setup, upgrade, migrate и export (в Windows и Linux вариантах): вместо подключения к БД master/postgres выполняется подключение к БД TESSA. Это позволяет использовать скрипты для учётных записей СУБД, у которых нет доступа к master/postgres. Исключением являются скрипты setup в режиме создания базы данных.
  16. В маршрутах в этапе “Создать файл по шаблону” исправлена ошибка при отображении параметров этапа. Ошибка воспроизводилась, когда имя шаблона файла являлось строкой локализации и было задано значение в поле “Имя файла”.
  17. В маршрутах исправлена ошибка при отображении параметров этапов. Ошибка воспроизводилась, если в отображаемом параметре была указана строка локализации, длиной превышающая 30 символов.
  18. Если карточка экспортируется в папку без файла .jcard, то при наличии подпапки с именем файла экспорт завершается с ошибкой.
  19. Исправлены ошибки при синтаксическом анализе строкового представления пути в storage-объекте с помощью метода StoragePathParser.Parse.
  20. Исправлено использование зависимостей IStoragePathParser и IStoragePathResolver в объекте StorageValuesKeeper.
  21. Исправлена ошибка при сериализации объекта с учётом контента, расположенного во внешних файлах, с помощью метода StorageSerializer.SerializeAsync, если имя файла, в котором должен располагаться внешний контент, не имеет расширения.
  22. Исправлена ошибка, из-за которой нельзя было экспортировать карточку, если к ней был прикреплен файл, в названии которого имелись символы, не поддерживаемые файловой системой.
  23. В web-клиенте исправлена ошибка при сохранении карточки с файлом, которая могла приводить к лишнему запросу данных карточки с сервера, даже если сохранение не было успешным.
  24. Исправлена ошибка сохранения экземпляра бизнес-процесса в ситуации, когда при запуске бизнес-процесса в его скрипте производился запуск другого процесса, не являющегося подпроцессом.
  25. Исправлены настройки типизированного сериализатора в desktop-клиенте, из-за проблем с которыми у отложенных заданий некорректно сохранялось поле “Отложить до”.
  26. В desktop-клиенте реализована обработка строк локализации в текстовых значениях, передаваемых из master-представления в параметры detail-представления.
  27. Исправлена ошибка, из-за которой при открытии карточки из индикатора новых сообщений в базе не обновлялась дата последнего посещения топика пользователем.
  28. Для desktop-клиента исправлен перезапуск предпросмотра средствами внешних приложений в другой разрядности после ошибки E_FAIL в некоторых инсталляциях.
  29. Исключено появление лишней папки ~/.local/share/’tessa\cache’ при использовании tadmin на Linux. Вы можете её удалить, если она присутствует на сервере для пользователя, от имени которого запускался tadmin.
  30. В web-клиенте исправлена ошибка, из-за которой шаблоны файлов не обновлялись в клиентском кеше.
  31. В web-клиенте исправлена ошибка, из-за которой супермодератор не мог изменить участников обсуждения.
  32. В маршрутах исправлена ошибка учёта изменения порядка этапов. Ошибка приводила к изменению порядка добавленного вручную этапа при пересчёте несохранённой карточки.
  33. В API тестов исправлена ошибка при добавлении нового этапа при использовании методов: RouteBuilder.AddStage и KrStageTemplateBuilder.AddStage.
  34. В классе KrStageSerializer исправлены NRE, если не была установлена информация по сериализуемым секциям и полям.
  35. В web-клиенте исправлена ошибка, из-за которой при закрытии карточки мог появляться диалог с предложением сохранить карточку, даже когда это не требовалось.
  36. Исправлены ошибки “An item with the same key has already been added” в методе HttpHeaders.ThrowDuplicateKeyException() при логине с Kerberos-аутентификацией и в заголовках, перечисленных в разделе “ResponseHeaders” в файле app.json веб-приложения.
  37. Исправлен запуск плагинов Chronos, конструктор которых ссылается на объекты в библиотеке расширений или в других библиотеках, расположенных в папках, которые подключаются в ProbingPath.
  38. Исправлено закрытие вкладки или диалога с карточкой посредством свойства ICardEditorModel.ClosePending при отмене переоткрытия или сохранения карточки указанием context.Cancel = true, или при установке свойства CardGetResponse.CancelOpening. При первом открытии карточки и при её создании отмена открытия вкладки реализуется указанием context.Cancel = true (независимо от свойства ICardEditorModel.ClosePending).
  39. При обновлении с платформы версии 3.5.0 в логе tadmin исправлен вывод информационных сообщений вида “Query expected to update one row but updated 0 rows.” при вызове команды tadmin ConvertBson для таблицы Outbox.
  40. При подписании файлов в desktop-клиенте исправлено появление ошибки “The process cannot access the file”.
  41. Исправлена рассылка почтовых уведомлений по обсуждениям, которая ранее не выполнялась, пока пользователь хотя бы раз не открыл обсуждение в карточке.
  42. В маршрутах исправлена ошибка при выполнении дополнительных сценариев вручную добавленных этапов.
  43. В API тестов исправлена ошибка, приводившая при некорректном использовании параметра “modifyRequestAction” в методах CardLifecycleCompanion<T>.Load/Save/Delete к рассогласованию значений свойств CardID, CardTypeID, CardTypeName и соответствующих значений, указанных в карточке, которой управляет объект.
  44. Исправлена ошибка при клонировании Storage-объектов с помощью метода StorageHelper.Clone, из-за которой у типизированного списка после клонирования мог измениться тип данных на object.
  45. В маршрутах исправлена ошибка, из-за которой не учитывалось значение параметра вторичного процесса “Не отображать сообщение при отсутствии этапов, доступных для выполнения” при запуске процесса с помощью этапа “Создание карточки”.
  46. В маршрутах исправлена ошибка при определении значения плейсхолдера #doc_type_id во всех SQL-скриптах, в которых он разрешён. Вместо плейсхолдера #doc_type_id подставляется идентификатор типа документа текущей карточки или значение null, если тип документа не задан для карточки.
  47. В маршрутах исправлена ошибка, из-за которой не заполнялись свойства IKrEventExtensionContext.MainCardType и IKrEventExtensionContext.MainCardDocTypeID при обработке событий типов: “Создание новой карточки”, “Перед сохранением карточки”, “Сохранение карточки”, “Перед созданием задания”, “Перед завершением задания”, “Создание задания”, “Завершение задания”.
  48. Исправлена ошибка NRE при выполнении метода Tessa.Cards.FileSourceForCard.GetSignaturesCoreAsync. Ошибка происходила, например, при выполнении метода IFileSource.GetSignaturesAsync, если тип файла является виртуальным.
  49. В web-клиенте исправлена ошибка в модуле SAML аутентификации, из-за которой IdP сервер не мог проверить подпись логин-запроса.
  50. Реализована корректная работа расширения “Список файлов в представлении” в форме таблицы.
  51. Исправлены ошибки при отмене транзакции в случае возникновения ошибок при: сохранении основной карточки сателлита или первом создании и сохранении сателлита. Ошибка, например, приводила к завершению задания, если оно завершалось из карточки задачи, но при этом происходила ошибка.
  52. Исправлены ошибки, из-за которых не создавалась карточка сателлита при установленном флаге NoLockingMainCard, который управляет отсутствием блокировки основной карточки при создании или изменении сателлита. Ошибка воспроизводилась при создании карточки сателлита задания.
  53. Исправлена ошибка, возникающая при подписке на уведомления карточки, у которой нет дайджеста.
  54. Исправлена очистка кэша кнопок шаблонов бизнес-процессов при импорте карточек шаблонов бизнес-процессов.
  55. Исправлена ошибка NRE при отправке уведомления, содержащего C# скрипты, сотруднику с правилами уведомлений, содержащих условия.
  56. В API тестов исправлена ошибка при получении информации о процессах, запущенных по карточке с указанным идентификатором. Ошибка затрагивает методы: KrTestHelper.GetWorkflowProcessAsync, KrAssert.HasWorkflowProcessAsync и KrAssert.HasNoWorkflowProcessAsync.
  57. В маршрутах исправлена ошибка, из-за которой этап “Доработка” пропускался, если при переходе в начало текущей группы этапов или на этап “Доработка” выполнялся вторичный процесс, работающий в режиме “Действие” с типом события: “Сохранение карточки” или “Перед сохранением карточки”.
  58. Исправлена передача null вместо объекта карточки в случае формирования тела письма по скрипту, если в INotificationSendContext.GetCardFuncAsync передается метод, возвращающий null.
  59. В web-клиенте исправлена ситуация, при которой в предпросмотре pdf при переключении на постраничный режим с режима прокрутки не сохранялась страница.
  60. В web-клиенте исправлена ситуация, когда при мультивыборе значения из представления в фильтре оставалась пустая строка.
  61. В desktop-клиенте восстановлена поддержка правил инициализации рабочих мест (WorkplaceInitializationRule).
  62. В конструкторе бизнес-процессов исправлена ошибка, когда подписки по умолчанию у запущенных процессов не обновлялись при импорте карточки шаблона бизнес-процесса.
  63. Исправлена проблема при выполнении проверки прав доступа через IKrPermissionsManager, из-за которой при выполнении расчёта или проверки прав доступа дополнительная информация, записываемая в свойство IKrPermissionsManagerContext.Info, также записывалась и в свойство Info контекста расширения, вызвавшего расчёт или проверку прав.
  64. Исправлена проблема, из-за которой при включении типа карточки “Сотрудник” в типовое решение кнопки “Создать копию” и “Создать шаблон” не были доступны обычным сотрудникам, даже если у них был доступ на создание шаблона и копирование карточек в правилах доступа.
  65. Исправлено возможное зависание API Tessa.PdfSharp при попытке открытия файла PDF с определённым содержимым. Актуально при его использовании в расширениях, например, для наложения штампа.
  66. В методе Tessa.Platform.IO.TempFile.AcquireFolder(string) исправлена ошибка, из-за которой возвращаемый объект управлял не временной папкой, а папкой, указанной в параметре.
  67. Исправлена ошибка, из-за которой в реализации интерфейса Tessa.Platform.IO.ITempFolder по умолчанию временная папка не удалялась, если была создана не при создании временного файла через Tessa.Platform.IO.ITempFolder.AcquireFile(string).
  68. В форумах (обсуждениях) desktop-клиента атрибуты вводимого текста теперь по умолчанию всегда соответствуют атрибутам символа, находящегося перед курсором, и не зависят от предыдущей позиции курсора.
  69. В форумах (обсуждениях) desktop-клиента при вставке изображения/ссылки в выделенную область содержимое выделенного блока теперь не сдвигается, а очищается.
  70. В форумах (обсуждениях) desktop-клиента исправлена ошибка, из-за которой при добавлении цветов в незаполненную целиком пользовательскую палитру после обновления исчезал последний из добавленных цветов.
  71. В форумах (обсуждениях) desktop-клиента исправлена ошибка, из-за которой при открытии ссылки на сообщение в текущем топике и наличии нескольких вкладок с обсуждениями, для отображения сообщения всегда выбиралась первая вкладка, а не та, в которой была нажата ссылка.
  72. В форумах (обсуждениях) desktop-клиента в диалоге вставки внешней ссылки исправлена ошибка, из-за которой при вводе длинного адреса либо заголовка ссылки кнопки диалога скрывались под нижней границей окна и становились недоступны для нажатия.
  73. В форумах (обсуждениях) desktop-клиента исправлена ошибка, из-за которой после выбора цвета в контроле “Цвет текста”, “Цвет выделения текста” и “Цвет блока” в области ввода текста курсор менял положение.
  74. В форумах (обсуждениях) desktop-клиента исправлена ошибка, из-за которой при начале ввода первого сообщения в открытом форуме текст терял атрибуты “Подчеркнутый” и “Зачеркнутый”.
  75. В форумах (обсуждениях) desktop-клиента исправлена ошибка, из-за которой после отправки сообщения сбрасывались цвета в контролах “Цвет текста”, “Цвет выделения текста” и “Цвет блока”.
  76. В форумах (обсуждениях) desktop-клиента исправлена ошибка, из-за которой атрибуты вводимого текста в ряде случаев не соответствовали установленным в контролах “Цвет текста” и “Цвет выделения текста”.
  77. В форумах (обсуждениях) desktop-клиента исправлена ошибка, из-за которой атрибуты “Цвет текста”, “Цвет выделения текста”, “Подчеркнутый”, “Зачеркнутый” не применялись при выставлении их перед началом ввода текста в новом сообщении.
  78. В форумах (обсуждениях) desktop-клиента отключены кнопки “Ответить” и “Редактировать” для сообщений с информацией об ошибке.
  79. В форумах (обсуждениях) desktop-клиента исправлено исключение, возникавшее при попытке скопировать в буфер обмена сообщение с информацией об ошибке.
  80. В форумах (обсуждениях) desktop-клиента исправлена ошибка при отображении спецсимволов в сообщениях (неразрывный пробел, знак copyright и т.п.).
  81. В форумах (обсуждениях) desktop-клиента исправлена ошибка, которая возникала при чтении сообщения, содержащего символы ‘<‘ и ‘&’.
  82. В форумах (обсуждениях) desktop-клиента установленные по умолчанию цвета в контролах “Цвет текста”, “Цвет выделения текста” и “Цвет блока” изменены на “Нет цвета”.
  83. В форумах (обсуждениях) desktop-клиента при обновлении форума теперь происходит сброс цветов в контролах “Цвет текста”, “Цвет выделения текста” и “Цвет блока”.
  84. В форумах (обсуждениях) desktop-клиента при вставке ссылки теперь применяются все установленные атрибуты шрифта, кроме цвета.
  85. В форумах (обсуждениях) desktop-клиента при обновлении форума теперь происходит сброс размера шрифта в контроле ввода сообщения.
  86. В форумах (обсуждениях) desktop-клиента при обновлении форума теперь происходит сброс размера шрифта на значение по умолчанию.
  87. В форумах (обсуждениях) desktop-клиента при вставке текста в поле ввода сообщения гарнитура шрифта теперь заменяется на стандартную.
  88. В форумах (обсуждениях) desktop-клиента при вводе текста в блок, а также в позиции после блока шрифт теперь сохраняет ранее установленные атрибуты.
  89. В форумах (обсуждениях) desktop-клиента при вводе списка шрифт теперь сохраняет цвета и атрибуты.
  90. В форумах (обсуждениях) desktop-клиента исправлена ошибка, из-за которой при вставке в начале сообщения нового блока свойство “цвет выделения текста” применялось к фону всего блока, а не к подложке текста.

Обновление на новую сборку

  1. В объектах, описываемых IKrEventExtensionContext, IKrExecutionContext, IKrProcessButtonVisibilityEvaluatorContext, IKrProcessRunnerContext, IKrSecondaryProcessEvaluatorContext, IStageTypeHandlerContext, вместо свойств CardTypeID, CardTypeName и CardTypeCaption необходимо использовать соответствующие значения из свойства CardType.
  2. Удалены методы IStoragePathResolver.ResolveMultiple. Вместо них используйте соответствующие методы IStoragePathResolver.Resolve.
  3. Флаг настроек запуска бизнес-процессов по шаблону бизнес-процесса “WorkflowEngineProcessFlags.CreateNew” переименован в “WorkflowEngineProcessFlags.StartNew”.
  4. В API тестов некоторые методы классов RouteBuilder и PerformerBuilder переделаны на аналогичные с отложенным выполнением. Для выполнения отложенных методов необходимо вызвать метод GoAsync(). Более подробная информация содержится в документе “Руководство разработчика” в разделе “Автоматические тесты NUnit”, п. “Отложенные действия”.
  5. Переделана логика хранения и обработки подписок по умолчанию в шаблонах бизнес-процессов. Теперь подписки не хранятся вместе с экземпляром процесса, а хранятся в объекте шаблона бизнес-процесса. Как следствие, метод IWorkflowInstanceService.GetCommandSubscriptionsAsync теперь не возвращает подписки по умолчанию.

Изменения конфигурации при обновлении

  1. Таблицы:

    • DefaultTimeZone

    • FmUserStat

    • NotificationSubscriptions

  2. Изменены библиотеки локализации.

Back to top