Встречайте новый релиз FastCube .NET 2025.1 — перезапуск продукта с множеством ключевых изменений. Это мажорное обновление включает важные улучшения в архитектуре, поддержку новых платформ и расширение возможностей для разработчиков OLAP-компонентов.
System.Drawing.Common в FastCube.CoreОдним из ключевых изменений в релизе FastCube .NET 2025.1 стало полное удаление зависимости от библиотеки System.Drawing.Common в модуле FastCube.Core. Этот шаг был предпринят с целью повышения совместимости библиотеки с различными платформами и улучшения производительности.
Графические возможности, которые раньше реализовывались через System.Drawing.Common, были переработаны. Теперь FastCube .NET использует более современные и кросс-платформенные подходы для работы с визуализацией данных и другими элементами интерфейса. В частности, работа с чартами и визуальными компонентами была вынесена в отдельные библиотеки. Это даёт больше гибкости в управлении зависимостями и использовании графики в отчётах.
В новой версии для указания шрифта в стилях FastCube .NET необходимо использовать класс FastFont вместо Font. Новая реализация шрифта не содержит какой-либо логики, и является только контейнером для данных.
Одним из самых значительных изменений в релизе FastCube .NET 2025.1 стало полное выделение OLAP-движка в отдельную библиотеку — FastCube.Core.
Если вам не нужны визуальные компоненты, то вы можете добавлять в свои проекты только библиотеку FastCube.Core, не подключая другие части FastCube. Это упрощает настройку и уменьшает количество подключаемых библиотек.
Теперь FastCube имеет модульную архитектуру, где каждый компонент выполняет свою специфическую задачу. OLAP-движок, визуальные компоненты, работа с диаграммами и другие части библиотеки находятся в отдельных модулях.
Для существующих проектов, где были подключены визуальные компоненты, никаких дополнительных действий делать не потребуется.
В релизе FastCube .NET 2025.1 впервые добавлена полноценная поддержка Linux и MacOS для веб-решений с использованием FastCube.Core.Web. Это важное расширение платформенной совместимости, которое позволяет запускать OLAP-приложения на серверах под управлением разных операционных систем.
Доступна кросс-платформенная разработка. Теперь FastCube.Core.Web можно использовать не только на Windows, но и на Linux и MacOS. Это открывает возможность разрабатывать веб-приложения с OLAP-функциональностью на любом сервере.
Поддержка Linux и MacOS позволяет легко интегрировать FastCube в контейнеры (например, Docker), что важно для масштабируемых веб-приложений и облачных решений. Вы сможете создавать универсальные веб-приложения, которые работают одинаково стабильно на разных операционных системах.
В релизе FastCube .NET 2025.1 добавлена поддержка архитектуры ARM64 для веб-компонентов. Это расширение совместимости позволяет вам запускать веб-приложения с использованием FastCube на устройствах с процессорами ARM64, таких как Raspberry Pi, серверы и облачные решения на ARM64-архитектуре.
Поддержка ARM64 также делает возможным использование FastCube в сценариях с низким энергопотреблением.
FastReport.DataVisualizationВ релизе FastCube .NET 2025.1 библиотеки, отвечающие за работу с диаграммами, и зависимости от FastReport.DataVisualization были вынесены в отдельные библиотеки FastCube.Mono.Chart и FastCube.WinForms.Chart. Это упрощает управление зависимостями и повышает гибкость при разработке приложений.
Ранее функционал для построения диаграмм был встроен в основной пакет FastCube, что делало его обязательным даже для проектов, где диаграммы не использовались.
IHostingEnvironmentВ релизе FastCube .NET 2025.1 был заменен устаревший интерфейс IHostingEnvironment на более современный IHostEnvironment. Это позволяет платформе адаптироваться к текущим требованиям разработки и подготовиться к будущим обновлениям .NET 9.
В релизе FastCube .NET 2025.1 все исходные коды теперь сопровождаются XML-документацией, что существенно улучшает процесс разработки и интеграции компонентов библиотеки. Мы стремимся повысить удобство работы разработчиков и улучшить понимание кода.
В релизе FastCube .NET 2025.1 был обновлён скриптовый движок. Это изменение значительно улучшает работу со скриптами и повышает стабильность системы.
Скриптовой движок для .NET 6 теперь основан на Roslyn. С новым свойством ReferencedAssemblies в статическом классе FastReport.Olap.Utils.Config можно контролировать список подключаемых сборок к скрипту.
В новом релизе из-за переработки архитектуры движка часть методов и типов устарели, они не относятся к OLAP функционалу и были удалены. Подробный список изменённых методов и типов можно найти по ссылке ниже.
+ добавлено новое демонстрационное приложение, показывающее возможность сохранить и загрузить куб в WEB;
+ добавлена xml документация для пакета FastCube.WinForms;
+ добавлена xml документация для пакета FastCube.Mono;
+ добавлена xml документация для пакета FastCube.Core.Web;
+ добавлена xml документация для пакета FastCube.Core;
+ добавлена xml документация для пакета FastCube.WinForms.Chart;
+ добавлена xml документация для пакета FastCube.Mono.Chart;
+ добавлена xml документация для пакета FastCube.Mono.Report;
+ добавлена xml документация для пакета FastCube.WinForms.BusinessGraphics;
+ добавлена xml документация для пакета FastCube.WinForms.Report;
+ добавлена XML документация для пакета FastCube.Core.Web;
+ добавлена статья с описанием минимальных системных требований;
+ добавлена статья с описанием пакетов;
+ добавлена библиотека совместимости с FastReport.DataVisualization для отображения диаграмм срезов FastCube.Winforms;
+ добавлена библиотека совместимости с FastReport.DataVisualization для отображения диаграмм срезов FastCube.Mono;
+ добавлено демо-приложение для докер-контейнера Linux;
+ добавлена поддержка Linux для пакета FastCube.Core.Web;
* обновлены скрипты сборки;
* изменён способ регистрации плагинов, теперь плагины не могут быть загружены дважды автоматически;
* теперь FastCube.WinForms и FastCube.Mono не самостоятельные пакеты, ядро OLAP компонента полностью вынесено в FastCube.Core;
* изменены скрипты в трёх кубах для совместимости с .NET 8 и .NET 9;
* изменена структура документации, некоторые разделы перенесены в корень;
* папка Extras, которая хранит исходники пакетов совместимости, теперь доступна только в версии продукта с исходниками;
* обновлено пользовательское соглашение;
& обновлен конструктор скриптов для работы с .NET 6 и выше, это критическое изменение (breaking change) для всех новых пакетов FastCube .NET, если вы использовали Variant, то вместо строгой типизации в скрипте вам необходимо использовать только название самого класса Variant, так как в некоторых скриптах возникает конфликт между FastReport .NET и FastCube .NET, в скрипте включен по умолчанию только минимальный набор библиотек;
& исправления безопасности в коде всех демонстрационных приложений;
& исправления безопасности в коде компонента диаграммы для FastCube.WinForms;
& исправления безопасности в коде компонента диаграммы для FastCube.Mono;
- исправлен список подгружаемых dll в скрипт;
- исправлены модификаторы доступа членов класса в FastCube.Core.Web;
- исправлена зависимость от устаревшего IHostingEnvironment в FastCube.Core.Web;
- класс Config и его методы библиотеки FastCube.Core.Web помечены как устаревшие, они больше не используются и не влияют на работоспособность компонента;
- исправлен заголовок документации;
- убран экспорт в BIFF8 в пакете FastCube.Core так как для этого экспорта необходим графический контекст;
- убрана зависимость System.Drawing в пакете FastCube.Core, теперь пакет может быть использован для работы под Linux и MacOS.