Posts

Showing posts from July, 2026

[MS] Making an agile version of a Windows Runtime delegate in C++/WinRT, part 10 - devamazonaws.blogspot.com

In part 5 of this unnecessarily long series on agile delegates , commenter LB asked , "Is the Context­Callback in the deleter guaranteed to always succeed? According to the docs it can fail. I wonder if there's a way to move the fallible part to an earlier point so the deleter can be infallible." Let's look at the first part: What if IContext­Callback:: Context­Callback fails? If it fails, it means that COM couldn't switch to the destination context. If you can't switch to the destination context, then you can't release the pointer. It's not clear what recovery is possible anyway. Do you just keep retrying until it finally works? If the destination context is an ASTA, then it's possible that the reason is that the context is already busy, and ASTA doesn't allow re-entrancy. We'd have to wait a little bit and try again later, when the destination context might be ready. We can't just block on the retry because the destination con...

[MS] Making an agile version of a Windows Runtime delegate in C++/WinRT, part 9 - devamazonaws.blogspot.com

Over half of the time we spent trying to make an agile version of a Windows Runtime delegate in C++/WinRT was dealing with the case of a delegate that declares non-marshalability . But how much does it matter? I looked at the three major C++ implementations of the Windows Runtime: C++/WinRT, C++/CX, and WRL. The C++/WinRT implementation has an optimization for IAgile­Object , but for objects that aren't agile, it just goes directly to agile_ ref without checking for INoMarshal . This means that a delegate that declares non-marshability will always be rejected by C++/WinRT when used as an event handler. The C++/CX implementation lazy-creates the agile reference to the original delegate when the wrapper is used from a different apartment . If the original delegate is non-marshalable, it means that the CO_ E_ NOT­SUPPORTED is produced only when the wrapper is used in a way that requires a marshalable delegate. The WRL implementation does not have an optimization for IAgile­O...

Amazon SageMaker Unified Studio brings richer Git version control to all project tools - devamazonaws.blogspot.com

Amazon SageMaker Unified Studio gives project members full Git version control directly within the tools you already use - Query Editor, Visual ETL, Workflows, and Notebooks. The enhanced Repositories experience replaces the previous automatic sync approach with flexible, file-level version control. This brings a consistent source control experience across all project tools, including Notebooks, which previously had no Git support. You choose exactly which files to track in Git by adding them to a repository on GitHub, GitLab, or Bitbucket - source control is not enforced at the project level, so you decide what gets versioned and when. When you're ready, you commit and push all your changes in a single action. Repositories are decoupled from project creation, meaning you can add a repository to a project at any point after the project is created, as your needs evolve. Projects can connect to any number of repositories and branches at the same time, and you can create branches, ...

[MS] Introducing WPA MCP: Early Preview of AI-assisted trace analysis in Windows Performance Analyzer - devamazonaws.blogspot.com

Image
Windows Performance Analyzer (WPA) is one of the most powerful tools available for understanding system performance on Windows. It helps engineers investigate Event Tracing for Windows (ETW) traces across CPU, memory, disk, networking, scheduling, input, and many other areas of the operating system. That power also comes with complexity. A single trace can contain a huge amount of data, and finding the right signal often requires knowing which WPA tables to open, which columns matter, how to filter the right time range, and how to connect multiple pieces of evidence into a root cause. We are working on WPA MCP as an Early Preview feature to make that workflow easier and more approachable. What is WPA MCP? WPA MCP brings GitHub Copilot CLI into the WPA trace-analysis workflow. Instead of starting every investigation by manually navigating graphs and tables, you can ask questions about the trace in natural language. WPA MCP helps GiHub Copilot translate that intent into trace-data exp...

AWS HealthLake identifies and links duplicate patient, provider, and organization records (Preview) - devamazonaws.blogspot.com

Duplicate patient records are one of the costliest problems in healthcare data management, scattering a patient's information, leading to redundant tests, missed diagnoses, billing errors, manual reconciliation, and broken analytics that count one patient as many. AWS HealthLake now supports resource matching, which automatically identifies and links duplicate records in a datastore. Healthcare organizations can build accurate longitudinal patient records and trustworthy population health datasets without specialized master data management tooling. Resource matching works across seven Fast Healthcare Interoperability Resources (FHIR) resource types: Patient, Practitioner, Organization, Location, Device, RelatedPerson, and PractitionerRole. It matches high-confidence healthcare identifiers such as Social Security, medical record, and national provider numbers, applying each identifier's real-world scope and filtering out placeholder values to avoid false matches. Once enab...

AWS Parallel Computing Service now supports node lifecycle actions - devamazonaws.blogspot.com

Today, AWS announces the general availability of node lifecycle actions in AWS Parallel Computing Service (PCS). With node lifecycle actions, you can run custom scripts automatically at defined points in a compute node's lifecycle. You can use them to prepare your nodes for work. For example, you can mount shared storage, join a directory service, install software, or set up monitoring. You define node lifecycle actions in your PCS compute node group configuration when you create or update the group, and you can reuse the same script across multiple compute node groups and clusters. For each script, you set its location as an Amazon S3 or HTTPS URI, the arguments to pass, which lifecycle stage it runs in, whether it re-runs on reboot, and its error-handling behavior. AWS PCS writes the output to a dedicated log file, giving you visibility into what ran. AWS PCS is a managed service that simplifies running and scaling high performance computing (HPC) workloads on AWS using Slurm...

Amazon Connect Customer now automatically finds example agent evaluations for tailored coaching - devamazonaws.blogspot.com

Amazon Connect Customer now automatically surfaces relevant examples of an agent's evaluations when managers are preparing coaching feedback, so they can deliver actionable, evidence-backed coaching to agents. When a manager prepares agent coaching feedback in Amazon Connect Customer, they automatically receive examples of recent evaluations where the agent scored high or low on the chosen coaching topic, along with human or AI evaluator notes explaining the agent behaviors that drove the result. For example, while preparing feedback for an agent on "de-escalation," a manager receives example calls where the agent successfully calmed a frustrated customer, alongside calls that were escalated, with insights into the agent behaviors that led to each outcome. This enables managers to deliver tailored coaching that accelerates agent performance improvement, while saving the time spent manually searching for examples. This feature is available in all regions where Amazon Con...

[MS] Tell your model when to think harder  - devamazonaws.blogspot.com

Image
Not every question deserves the same amount of thought. Renaming a variable isn't the same as debugging a memory leak, and they don't need the same level of thinking. So why should your model treat them the same way every time? Starting in Visual Studio 18.9 Insiders 2, it doesn't have to. Supported models now come with a thinking effort control, so you can dial up the reasoning when a problem is genuinely hard and dial it back down when it isn't. It's a small knob with a big payoff: better-matched answers, and more control over how many credits you spend getting them. A dial, not a switch Thinking effort is exactly what it sounds like: how much reasoning a model does before it answers. It shows up as a set of named levels, and which ones you get depends on the model. Here's what each level is for: Low  - Quick responses with minimal reasoning. Great for straightforward questions and everyday code suggestions, and it consumes fewer AI credits. Mediu...

[MS] Visual Studio Code 1.132 (Insiders) - devamazonaws.blogspot.com

Learn what's new in Visual Studio Code 1.132 (Insiders) Read the full article Post Updated on July 29, 2026 at 06:00PM Thanks for reading from devamazonaws.blogspot.com

[MS] Making an agile version of a Windows Runtime delegate in C++/WinRT, part 7 - devamazonaws.blogspot.com

Last time, we fixed the problem of creating a unique_ptr whose deleter's constructor was might throw an exception . But we're not out of the woods yet. Let's take another look at what we have: if (d.try_as<::INoMarshal>()) { void* p; if constexpr (std::is_reference_v<Delegate>) { p = winrt::detach_abi(d); } else { winrt::copy_to_abi(d, p); } return [p = std::unique_ptr<void, in_context_deleter>(p, {}), token = get_context_token()](auto&&...args) { if (token == get_context_token()) { std::remove_reference_t<Delegate> d; winrt::copy_from_abi(d, p.get()); d(std::forward<decltype(args)>(args)...); } else { throw winrt::hresult_error(CO_E_NOT_SUPPORTED); } }; } We had originally broken the rule that the u...

AWS Glue Data Quality now supports distribution statistics for data profiling - devamazonaws.blogspot.com

AWS Glue Data Quality now supports a new Distribution Analyzer that generates frequency distribution profiles for your data. Using this new Distribution Analyzer in the Data Quality Definition Language (DQDL), you can generate histograms for numeric columns and value distributions for categorical, date, and boolean columns. With support for custom bin counts, you can explore the shape and patterns of your data at the granularity that matters most to your use case. Understanding how data is distributed is foundational to building reliable data pipelines. Distribution statistics help you quickly identify skewness, outliers, and unexpected patterns across your datasets, without writing custom code. The capability integrates directly with your existing DQDL rulesets, so you can add distribution profiling alongside your current data quality checks in a single evaluation run. Distribution statistics are stored in Amazon S3 for future querying through services like Amazon Athena, and are al...

Amazon RDS for SQL Server now supports restoring TDE databases on Mult-AZ instances - devamazonaws.blogspot.com

Amazon Relational Database Service (Amazon RDS) for SQL Server now supports restoring Transparent Data Encryption (TDE)-enabled SQL Server databases on Multi-AZ instances and instances configured with a read replica in the same region, using native backup and restore. Previously, TDE-enabled database restore was available only for Single-AZ instances, requiring you to disable TDE or migrate to a Single-AZ configuration before restoring encrypted databases. You can restore TDE-enabled database backups directly to Amazon RDS for SQL Server Multi-AZ instances and instances configured with a read replica in the same region. Back up your existing TDE certificate, store it in Amazon S3, and restore it to your Amazon RDS instance with the TDE option enabled. Then, restore your TDE-enabled database backup from Amazon S3 using Amazon RDS native backup and restore. This simplifies your migration and recovery workflows when you require both encryption at rest with TDE and the high availabi...

[MS] Making an agile version of a Windows Runtime delegate in C++/WinRT, part 6 - devamazonaws.blogspot.com

It looked like we were done when we fixed the problem of releasing a non-marshalable delegate on the correct thread . But we missed something. Again. if (d.try_as<::INoMarshal>()) { void* p; if constexpr (std::is_reference_v<Delegate>) { p = winrt::detach_abi(d); } else { winrt::copy_to_abi(d, p); } return [p = std::unique_ptr<void, in_context_deleter>(p), token = get_context_token()](auto&&...args) { if (token == get_context_token()) { std::remove_reference_t<Delegate> d; winrt::copy_from_abi(d, p.get()); d(std::forward<decltype(args)>(args)...); } else { throw winrt::hresult_error(CO_E_NOT_SUPPORTED); } }; } The first part gets a raw ABI pointer, either by moving it out of the inbound delegate if we can, else ...

[MS] Analyze MSBuild Binary Logs with Copilot in VS Code - devamazonaws.blogspot.com

Image
You know the moment. CI goes red, or a build that took 8 seconds yesterday now takes 40, and you're staring at a wall of MSBuild output trying to find the one line that matters. The answer is almost always sitting in the binary log ( .binlog ) - it records every project, target, task, property, and diagnostic in the build. The problem is that reading one has meant firing up a separate viewer and already knowing where to look. What if you could just ask ? That's the idea behind the MSBuild Binlog Analyzer for VS Code, now in Preview on the Visual Studio Marketplace . It brings binlog analysis right into your editor and hands the tedious detective work to GitHub Copilot Chat - so you can stay in the flow and keep shipping. Just want an agent to investigate builds for you - say, unattended in CI? Check out the Microsoft Binlog MCP Server - the same analysis engine, driven headlessly. This post is about the interactive, in-editor experience. The problems it solves Buil...

AWS Elemental MediaTailor adds configurable ad timeout and concurrency controls for improved ad fill and faster startup - devamazonaws.blogspot.com

AWS Elemental MediaTailor now gives you direct control over ad decision server (ADS) timeout. Previously, changing these settings required contacting AWS Support. You can now configure individual HTTP ad request timeouts, total ad personalization time budgets for live, VOD, and live ad prefetch, and enable parallel ADS requests. These settings allow you to optimize ad delivery performance for your specific workflows. For example, you can increase the personalization time budget for live events to improve ad fill rates or enable parallel ADS requests in VOD workflows to reduce overall response time for faster video startup. New prefetch-specific timeout settings give you additional granularity for livestream ad retrieval. You can configure these settings through the AWS Elemental MediaTailor console, AWS CLI, or AWS SDKs using the new AdsPersonalizationTimeouts and AdsPersonalizationConcurrency parameters on your playback configurations. This feature is available in all AWS Region...

[MS] A new way to bring native Windows APIs to JavaScript - introducing dynamic API projections for Node.js - devamazonaws.blogspot.com

Image
Electron and Node.js make it straightforward to build Windows desktop apps in JavaScript. Calling Windows Runtime APIs has been less straightforward: features such as on-device AI often required a C++ or C# bridge, manual translation of WinRT types and asynchronous behavior, and wrapper code for every exposed API. That meant another language and toolchain to build, test, and keep compatible with Electron. We're making  a dynamic Windows Runtime API (WinRT) projection for Node.js  available in public preview. It lets an Electron app or plain Node.js process call supported Windows Runtime APIs directly from JavaScript or TypeScript. Start with one npm package; the tooling generates JavaScript wrappers and TypeScript declarations for the Windows features you choose. No app-specific native addon,  node-gyp  setup, or C++ wrapper is required. What makes this projection different The Windows Runtime already has static language projections for  C++/WinRT ,  C#/WinRT ,  wi...

[MS] Java OpenJDK July 2026 Patch & Security Update - devamazonaws.blogspot.com

Hello Java customers! We are happy to announce the latest July 2026 patch & security update release for the  Microsoft Build of OpenJDK . Check our  release notes  page for details on fixes and enhancements or  download and install  the binaries today. The source code of our builds are now available on GitHub for further inspection: OpenJDK 25.0.4 OpenJDK 21.0.12 OpenJDK 17.0.20 OpenJDK 11.0.32 Microsoft Build of OpenJDK specific updates OpenJDK 25 Used the "Processor Information" counter to enumerate processors in all processor groups Added optimized aarch64_get_thread_helper() for Windows/ARM64 Marked Reserved Stack Area as unsupported on Windows/ARM64 OpenJDK 21 Used the "Processor Information" counter to enumerate processors in all processor groups Marked Reserved Stack Area as unsupported on Windows/ARM64 OpenJDK 17 Used the "Processor Information" counter to enumerate processors in all processo...

Amazon Connect now supports audio optimization for Azure Virtual Desktop and Windows 365 Cloud PC - devamazonaws.blogspot.com

Agents using Microsoft Azure Virtual Desktop (AVD) or Windows 365 Cloud PC can now take calls directly from their virtual desktop session with audio optimization enabled. To get started, IT administrators need to complete a one-time setup for their virtual desktop environment. Once configured, media is redirected from the virtual desktop to the agent's local device, improving audio quality. Agents simply log into their Azure Virtual Desktop or Windows 365 Cloud PC session and start accepting calls using the Amazon Connect Customer agent workspace or a custom agent interface built with the Amazon Connect Customer open-source JavaScript libraries. This support is in addition to existing audio optimization for Amazon WorkSpaces, Citrix cloud desktops, and Omnissa cloud desktops. This feature is available in all AWS Regions where Amazon Connect Customer is offered, except AWS GovCloud (US-West). To learn more, see the Amazon Connect Customer Administrator Guide . Post Updated on J...

Amazon MWAA now supports Apache Airflow version 2.11.2 - devamazonaws.blogspot.com

Amazon Managed Workflows for Apache Airflow (MWAA) now supports Apache Airflow version 2.11.2. Amazon MWAA is a managed service that runs Apache Airflow at scale without the operational overhead of managing the underlying infrastructure. Apache Airflow 2.11.2 is a maintenance release that includes security improvements, bug fixes, and dependency upgrades. This release upgrades core dependencies with security patches and stability improvements to the Airflow webserver and task execution layers. It also includes fixes to task lifecycle management for queued tasks, enhanced secrets masking in logs, UI corrections in the Task Instances list view, and provider package updates for S3 and CloudWatch log delivery. You can create a new Apache Airflow 2.11.2 environment on Amazon MWAA or upgrade your existing environments with a few clicks in the AWS Management Console in all currently available Amazon MWAA regions. To learn more, visit the Amazon MWAA documentation , review the Apache Airfl...

[MS] Making an agile version of a Windows Runtime delegate in C++/WinRT, part 4 - devamazonaws.blogspot.com

Last time, we wrote a wrapper delegate that checked whether the context it was being invoked from matched the context it was captured from . if (d.try_as<::INoMarshal>()) { return [d = std::forward<Delegate>(d), context = winrt::capture<IContextCallback>(CoGetObjectContext)](auto&&...args) { if (context == winrt::capture<IContextCallback>(CoGetObjectContext)) { d(std::forward<decltype(args)>(args)...); } else { throw winrt::hresult_error(CO_E_NOT_SUPPORTED); } }; } We did this by comparing context objects. This obtains the current object context in order to compare it with the original one, and that means an internal Add­Ref , and then we have to explicitly Release it. But there's a way to do this without having to obtain any objects. The Co­Get­Context­Token function gives you an integer that uniquely identifies a live context ob...

AWS Lambda durable execution SDK for .NET is now generally available - devamazonaws.blogspot.com

Today, AWS announces the general availability of the AWS Lambda Durable Execution SDK for .NET, empowering C# developers to build resilient, long-running workflows using Lambda durable functions. With this SDK, developers can create multi-step applications like payment processing pipelines, AI agent orchestration, and human-in-the-loop approvals directly in their applications without implementing custom progress tracking or integrating external orchestration services.  Lambda durable functions extend Lambda's event-driven programming model with operations that checkpoint progress automatically and pause execution for up to a year when waiting on external events. The AWS Lambda Durable Execution SDK for .NET provides an idiomatic C# experience for building with Lambda durable functions. It includes steps for progress tracking, callback integration for human and agent-in-the-loop workflows, durable invocation for reliable function chaining, and waits for efficient suspension. The S...