gram news
Аватар канала devdigest // dot net

devdigest // dot net

@dncuug

Главные новости из мира .NET: все про C#, F# и VB Все каналы проекта: https://t.me/devdigestplatform/163

3,900подписчиков

Открыть канал

Последние посты

  • devdigest // dot net

    22 сент., 15:00

    ⚡️ Environment.ProcessorCount с .NET 6 считает лимит процесса, а не ядра хостаAndrew Lock показал, что начиная с .NET 6 Environment.ProcessorCount отдаёт не число процессоров хоста, а количество логических ядер, доступных именно процессу — в контейнере с CPU-лимитом это совсем другое число.Обхода в BCL нет, поэтому для каждой платформы — свой P/Invoke. В Windows это GetActiveProcessorCount с флагом «все группы процессоров» (0xFFFF), в macOS — sysctlbyname("hw.logicalcpu"), а в Linux приходится парсить /sys/devices/system/cpu/online, где диапазоны ядер вперемешку с одиночными номерами вроде «0-3,4,8-11». Lock приводит парсер для обоих форматов и советует завернуть результат в синглтон: значение не меняется за время жизни процесса, дёргать sysctl или P/Invoke на каждую проверку незачем.Сам автор честно пишет, что в проде это ещё не проверял. Если вам действительно нужно число ядер
    Andrew Lock | .NET EscapadesFinding the total number of processors on a machine with .NETIn this post I show how to find the total number of logical CPUs on a host (not just those available to a process); something that isn't exposed in modern .NET
  • devdigest // dot net

    21 сент., 06:30

    ⚡️ F# обходит C# почти по всем параметрам, кроме тулинга — колонка Mark SeemannМарк Симанн (автор блога ploeh про DDD и функциональный C#) в новой колонке заявляет, что F# превосходит C# «по большинству осей сравнения» — несмотря на то, что C# популярнее.Главный аргумент архитектурный – F# по умолчанию запрещает циклические зависимости между модулями, и Симанн называет это killer feature — язык сам не даёт собрать спагетти-код вместо того, чтобы полагаться на дисциплину разработчика при декомпозиции. К этому добавляются computation expressions, сильный вывод типов и коллекции со structural equality из коробки. За C# он оставляет лучшую поддержку в IDE, совместимость с ASP.NET Razor и более зрелые инструменты для cyclomatic complexity и mutation testing.Вывод автора весьма провокационный: F# — лучший выбор, если не мешает доступность разработчиков на рынке.👉🏻 Канал | 💬 Чат | 📕
    ploeh blogWorse is better: C# versus F#C# is a great programming language, but F# is better.
  • devdigest // dot net

    18 сент., 06:30

    ⚡️ Uno Platform разделили MCP-сервер на два — по времени жизни данных, а не по фичамUno Platform построили для AI-агентов два MCP-сервера вместо одного и объясняют, почему разделение оказалось дешевле по токенам, чем один сервер на все случаи.Docs-сервер (HTTP, stateless, mcp.platform.uno/v1) даёт агенту документацию и правила API — это знание, которое меняется только с релизами, и правки в документации сразу видны во всех активных сессиях. App-сервер — локальный stdio-инструмент с состоянием: запускает приложение с Hot Reload, «видит» через скриншоты и XML визуального дерева (это находит не только «что сломано», но и какой конкретно элемент и его свойства), кликает и печатает через automation peers, отдаёт статус здоровья. Стек: MCP C# SDK, Roslyn workspace для компиляции в браузере, Microsoft Agent Framework для планирования, SkiaSharp. По токенам разница ощутимая: docs-сервер
  • devdigest // dot net

    16 сент., 06:30изменён

    ⚡️ Rider 2026.3 EAP: радужные скобки и не толькоJetBrains открыла Early Access Program для Rider 2026.3.Парные скобки теперь легче различать цветам и уровню вложенности. По умолчанию фича выключена, включается в Settings, Editor, General, Appearance.Data breakpoints теперь ставятся правым кликом по переменной прямо в редакторе, а не только через окно Watches, и добавляются из окна Breakpoints по имени переменной или адресу памяти с размером региона. Поддержаны чтение и запись, условия, логирование и валидация ввода: это в первую очередь про Unreal Engine и собственные движки на C++.В popup автодополнения появился ряд фильтров по видам подсказок, левый клик по иконке оставляет только namespace, классы, enum или события, правый прячет их; фильтры перенесены из ReSharper.Мелочи, которые тоже пригодятся: плагины для геймдева собраны в отдельную категорию Game Development, а
    The JetBrains BlogThe Rider 2026.3 Early Access Program Is Open - The JetBrains BlogThe first Early Access build for Rider 2026.3 is now available! It includes rainbow brackets, an easier way to set data breakpoints, a new Game Development plugin category, and filters in code complet
  • devdigest // dot net

    15 сент., 15:00изменён

    ⚡️ Сентябрьский servicing .NET: закрыто 8 CVE в 10.0, 9.0 и 8.0Microsoft выпустила сентябрьский servicing-релиз .NET от 8 сентября: версии 10.0.12, 9.0.20 и 8.0.31, закрыто восемь CVE.Все восемь уязвимостей затрагивают .NET 10, 9 и 8 одновременно: CVE-2026-69805, 69439, 71328, 69522, 69304, 58649, 66822 и 69806. Одна из них, CVE-2026-69522, задевает ещё и .NET Framework от 4.6.2 до 4.8.1, то есть обновлять придётся и legacy-хосты. Исправления разложены по отдельным changelog для ASP.NET Core, EF Core и runtime; контейнерные образы и Linux-пакеты обновлены вместе с инсталляторами.Это тот тип обновления, который откладывать нельзя: патч-версии внутри одного major не ломают совместимость, а восемь CVE в трёх поддерживаемых линиях означают, что уязвимы почти все прод-окружения.👉🏻 Канал | 💬 Чат | 📕 Каталог
  • devdigest // dot net

    14 сент., 06:30

    ⚡️ Rider стартовал 44 секунды из-за Defender — Microsoft починила это в самом DefenderJetBrains разобрала, почему Rider и ReSharper медленно стартуют на Windows. Виновник — Microsoft Defender: первый запуск Rider из Toolbox сканировался 44 секунды, Visual Studio и VS Code — меньше секунды.Причина в расположении, а не в коде. Процессы из защищённых от записи путей получают более широкие правила доверия, и Defender почти не трогает их при старте. Toolbox и ReSharper out-of-process ставятся в пользовательскую папку, поэтому после переезда на OOP-архитектуру процесс ReSharper стал получать полный скан. Диагностировали по ETW-событиям Microsoft-Antimalware-Engine и CPU time, по 10 замеров на инструмент. Итог: JetBrains IDE — 10–40 секунд, CLI-инструменты — меньше 2. Microsoft выпустила Defender 1.449.454.0 с оптимизированным сканированием приложений из write-protected папок — Rider и
    The JetBrains BlogWhy Rider and ReSharper Were Slow to Start, and How Microsoft Helped Fix the Problem - The JetBrains BlogFind out how we teamed up with Microsoft to optimize startup times of ReSharper and JetBrains Rider with Microsoft Defender for Windows Developers.
    1,420432Открыть в Telegram
  • devdigest // dot net

    13 сент., 11:00

    ⚡️ Агент с движком рефакторинга Rider: 157 секунд против 26 на тех же задачах⏭ #6693 пропущен 2 / 2 📋 Пост #6695 · v2 — .NET — англ: Rider's refactoring engine as an agent skill: 157s down to 26s 📝 Переписать: без воды⚡️ Агент с движком рефакторинга Rider: 157 секунд против 26 на тех же задачахJetBrains прогнала фронтирную модель через пятнадцать задач на рефакторинг C# и посчитала, за что та хваталась. 468 раз — передача текста в интерактивные команды, 422 раза git, 392 раза sed, 163 раза dotnet build. Структурных операций рефакторинга ноль, потому что их просто не было среди инструментов.Агент компилировал не чтобы проверить результат, а чтобы узнать, что натворила последняя правка. Навык refactoring-code, который идёт в комплекте с Rider 2026.2.1, отдаёт агенту восемь операций движка ReSharper: rename, extract method, extract interface, extract base class, change signature,
    The JetBrains BlogRider Hands AI Agents The Keys To Its Refactoring Engine For Safer, Faster, And Cheaper Results - The JetBrains BlogWe traced a frontier model through fifteen C# refactoring tasks and counted what it reached for. It piped text into interactive commands 468 times. It called git 422 times and sed 392 times. It ran do
  • devdigest // dot net

    11 сент., 14:11

    ⚡️ .NET 11 RC1 вышел с go-live лицензией: C# 15 стабилизирует union-типыMicrosoft выпустила .NET 11 Release Candidate 1 — с go-live лицензией, то есть его уже можно ставить в прод с официальной поддержкой. Финальный релиз — на .NET Conf 10–12 ноября.Главное в RC1: C# 15 стабилизирует union-типы и closed-иерархии, а System.Text.Json получил closed-type polymorphism и поддержку unions. В runtime операции с Half используют FP16-инструкции, появился in-process crash reporting на Unix. В библиотеках — DNS record resolution на Linux, отправка сигналов процессам, async options validation. Native AOT для file-based programs. В ASP.NET Core финализированы API обновления аутентификации в SignalR, Blazor Server circuits подхватывают refresh аутентификации. F# получил record spreads.👉🏻 Канал | 💬 Чат | 📕 Каталог
  • devdigest // dot net

    24 авг., 09:02изменён

    ⚡️ Построение распределённого планировщика задач на Akka.NETАарон Станнард из Petabridge описал, как построить распределённый планировщик долгих задач на Akka.NET — для случаев, когда задания идут от минут до часов, а кластер должен масштабироваться, не теряя уже выполненную работу.Автор объясняет, почему обычный Akka.Cluster.Sharding здесь не годится: при изменении размера кластера он перебрасывает задания на новые узлы и выбрасывает уже проделанную работу. Вместо этого система строится на нескольких акторах, где главный, JobTracker, хранит расписание и переживает сбои. Ключевая идея — распределять задачи по реальной загрузке узлов: планировщик прикидывает «размер» задания и отправляет его на самый свободный узел, избегая перегрузки отдельных машин.Такой подход не тратит вычисления впустую и хорошо подходит для транскрипции, транскодинга, ETL и финансовой отчётности.👉🏻 Канал |
    PetabridgeBuilding a Distributed Job Scheduler with Akka.NET
    2,080321Открыть в Telegram
  • devdigest // dot net

    21 авг., 07:24изменён

    ⚡️ Как устроена память агентов в Microsoft Agent FrameworkДжесс Либерти объяснил, как ИИ-агенты в .NET запоминают то, что с ними происходит. За память отвечает Agent Memory на базе графовой БД Neo4j, и работает она на трёх уровнях: краткосрочная помнит текущий разговор, долгосрочная хранит накопленные знания и связи между ними, а «память рассуждений» — прошлые действия и решения агента.Отдельно автор выделяет битемпоральность: система хранит не только то, когда факт произошёл, но и то, когда она его записала. В статье есть и разбор кода: подключение к Neo4j, создание MemoryStore и методы StoreMemory() и RetrieveMemory(). Благодаря этому агент сохраняет контекст между сессиями.👉🏻 Канал | 💬 Чат | 📕 Каталог
    2,060321Открыть в Telegram
  • devdigest // dot net

    17 авг., 08:56

    ⚡️ F# Weekly #33, 2026Вышел свежий выпуск дайджеста F# Weekly. Главное событие недели — релиз .NET 11 Preview 7 с обновлениями языка F#. В центре внимания и PaketaBot — бот для управления зависимостями в проектах на Paket: написан на F#, скомпилирован через Fable и работает прямо в GitHub Actions без хостинга, закрывая пробел там, где Dependabot не поддерживает Paket. Среди других заметных проектов — fsdb (MySQL-совместимый сервер БД с поддержкой wire-протокола и SQL-грамматики на FParsec), toro (фреймворк глубокого обучения, приносящий семантику PyTorch в F# через TorchSharp), Farse (парсинг JSON на System.Text.Json) и Falco.UnionRoutes (типобезопасная маршрутизация для веб-фреймворка Falco). В номере также свежие релизы библиотек: Ionide.Analyzers 0.16, FSharpLint.Core 0.27.1 и Fable.Logging 1.0.👉🏻 Канал | 💬 Чат | 📕 Каталог
    Sergey Tihon's BlogF# Weekly #33, 2026 — .NET 11 Preview 7 Ships with F# Updates and PaketaBotWelcome to F# Weekly, A roundup of F# content from this past week: News F# in .NET 11 Preview 7 — Release Notes Core Framework v3 4.0.0 [2026 August 14] | xUnit.net Microsoft News .NET 11 Preview 7…
  • devdigest // dot net

    14 авг., 08:11изменён

    ⚡️ Шесть улучшений производительности .NET 11Стивен Гизель разобрал шесть заметных улучшений производительности в .NET 11, приведя бенчмарки .NET 10 против .NET 11 Preview 6 .Среди них: – устранение упаковки (boxing) в обобщённом сравнении enum-ов — до 86% быстрее и без аллокаций; – удаление лишних проверок диапазона и null в векторных операциях (~10%); – кэширование правил часовых поясов, ускоряющее DateTime.Now на 48%; – оптимизация парсинга Guid на 20–25%; ускорение LINQ Min/Max для мелких типов через векторные перестановки (до 70–75% на байтах и short); – общее сокращение размера генерируемого кода.👉🏻 Канал | 💬 Чат | 📕 Каталог
    Steven Giesel.NET 11 Performance EditionAs always my yearly take on the latest .NET release. In a few months dotnet 11 will be released and I wanted to have a look into some performance metrics.
  • devdigest // dot net

    10 авг., 13:33изменён

    ⚡️ F# Weekly #32, 2026Вышел свежий выпуск дайджеста F# Weekly. Главные релизы недели — библиотека доступа к данным FSharp.Data 8.2.0 и игровой фреймворк Mibo 4.0 с заметно ускоренным PBR-конвейером для 3D-рендеринга, который выходит на GPU-bound производительность на бэкендах raylib и MonoGame.В номере также свежие обновления FSharp.TypeProviders.Templates 8.11, SQLProvider 1.5.27, SwaggerProvider, linq2db.FSharp и Polars.FSharp. Среди заметных проектов — Plinth (local-first markdown-блокнот на F# и Tauri), Thuja (минималистичная библиотека для терминальных интерфейсов) и FsLangMCP (MCP-сервер, открывающий сервисы компилятора F# для ИИ-агентов).Отдельный тренд выпуска — рост экосистемы F# MCP для ИИ-воркфлоу. Из новостей Microsoft — улучшения безопасности NuGet, платформы тестирования и Agent Framework.👉🏻 Канал | 💬 Чат | 📕 Каталог
    Sergey Tihon's BlogF# Weekly #32, 2026 — FSharp.Data 8.2.0, Mibo 4.0, and F# MCP Ecosystem GrowsWelcome to F# Weekly, A roundup of F# content from this past week: Microsoft News Strengthening NuGet Supply Chain Security: Reducing API Key Lifetime Test reporting in Microsoft.Testing.Platform: …
  • devdigest // dot net

    8 авг., 08:23изменён

    ⚡️ Современная аутентификация в ASP.NET Core: 2FA и passkeyАли Хамза Ансари в блоге elmah.io подробно показал, как реализовать в ASP.NET Core на .NET 10 два современных механизма защиты: двухфакторную аутентификацию (2FA) и вход по passkey на стандартах WebAuthn/FIDO2.Для 2FA разбираются регистрация и вход, генерация QR-кода для приложения-аутентификатора, проверка одноразовых кодов TOTP, резервные коды восстановления и блокировка аккаунта после неудачных попыток. Раздел о passkey охватывает регистрацию учётных данных (attestation) и беспарольный вход (assertion) с подтверждением по биометрии или PIN, а также хранение ключей и проверку счётчика подписей. В основе — ASP.NET Core Identity, Entity Framework Core, пакет Fido2NetLib и PostgreSQL.Такой подход заметно снижает риски по сравнению с обычными паролями и одновременно упрощает вход для пользователя.👉🏻 Канал | 💬 Чат | 📕
    elmah.io Blog - .NET Technical tutorials/guides and new featuresModern authentication in ASP.NET Core with 2FA and passkeyThis walkthrough builds a .NET 10 ASP.NET Core Web API (TwoFaNET10) implementing two-factor authentication and WebAuthn/FIDO2 passkey login, using Microsoft.AspNetCore.Identity.EntityFrameworkCore with Npgsql PostgreSQL, JWT bearer tokens, and a custom ApplicationUser…
  • devdigest // dot net

    4 авг., 17:27изменён

    ⚡️ Архитектурный разбор ML.NET: машинное обучение без выхода из экосистемы .NETАбдул Рахман разобрал архитектуру ML.NET — открытого кросс-платформенного фреймворка машинного обучения от Microsoft, который позволяет обучать, оценивать и разворачивать ML-модели на привычном C# без Python-рантайма и сторонних библиотек. Автор предлагает делить решение на три проекта: тренер (консольное приложение, которое загружает данные, обучает и сохраняет модель), библиотеку схем с общими типами данных и клиент (Web API, Blazor или Worker), который выполняет предсказания.В основе — MLContext как точка входа (аналог DbContext из EF), «ленивое» табличное представление IDataView и пайплайны, собираемые цепочкой Append и выполняемые при вызове Fit(), как в LINQ. Тренеры сгруппированы по типам задач — классификация, регрессия, кластеризация, поиск аномалий, ранжирование, прогнозирование.Для ASP.NET
    I Love DotNetAn Architectural View of ML.NETIn this post I will teach you the ML.NET architecture, how its learning pipeline works, and how to build machine learning models natively in .NET without Python.
    2,070521Открыть в Telegram
  • devdigest // dot net

    2 авг., 08:29изменён

    ⚡️ F# Weekly #31, 2026Вышел свежий выпуск дайджеста F# Weekly. В центре внимания — анонсы Microsoft для .NET-разработчиков: релиз MCP C# SDK 2.0, новый агент для юнит-тестирования полиглотных проектов, интеграция анализатора бинарных логов MSBuild (binlog) в VS Code, обновления Agent Framework для обнаружения навыков MCP-серверов, а также июльское обновление Visual Studio с агентами на базе GitHub Copilot SDK.Среди заметных проектов экосистемы — MongrelDB-FSharp (клиент встраиваемой БД с SQL и векторным поиском на чистом F#), библиотека типизированных результатов Axial, реактивный Fable.Reactive и Fable.Giraffe.В выпуске также десять свежих релизов пакетов, включая Mibo 3.0, и материалы о дизайне Result-типа и корпоративных ИИ-паттернах.👉🏻 Канал | 💬 Чат | 📕 Каталог
    Sergey Tihon's BlogF# Weekly #31, 2026 — MCP C# SDK v2.0, Unit-Test Agent, and MSBuild Binlog in VS CodeWelcome to F# Weekly, A roundup of F# content from this past week: News What’s new in 2.0 | Elmish Land Microsoft News Announcing v2.0 of the official MCP C# SDK From generated code to truste…
  • devdigest // dot net

    1 авг., 13:12

  • devdigest // dot net

    31 июл., 06:41

    ⚡️ JetBrains добавила отладчик в ReSharper для VS CodeJetBrains представила отладчик в ReSharper для VS Code, закрыв последний пробел в наборе инструментов для .NET-разработки в легковесном редакторе. В статье Айзек Левин доказывает, что отладка — это «реактивный процесс», а настоящая продуктивность рождается из сочетания отладки с проактивным статическим анализом, который выявляет ошибки ещё до компиляции. ReSharper для VS Code предлагает более 2500 инспекций кода в реальном времени, быстрые исправления по горячим клавишам, семантическое переименование символов по всему решению и быструю навигацию (Ctrl+T, Shift+F12), а теперь — и нативный отладчик .NET на движке из Rider. По словам компании, это превращает ReSharper в единую интеллектуальную среду разработки, объединяющую анализ, навигацию, тестирование и отладку.👉🏻 Канал | 💬 Чат | 📕 Каталог
  • devdigest // dot net

    27 июл., 12:48

    ⚡️ F# Weekly #30, 2026Вышел свежий выпуск дайджеста F# Weekly. Главные герои недели — расширение FsHttp.Studio для VS Code, позволяющее выполнять HTTP-запросы FsHttp прямо из F#-скриптов с наглядным отображением ответов (картинки, JSON, HTML), и шаблон Fable Lit Fullstack Template 3.2 с кросс-платформенным десктоп-хостом, горячей заменой модулей (HMR) и сквозной типобезопасностью на базе Fable.Lit и RPC через Serde.FS.Fable. В номере — свежие релизы библиотек и инструментов: Fable 5.13 и 5.12, Mibo.Templates 3.1.1, WoofWare.Myriad.Plugins 10.3.1 и CliWrap 3.10.3. Среди заметных проектов — грамматика F# для Tree-sitter, игровой фреймворк Mibo, генератор статических сайтов Zest и терминальный редактор Fedit.👉🏻 Канал | 💬 Чат | 📕 Каталог
    Sergey Tihon's BlogF# Weekly #30, 2026 — FsHttp.Studio & fable-lit-fullstack-templateWelcome to F# Weekly, A roundup of F# content from this past week: Microsoft News Visual Studio Code 1.130 Announcing a New Visual Manifest Editor in the WinApp VS Code Extension – #ifdef Win…
  • devdigest // dot net

    24 июл., 08:33изменён

    ⚡️ Вышел Rx.NET 7.0Команда endjin выпустила Rx.NET 7.0 (пакет System.Reactive 7.0.0 на NuGet).Ключевое изменение — избавление от давней проблемы «раздувания» сборок: раньше добавление ссылки на Rx.NET в self-contained приложениях с Windows-таргетами тянуло за собой WPF и Windows Forms, увеличивая размер вывода примерно на 90 МБ (47 МБ с trimming и 11 МБ для NativeAOT). Теперь функциональность UI-фреймворков вынесена в отдельные пакеты — System.Reactive.Windows.Forms, System.Reactive.Wpf, System.Reactive.WindowsRuntime и System.Reactive.Uwp.Прекращена поддержка .NET 7.0 и более ранних версий; целевые платформы — .NET 8, 9, 10, .NET Framework 4.7.2 и UWP.Релиз завершает разбор технического долга, открывая путь к оптимизации производительности и новым операторам.👉🏻 Канал | 💬 Чат | 📕 Каталог
    endjinRx.NET v7.0 Now AvailableRx.NET 7.0 is now available, with the potential to reduce deployable application size by up to 90MB.