It's been a busy week for the .NET community, with the release of the new Azure SDK, multiple Akka.NET plugins, and the streaming of Include 2021, a digital event host by Microsoft focused on diversity and inclusion. InfoQ examined these and a number of smaller stories in the .NET ecosystem from the week of March 15th, 2021.
This week Microsoft hosted Include 2021, a three-day digital event focused on diversity & inclusion (D&I). The sessions were presented by speakers from both academia and the industry, covering different topics that included company culture transformation, mental health conditions, gender, and identity. All sessions are available for registered attendees at the event's website.
Microsoft also released a new version of the Python Extension for Visual Studio Code (available at the Visual Studio Marketplace). The new release includes bug fixes and stabilization focused on the Python, Pylance, and Jupyter extensions. It also includes improved language support for the Jedi language server.
The ML.NET team at Microsoft released new versions of both ML.NET (v 1.5.5) and Model Builder. The new Model Builder includes config-based training with generated code-behind files (making it easier for the developer to add and train a model to an existing project) and a restructured Advanced Data Options (aimed at giving the developer more control over column settings and data formatting). ML.NET v1.5.5 contains bug fixes and some new features: a new API that accepts double type for the confidence level, support for export ValueMapping estimator to ONNX, and a new API to specify if the output from TensorFlow is batched or not.
OpenTelemetry .NET released the first beta package for its next version (v.1.1.0-beta1). OpenTelemetry is a vendor-neutral specification for observability telemetry. The OpenTelemetry .NET project also includes API packages and SDKs for instrumentation and exporters for integration with different telemetry backends. The release coincides with the announcement of the OpenTelemetry metrics specification roadmap, which includes a stable metrics API/SDK, metrics data model and protocol, and compatibility with Prometheus.
The latest release of Azure SDK brings, among other improvements, the Azure Mixed Reality client library for .NET. Mixed reality was a hot topic in this year's Ignite conference when Microsoft released its hologram-based mixed-reality communication platform called Microsoft Mesh. The Azure Event Grid Client libraries for .NET (for building event-driven applications) are also part of this SDK release.
Another important release of this week was PeachPie v1.0.0. PeachPie is a "development platform that allows developers to treat the PHP language as a native .NET language." It consists of a compiler, runtime, extension libraries, IDE support, and MSBuild support. The platform has been in development for a few years, and this is its first major release.
The Akka.NET team also released several different plugin updates as part of the latest maintenance release for Akka.NET (v1.4.17). Support for EventsByPersistenceId was added back to the Akka.Persistence.Redis plugin, and the Akka.Persistence.MongoDb plugin was updated with performance and reliability improvements. Alpakka - a collection of Akka Streams connectors to various technologies, protocols, and libraries - had a new beta version (v1.0.0-beta4) released and the dependency on WindowsAzure.ServiceBus was removed in favor of Azure.Messaging.ServiceBus. Other plugins updated include Akka.Persistence.PostgreSQL and Akka.Logger.Serilog. The development team also discussed some of the work going into the next release and other updates in the Community Standup, available on YouTube.
Other interesting news of the week include a new version of Spectre.Console (a .NET 5 library for creating console applications inspired by the Rich library for Python) and a very detailed use case of quantum developer tools applied in a specific domain (chemistry). Despite being a very particular scenario, the blog post brings a comprehensive vision on adopting quantum development for existing algorithms using the Microsoft Quantum Development Kit (QDK) and Q#.