Quantcast
Channel: Category Name
Viewing all 10804 articles
Browse latest View live

Because it’s Friday: A Titanic Brexit

$
0
0

Boris Johnson once declared that Britain leaving the European Union would be a "Titanic success". More than a year ago Comedy Central UK imagined what such a success would look like, and the prospects look much the same today: 

That's all from us for this week. Have a great weekend, and see you later! 


Migrate Windows Server 2008 to Azure with Azure Site Recovery

$
0
0

For close to 10 years now, Windows Server 2008/2008 R2 has been a trusted and preferred server platform for our customers. With millions of instances deployed worldwide, our customers run many of their business applications including their most critical ones on the Windows Server 2008 platform.

With the end of support for Windows Server 2008 in January 2020 fast approaching, now is a great opportunity for customers running Windows Server 2008 to modernize your applications and infrastructure and take advantage of the power of Azure. But we know that the process of digital transformation doesn’t happen overnight. There are some great new offers that customers running their business applications on Windows Server 2008 can benefit from as they get started on their digital transformation journey in Azure. One of the options available to customers is the option to migrate servers running Windows Server 2008 to Azure and get extended security updates for three years past the end of support date, and this offer is available at no additional cost. In other words, if you choose to run your applications on Windows Server 2008 on Azure virtual machines, you get extended security updates for free. Further, with Azure Hybrid Benefit you can realize great savings on license costs on Windows Server 2008 machines you migrate to Azure.   

How do I migrate my servers?

This is where Azure Site Recovery comes in. Azure Site Recovery lets you easily migrate your Windows Server 2008 machines including the operating system, data and applications on it to Azure. All you need to do is perform a few basic setup steps, create storage accounts in your Azure subscription, and then get started with Azure Site Recovery by replicating servers to your storage accounts. Azure Site Recovery orchestrates the replication of data and lets you migrate replicating servers to Azure when you are ready. You can use Azure Site Recovery to migrate your servers running on VMware virtual machines, Hyper-V or physical servers.

I’m running the 32 bit version of Windows Server 2008. Can I use Azure Site Recovery?

Absolutely. Azure Site Recovery already supports migration of servers running Windows Server 2008 R2 to Azure. In order to make it easier for customers to take advantage of the new offers available to you, Azure Site Recovery has now added the ability to migrate servers running Windows Server 2008, including servers running 32-bit and 64-bit versions of Windows Server 2008 to Azure.

Customers eligible for the Azure Hybrid Benefit can configure Azure Site Recovery to apply the benefit to the servers you are migrating and save on licensing costs for Windows Server. Azure Site Recovery is also completely free to use if you complete your migration within 31 days.

Ready to migrate Windows Server 2008 32-bit and 64-bit machines to Azure? Get started.

Azure Block Blob Storage Backup

$
0
0

Azure Blob Storage is Microsoft's massively scalable cloud object store. Blob Storage is ideal for storing any unstructured data such as images, documents and other file types. Read this Introduction to object storage in Azure to learn more about how it can be used in a wide variety of scenarios.

The data in Azure Blob Storage is always replicated to ensure durability and high availability. Azure Storage replication copies your data so that it is protected from planned and unplanned events ranging from transient hardware failures, network or power outages, massive natural disasters, and so on. You can choose to replicate your data within the same data center, across zonal data centers within the same region, and even across regions. Find more details on storage replication.

Although Blob storage supports replication out-of-box, it's important to understand that the replication of data does not protect against application errors. Any problems at the application layer are also committed to the replicas that Azure Storage maintains. For this reason, it can be important to maintain backups of blob data in Azure Storage. 

Currently Azure Blob Storage doesn’t offer an out-of-the-box solution for backing up block blobs. In this blog post, I will design a back-up solution that can be used to perform weekly full and daily incremental back-ups of storage accounts containing block blobs for any create, replace, and delete operations. The solution also walks through storage account recovery should it be required.

The solution makes use of the following technologies to achieve this back-up functionality:

In our scenario, we will publish events to Azure Storage Queues to support daily incremental back-ups.

  • Azcopy – AzCopy is a command-line utility designed for copying data to/from Microsoft Azure Blob, File, and Table storage, using simple commands designed for optimal performance. You can copy data between a file system and a storage account, or between storage accounts. In our scenario we will use AzCopy to achieve full back-up functionality and will use it to copy the content from one storage account to another storage account.
  • EventGrids – Azure Storage events allow applications to react to the creation and deletion of blobs and it does so without the need for complicated code or expensive and inefficient polling services. Instead, events are pushed through Azure Event Grids to subscribers such as Azure Functions, Azure Logic Apps, or Azure Storage Queues.
  • Event Grid extension –  To store the storage events to Azure Queue storage. At the time of writing this blog, this feature is in preview. To use it, you must install the Event Grid extension for Azure CLI. You can install it with az extension add --name eventgrid.
  • Docker Container – To host the listener to read the events from Azure Queue Storage. Please note the sample code given with the blog is a .Net core application and can be hosted on a platform of your choice and it has no dependency on docker containers.
  • Azure Table Storage – This is used to keep the events metadata of incremental back-up and used while performing the re-store. Please note, you can have the events metadata stored in a database of your choice like Azure SQL, Cosmos DB etc. Changing the database will require code changes in the samples solution.

Introduction

Based on my experience in the field, I have noticed that most customers require full and incremental backups taken on specific schedules. Let’s say you have a requirement to have weekly full and daily incremental backups. In the case of a disaster, you need a capability to restore the blobs using the backup sets.

High Level architecture/data flow

Here is the high-level architecture and data flow of the proposed solution to support incremental back-up.

clip_image002

clip_image002[6]

Here is the detailed logic followed by the .Net Core based listener while copying the data for an incremental backup from the source storage account to the destination storage account.

While performing the back-up operation, the listener performs the following steps:image

  1. Creates a new blob container in the destination storage account for every year like “2018”.
  2. Creates a logical sub folder for each week under the year container like “wk21”. In case there are no files created or deleted in wk21 no logical folder will be created. CalendarWeekRule.FirstFullWeek has been used to determine the week number.
  3. Creates a logical sub folder for each day of the week under the year and week container like dy0, dy1, dy2. In case there are no files created or deleted for a day no logical folder will be created for that day.
  4. While copying the files, the listener changes the source container names to logical folder names in the destination storage account.

Example:

SSA1 (Source Storage Account) -> Images (Container) –> Image1.jpg

Will move to:

DSA1 (Destination Storage Account) -> 2018 (Container)-> WK2 (Logical Folder) -> dy0 (Logical Folder) -> Images (Logical Folder) –> Image1.jpg

Here are the high-level steps to configure incremental backup

  1. Create a new storage account (destination) where you want to take the back-up.
  2. Create an event grid subscription for the storage account (source) to store the create/replace and delete events into Azure Storage queue. The command to set up the subscription is provided on the samples site.
  3. Create a table in Azure Table storage where the event grid events will finally be stored by the .Net Listener.
  4. Configure the .Net Listener (backup.utility) to start taking the incremental backup. Please note there can be as many as instances of this listener as needed to perform the backup, based the load on your storage account. Details on the listener configuration are provided on the samples site.

Here are the high-level steps to configure full backup

  1. Schedule AZCopy on the start of week, i.e., Sunday 12:00 AM to move the complete data from the source storage account to the destination storage account.
  2. Use AZcopy to move the data in a logical folder like “fbkp” to the corresponding year container and week folder in the destination storage account.
  3. You can schedule AZCopy on a VM, on a Jenkins job, etc., depending on your technology landscape.

In case of a disaster, the solution provides an option to restore the storage account by choosing one weekly full back-up as a base and applying the changes on top of it from an incremental back-up. Please note the suggested option is one of the options: you may choose to restore by applying only the logs from incremental backup, but it can take longer depending on the period of re-store.

Here are the high-level steps to configure restore

  1. Create a new storage account (destination) where the data needs to be restored.
  2. Move data from full back up folder “fbkp” using AZCopy to the destination storage account.
  3. Initiate the incremental restore process by providing the start date and end date to restore.utility. Details on the configuration is provided on samples site.

For example: Restore process reads the data from the table storage for the period 01/08/2018 to 01/10/2018 sequentially to perform the restore.

For each read record, the restore process adds, updates, or deletes the file in the destination storage account.

Supported Artifacts

Find source code and instructions to setup the back-up solution.

Considerations/limitations

  • Blob Storage events are available in Blob Storage accounts and in General Purpose v2 storage accounts only. Hence the storage account configured for the back-up should either be Blob storage account or General Purpose V2 account. Find out more by visiting our Reacting to Blob Storage events documentation.
  • Blob storage events are fired for create, replace and deletes. Hence, modifications to the blobs are not supported at this point of time but it will be eventually supported.
  • In case a user creates a file at T1 and deletes the same file at T10 and the backup listener has not copied that file, you won’t be able to restore that file from the backup. For these kind of scenarios, you can enable soft delete on your storage account and either modify the solution to support restoring from soft delete or recover these missed files manually.
  • Since restore will execute the restore operation by reading the logs sequentially it can take considerable amount of time to complete. The actual time can span hours or days and the correct duration can be determined only by performing a test.
  • AZCopy to be used to perform the weekly full back up. The duration of execution will depend on the data size and can span hours or days.

Conclusion

In this blog post, I’ve described a proof of concept for how you would add incremental backup support to a separate storage account for Azure Blobs. The necessary code samples, description, as well as background to each step is described to allow you to create your own solution customized for what you need.

    Bing.com runs on .NET Core 2.1!

    $
    0
    0

    Bing.com is a cloud service that runs on thousands of servers spanning many datacenters across the globe. Bing servers handle thousands of users’ queries every second from consumers around the world doing searches through their browsers, from our partners using the Microsoft Cognitive Services APIs, and from the personal digital assistant, Cortana. Our users demand both relevancy and speed in those results, thus performance and reliability are key components in running a successful cloud service such as Bing.

    Bing’s front-end stack is written predominantly in managed code layered in an MVC pattern. Most of the business logic code is written as data models in C#, and the view logic is written in Razor. This layer is responsible for transforming the search result data (encoded as Microsoft Bond) to HTML that is then compressed and sent to the browser. As gatekeepers of that front-end platform at Bing, we consider developer productivity and feature agility as additional key components in our definition of success. Hundreds of developers rely on this platform to get their features to production, and they expect it to run like clockwork.

    Since its beginning, Bing.com has run on the .NET Framework, but it recently transitioned to running on .NET Core. The main reasons driving Bing.com’s adoption of .NET Core are performance (a.k.a serving latency), support for side-by-side and app-local installation independent of the machine-wide installation (or lack thereof) and ReadyToRun images. In anticipation of those improvements, we started an effort to make the code portable across .NET implementations, rather than relying on libraries only available on Windows and only with the .NET Framework. The team started the effort with .NET Standard 1.x, but the reduced API surface caused non-trivial complications for our code migrations. With the 20,000+ APIs that returned with .NET Standard 2.0, all that changed, and we were able to quickly shift gears from code modifications to testing. After squashing a few bugs, we were ready to deploy .NET Core to production.

    ReadyToRun Images

    Managed applications often can have poor startup performance as methods first have to be JIT compiled to machine code. .NET Framework has a precompilation technology, NGEN. However, NGEN requires the precompilation step to occur on the machine on which the code will execute. For Bing, that would mean NGENing on thousands of machines. This coupled with an aggressive deployment cycle would result in significant serving capacity reduction as the application gets precompiled on the web-serving machines. Furthermore, running NGEN requires administrative privileges, which are often unavailable or heavily scrutinized in a datacenter setting. On .NET Core, the crossgen tool allows the code to be precompiled as a pre-deployment step, such as in the build lab, and the images deployed to production are Ready To Run!

    Performance

    .NET Core 2.1 has made major performance improvements in virtually all areas of the runtime and libraries; a great treatise is available on a previous post in the blog.

    Our production data resonates with the significant performance improvements in .NET Core 2.1 (as compared to both .NET Core 2.0 and .NET Framework 4.7.2). The graph below tracks our internal server latency over the last few months. The Y axis is the latency (actual values omitted), and the final precipitous drop (on June 2) is the deployment of .NET Core 2.1! That is a 34% improvement, all thanks to the hard work of the .NET community!

    The following changes in .NET Core 2.1 are the highlights of this phenomenal improvement for our workload. They’re presented in decreasing order of impact.

    1. Vectorization of string.Equals (@jkotas) & string.IndexOf/LastIndexOf (@eerhardt)

    Whichever way you slice it, HTML rendering and manipulation are string-heavy workloads. String comparisons and indexing operations are major components of that. Vectorization of these operations is the single biggest contributor to the performance improvement we’ve measured.

    1. Devirtualization Support for EqualityComparer<T>.Default (@AndyAyersMS)

    One of our major software components is a heavy user of Dictionary<int/long, V>, which indirectly benefits from the intrinsic recognition work that was done in the JIT to make Dictionary<K, V> amenable to that optimization (@benaadams)

    1. Software Write Watch for Concurrent GC (@Maoni0 and @kouvel)

    This led to reduction in CPU usage in our application. Prior to .NET Core 2.1, the write-watch on Windows x64 (and on the .NET Framework) was implemented using Windows APIs that had a different performance trade-off. This new implementation relies on a JIT Write Barrier, which intuitively increases the cost of a reference store, but that cost is amortized and not noticed in our workload. This improvement is now also available on the .NET Framework via May 2018 Security and Quality Rollup

    1. Methods with calli are now inline-able (@AndyAyersMS and @mjsabby)

    We use ldftn + calli in lieu of delegates (which incur an object allocation) in performance-critical pieces of our code where there is a need to call a managed method indirectly. This change allowed method bodies with a calli instruction to be eligible for inlining. Our dependency injection framework generates such methods.

    1. Improve performance of string.IndexOfAny for 2 & 3 char searches (@bbowyersmyth)

    A common operation in a front-end stack is search for ‘:’, ‘/’, ‘/’ in a string to delimit portions of a URL. This special-casing improvement was beneficial throughout the codebase.

    In addition to the runtime changes, .NET Core 2.1 also brought Brotli support to the .NET Library ecosystem. Bing.com uses this capability to dynamically compress the content and deliver it to supporting browsers.

    Runtime Agility

    Finally, the ability to have an xcopy version of the runtime inside our application means we’re able to adopt newer versions of the runtime at a much faster pace. In fact, if you peek at the graph above we took the .NET Core 2.1 update worldwide in a regular application deployment on June 2, which is two days after it was released!

    This was possible because we were running our continuous integration (CI) pipeline with .NET Core’s daily CI builds testing functionality and performance all the way through the release.

    We’re excited about the future and are collaborating closely with the .NET team to help them qualify their future updates! The .NET Core team is excited because of our large catalog of functional tests and an additional large codebase to measure real-world performance improvements on, as well as our commitment to providing both Bing.com users fast results and our own developers working with the latest software and tools.

    This blog post was authored by Mukul Sabharwal (@mjsabby) from the Bing.com Engineering team.

    Important dates regarding apps with Windows Phone 8.x and earlier and Windows 8/8.1 packages submitted to Microsoft Store

    $
    0
    0

    As a part of our Windows device life cycle, Microsoft Store will soon stop accepting new apps with Windows Phone 8.x or earlier or Windows 8/8.1 packages (XAP and APPX). Soon after that date, we will stop distributing app updates to Windows Phone 8.x or earlier and Windows 8/8.1 devices; at that time, updates will only be made available to customers using Windows 10 devices.

    Take note of the following dates so you can effectively plan your development cycles:

    • October 31st, 2018 – Microsoft will stop accepting new app submissions with Windows Phone 8.x or earlier or Windows 8/8.1 packages (XAP or APPX)
      • This will not affect existing apps with packages targeting Windows Phone 8.x or earlier and/or Windows 8/8.1. You can continue to submit updates to these apps as described below.
    • July 1st, 2019 – Microsoft will stop distributing app updates to Windows Phone 8.x or earlier devices.
      • You’ll still be able to publish updates to all apps (including those with Windows Phone 8.x or earlier packages). However, these updates will only be made available to Windows 10 devices.
    • July 1st, 2023 – Microsoft will stop distributing app updates to Windows 8/8.1 devices.
      • You’ll still be able to publish updates to all apps (including those with Windows 8/8.1 packages). However, these updates will only be made available to Windows 10 devices.

    We encourage you to explore how you can port your existing app to the Universal Windows Platform (UWP) where you can create a single Windows 10 app package that your customers can install onto all device families. You can learn more about UWP apps here.

    The post Important dates regarding apps with Windows Phone 8.x and earlier and Windows 8/8.1 packages submitted to Microsoft Store appeared first on Windows Developer Blog.

    Driving industry transformation with Azure – Getting started – Edition 1

    $
    0
    0

    Microsoft is highly focused on solving industry challenges, creating new opportunities and driving digital transformation for all organizations. Through dedicated industry resources from Microsoft and premier partners, new solutions, content, and guidance are released almost daily. This monthly blog aggregates a series of the newest resources focused on how Azure can address common challenges and drive new opportunities in a variety of industries.

    image

    Banking and Capital Markets

    • Protecting against fraud and financial crime
      New types of attack vectors and fraud are emerging every day, and detection systems need to respond faster  than ever. Find banking case studies and information from financial leaders showing how Azure machine learning and AI solutions can rapidly detect and protect against risks.
    • How to upgrade your financial analysis capabilities with Azure
      In corporate finance and investment banking, risk analysis is a crucial job. Read how Azure can be used to implement a risk assessment solution.
    • Lessons from big-box retail
      Banking customers want more from their services, including new choices, speed, and tailored recommendations. Find out how modern retail experiences can help.

    Health and Life Sciences

    • Register for the Accelerating Artificial Intelligence (AI) in Healthcare Using Microsoft Azure Blueprints -- Part 1: Getting Started webinar!
      Artificial Intelligence holds major potential for healthcare, from predicting patient length of stay to diagnostic imaging, anti-fraud, and many more use cases. To be successful in using AI, healthcare needs solutions, not projects. Learn how you can close the gap to your AI in healthcare solution by accelerating your initiative using  Microsoft Azure blueprints. Blueprints include resources such as example code, test data, security, and compliance support. This session is intended for healthcare provider, payer, pharmaceuticals, and life sciences organizations.
    • Applying innovative cloud technology to improve healthcare
      Find out how healthcare organizations are using AI and machine learning to detect patient risk and identify disease faster while maintaining privacy and protecting against fraud.
    • Blockchain as a tool for anti-fraud
      Fraud significantly contributes to rising health care costs.  Insufficiency protection of data integrity and insufficient transparency enable fraudulent activity. Explore how blockchain is used to address fraud by addressing transparency and data integrity.
    • Current use cases for machine learning in healthcare
      Payers, providers, and pharmaceutical companies are all seeing applicability in their spaces and are taking advantage of ML today. This is a quick overview of key topics in ML, and how is used in healthcare.

    Insurance

    • IoT: the catalyst for better risk management in insurance
      New technologies like the Internet of Things (IoT), Artificial Intelligence (AI), Machine Learning (ML), and Big Data give insurers “superpowers” to assess risk more accurately, manage risk continually, and mitigate risk in real-time.

    Manufacturing

    • Expanding business opportunities with IoT
      IoT in manufacturing isn’t just about collecting data. It’s about gaining insights to inform actions that help drive business goals and create new opportunities. Find use cases, stories and examples to learn how Azure IoT tools are helping manufacturers make the most of IoT in their operations.

    • Foretell and prevent downtime with predictive maintenance
      With advances in cloud storage, machine learning, edge computing, and the Internet of Things – predictive maintenance looms as the next step for the manufacturing industry.

    Retail and consumer goods

    • Azure cloud business value for retail and consumer goods explained
      Explains the reasons retailers and consumer brands to move to the cloud and provides recommended next steps for starting this journey.
    • How to move your e-commerce infrastructure to Azure
      The article outlines the options and decisions that most retailers face when planning a migration to Azure. For example:
      • Do you simply rehost your application in the cloud as-is? You immediately save the cost of infrastructure.
      • Or do you consider application refactoring? A switch to Azure PaaS (and even SaaS) increases the ability to integrate new services — those that expand capability, performance, and scalability.

    I post regularly about new developments on social media. If you would like to follow me, you can find me on Linkedin.

    Multi-member consortium support with Azure Blockchain Workbench 1.3.0

    $
    0
    0

    Continuing our monthly release cadence for Azure Blockchain Workbench, we’re excited to announce the availability of version 1.3.0. You can either deploy a new instance of Workbench through the Azure Portal or upgrade your existing deployment to 1.3.0 using our upgrade script.

    This update includes the following improvements:

    Faster and more reliable deployment

    We look at telemetry every day to identify issues that affect our customers, and as a result made some changes to make deploying Workbench not only more reliable, but faster as well.

    Better transaction reliability

    Continuing from the monitoring improvements we made as part of 1.1.0, we’ve made reliability improvements to the DLT Watcher and DLT Consumer microservices (see the Blockchain Workbench architecture document for more information on those components). Practically speaking, you’ll notice fewer errors saying, “It looks like something went wrong …”

    Ability to deploy Workbench in a multi-member Ethereum PoA consortium

    With release 1.2.0 you could deploy Workbench and connect that deployment to an existing Ethereum-based network. This past week we announced the availability of a new standalone Ethereum PoA solution, which can be deployed across members within a consortium. With these two updates, you can deploy Workbench in three different configurations:

    1. Single-Member System: The default configuration of Workbench, where Workbench is deployed in a blockchain network with only one member.

    image

    2. Multi-Member System Deployed in One Member’s Subscription: You can use the new multi-member PoA consortium solution to deploy a blockchain network across several members. The, you can deploy Workbench in one member’s subscription. Everyone who wants to use Workbench will go through the one member’s Workbench deployment. This topology can be useful for PoCs and initial pilot deployments.

    image

    3. Multi-Member System Deployed in One Shared Subscription: This configuration is similar to the topology described above, except that Workbench is deployed in a shared subscription. Think of this shared subscription as the operator subscription for the consortium.

    image
    We are investigating other topologies, such as one where Workbench is deployed into each subscription. If that interests you, please upvote or request it on our blockchain user voice.

    Simpler pre-deployment script for AAD

    We know going through Workbench deployment instructions can feel like a lot of work, especially setting up AAD and registering an app for the Workbench API. To make things easier, we’ve created a new PowerShell script, which automates most of the AAD setup steps and outputs the parameters you need for Workbench deployment. You can find the instructions and the script on our GitHub.

    aad

    Sample code and tool for working with the Workbench API

    Some of you have asked for more sample code and tools related to generating authentication bearer tokens for Workbench API. We’re excited to announce a new tool, which you can use to generate tokens for your Workbench instance. Source code is also available and can be used to create your own client authentication experience. Try it out by cloning the repo, running the Web page, and plugging in your Application Id.

    Hardening the security of Azure IoT Edge

    $
    0
    0

    Azure IoT Edge which recently became generally available, designs in security from the ground up with avenues for custom security hardening. Security hardening entails additional security measures for given deployments in response to perceived higher threats like physical accessibility of devices by malicious actors. But how do stakeholders go about with security hardening?

    The nature of IoT, Azure IoT Edge included, is such that security threats differ between products and deployments, and solutions are seldom one size fits all. There’s always the need to balance security investments with protection goals and missing this balance results in either inadequate protection or overspending. One very important axis towards achieving this balance is to assess the risks on the IoT device and invest in adequate secure silicon hardware technologies like hardware security modules (HSM) for mitigation. HSM products widely vary in capabilities and cost with some costing orders of magnitude more than others. Rather than coerce the use of one HSM for security hardening, Azure IoT Edge takes a more customizing and accommodating approach.

    Azure IoT Edge introduces the Azure IoT Edge security manager to facilitate achievement of this balance.

    1807_EdgeSecurityManager

    The Azure IoT Edge security manager is a well-bounded security core for protecting the IoT Edge device and all its components by abstracting the secure silicon hardware. It is the focal point for security hardening and provides technology integration point to original device manufacturers (OEM).

    Azure IoT Edge security managers enable stakeholders to harden their deployments with secure silicon technologies optimal for their deployment. While original design and device manufacturers (ODM and OEM) are the primary technology integrators for hardening IoT Edge devices, all IoT Edge stakeholders participate in the choice of secure silicon technologies to integrate through independent contributions to demand and supply market forces.

    One can envision IoT evolving to an era when the world adopts a single commonly trusted one security processor fits all with cost spread out across all stakeholders to become immaterial, but such is deep into the future. Until then, Azure IoT security manager enables all to meet custom security goals using technologies of choice.

    Additional resources


    Azure.Source – Volume 45

    $
    0
    0

    Now generally available

    Announcing VNet service endpoints general availability for MySQL and PostgreSQL - Virtual network service endpoints for Azure Database for MySQL and PostgreSQL in all regions where the service is available for General Purpose and Memory Optimized servers. You can use virtual network service endpoints to isolate connectivity to your logical server from only a subnet or a set of subnets within your virtual network. The traffic to Azure Database for MySQL from your virtual network always stays within the Azure backbone network. Preference for this direct route is over any specific routes that take internet traffic through virtual appliances or on-premises.

    Diagram showing connectivity isolation with VNet service endpoints

    News and updates

    New customizations in Azure Migrate to support your cloud migration - Azure Migrate is a generally available service, offered at no additional charge, that helps you plan your migration to Azure. Azure Migrate discovers servers in your on-premises environment and assesses each discovered server’s readiness to run as an IaaS VM in Azure. Several new features in Azure Migrate enable you to customize the assessments to meet your migration needs, including support for Reserved Instances (RI) and specifying VM series and storage types.

    Azure HDInsight Apache Phoenix now supports Zeppelin - Apache Phoenix is an open source, massively parallel relational database layer built on HBase, and HDInsight is the best place for you to run Apache Phoenix and other Open Source Big Data Applications. Apache Zeppelin is open source Web-based notebook that enables data-driven, interactive data analytics and collaborative documents with SQL, Scala and many other languages, which HDInsight customers can now use to query Phoenix tables.

    Azure App Service on Azure Stack Update 3 Released - Microsoft Azure Stack is an extension of Azure—bringing the agility and innovation of cloud computing to your on-premises environment and enabling the only hybrid cloud that allows you to build and deploy hybrid applications anywhere. The latest update to App Service on Azure Stack adds support for SQL Server Always On for Azure App Service Resource Provider databases, and updates to Functions portals, Kudu tools, ASP.Net Core, and more.

    Azure API Management – VSTS extension v2.0 release - This free extension brings Azure API Management into VSTS as part of your release lifecycle by automating deployments to Azure API Management. Whether you use API Management to monetize APIS or for internal purposes, it is good to associate the release of your backends APIs with their corresponding façade APIs published against the API Gateway. This update includes support of versioned APIs, API prefix, Versioning Schemes, and more.

    Contest: Microsoft AI Idea Challenge - AI’s next breakthrough is you! - The Microsoft AI Idea Challenge is seeking breakthrough AI solutions from developers, data scientists, professionals and students, and preferably developed on the Microsoft AI platform and services. If you’re a professional working in the field of artificial intelligence (AI), or an aspiring AI developer or just someone who is passionate about AI and machine learning, Microsoft is excited to offer you an opportunity to transform your most creative ideas into reality

    Microsoft AI Idea Challenge banner

    Additional news and updates

    The Azure Podcast

    The Azure Podcast | Episode 242 - Azure FastTrack - Principal PM Alex Uy gives us the inside scoop into the Azure FastTrack program that helps companies move their workloads to Azure with support from the Engineering teams.

    Technical content and training

    How to enhance HDInsight security with service endpoints - With the enhanced level of security at the networking layer provided by service endpoints, customers can now lock down their big data storage accounts to their specified Virtual Networks (VNETs) and still use HDInsight clusters seamlessly to access and process that data. This post explores how to enable service endpoints and point out important HDInsight configurations for Azure Blob Storage, Azure SQL DB, and Azure Cosmos DB.

    Azure Cosmos DB reference solution: Visualizing real-time data analysis with change feed - The Azure Cosmos DB Change Feed provides an automatic mechanism for getting a continuous and incremental feed of modified or inserted records from Azure Cosmos DB. This reference solution focuses on real-time data processing, specifically to fit the needs of e-commerce companies; however, it remains applicable to many different domains.

    Azure Content Spotlight – Secure DevOps Kit for Azure (AzSK) - The Secure DevOps Kit for Azure (AzSK) offers a set of scripts, tools, extensions, automations, and more for DevOps teams that are using automation and are integrating security into native DevOps workflows.

    Azure Friday | Getting started with the Secure DevOps Kit for Azure (AzSK) - Mark Jacobs joins Scott Hanselman to discuss how Microsoft's internal enterprise increases compliance and creates a more trusted cloud environment using the Secure DevOps Kit for Azure (AzSK). Learn how Microsoft's DevOps teams leverage this tool to continuously keep their cloud applications secure and how you can use the same tool to reduce risk in your environment.

    Service Fabric and Kubernetes comparison, part 1 – Distributed Systems Architecture - In this first part of a multi-part series, Marcin Kosieradzki provides an in-depth comparison of Service Fabric and Kubernetes, including a look at the design principles that each followed. This article includes a lot of Service Fabric history, too.

    Installing certificates into IoT devices - With lots of people moving to X.509 certificate-based authentication as they start to use the Azure IoT Hub Device Provisioning Service, this post seeks to provide clarity around the cert generation and installation process for IoT devices at production-level scales.

    Azure HDInsight Interactive Query: simplifying big data analytics architecture - Without right architecture and tools, many big data and analytics projects fail to catch on with common BI users and enterprise security architects. This post covers architectural approaches that will help you architect big data solution for fast interactive queries, simplified security model and improved user adoption with BI users.

    Architectural diagram showing simplified and scalable architecture with HDInsight Interactive Query

    Serverless, DevOps, and CI/CD: Part 3 - In this third installment of a multi-part series (Serverless, DevOps, and CI/CD: Part 1 and Serverless, DevOps, and CI/CD: Part 2), Jeff Hollan covers one method for managing serverless architecture environments and versions automatically and seamlessly.

    Azure SQL With PCF Spring Boot Applications (Part 1 — GeoReplication) - This is part 1 of a 2-part series demonstrating how to leverage advanced Azure SQL (PaaS) features from Java Spring Boot applications running on PCF (Pivotal CloudFoundry) on Azure. The first article shows how to use a Spring Boot application with Azure SQL Database auto-failover groups to provide resilience to regional outages, and a future article will cover how to use the Azure SQL AlwaysEncrypted feature in Spring Boot applications to provide encryption for PI data in the cloud.

    Make R speak with the Bing Speech API - Ever wanted to make R talk to you? Now you can, with the mscstts package by John Muschelli. It provides an interface to the Microsoft Cognitive Services Text-to-Speech API (hence the name) in Azure, and you can use it to convert any short piece of text to a playable audio file, rendering it as speech using a number of different voices.

    Azure tips & tricks

    How to quickly connect to Windows VMs using RDP

    How to quickly connect to Windows VMs using RDP

    Learn how to quickly connect to Windows Virtual Machines (VMs) with Remote Desktop Protocol (RDP). Watch how easy and fast it is to connect to your virtual machines in Azure.

    How to quickly connect to a Linux VM with SSH

    How to quickly connect to a Linux VM with SSH

    Learn how to quickly connect to a Linux Virtual Machine (VM) with secure shell (SSH). If you have Linux VMs that are running inside of Microsoft Azure, you can easily establish an SSH connection.

    Events

    Webinar: Accelerating Artificial Intelligence (AI) in Healthcare Using Microsoft Azure Blueprints -- Part 1: Getting Started - Artificial Intelligence holds major potential for healthcare, from predicting patient length of stay to diagnostic imaging, anti-fraud, and many more use cases. To be successful in using AI, healthcare needs solutions, not projects. Learn how you can close the gap to your AI in healthcare solution by accelerating your initiative using Microsoft Azure blueprints. Blueprints include resources such as example code, test data, security, and compliance support. This session is intended for healthcare provider, payer, pharmaceuticals, and life sciences organizations. Key roles include senior technical decision makers, IT Managers Cloud Architects, and developers.

    IoT in Action: Building secure, sophisticated solutions - IoT in Action is an in-person event focused on addressing the latest topics around IoT security, innovations, and solutions. It’s a great opportunity to meet and collaborate with Microsoft’s customer and partner ecosystem. At this year’s event, we’re providing an increased number of hands-on technical sessions and in-depth learning around IoT security and Azure Sphere. By attending, you’ll gain actionable insights, deepen partnerships, and unlock the transformative potential of intelligent edge and intelligent cloud. Events will be held in Barcelona, Santa Clara, Taipei, and Shenzhen, with more locations to be announced.

    The IoT Show

    Chirp your device into Azure IoT Central

    Internet of Things Show | Chirp your device into Azure IoT Central - Here is a smart way to use sound to provision IoT devices with wireless configuration, Cloud connection credentials and more. Chirp created enterprise-ready, cross platform SDKs for transmitting data over sound and the Azure IoT team collaborated with Chirp to implement a nice and easy way to setup an MXChip devkit and connect it to Azure IoT Central using just sound.

    Customers and partners

    Azure Site Recovery powers Veritas Backup Exec Instant Cloud Recovery for DR - Microsoft Azure Site Recovery (ASR) offers Disaster Recovery as a Service (DRaaS) for applications running in Azure and on-premises. Using ASR, you can reduce application downtime during IT interruptions, without compromising compliance. ASR provides comprehensive coverage for on-premises applications across Linux, Windows, VMware and Hyper-V virtual machines, and physical servers. Azure Site Recovery now powers Veritas Backup Exec Instant Cloud Recovery (ICR) with Backup Exec 20.2 release.

    Azure Marketplace new offers: July 1–15 - The Azure Marketplace is the premier destination for all your software needs – certified and optimized to run on Azure. Find, try, purchase, and provision applications & services from hundreds of leading software providers. In the first half of July we published 97 new offers, including new virtual machine images (e.g., Bloombase StoreSafe), web applications (e.g., Kaspersky Hybrid Cloud Security (BYOL)) and consulting services (e.g., Carbonite Endpoint Protection - Azure 500 Bundle).

    A Cloud Guru's Azure This Week

    A Cloud Guru's Azure This Week - 17 August 2018

    A Cloud Guru's Azure This Week - 17 August 2018 - This time on Azure This Week, Lars talks about three new features on Azure: Windows Container support in Azure App Service, Azure Cosmos DB JavaScript SDK now in version 2.0 and the general availability of Azure SQL Database reserved capacity. Also, a tip on a great show to watch for more Azure knowledge and hands-on examples.

    Visual Studio for Mac version 7.6

    $
    0
    0

    Today we are announcing the release of Visual Studio for Mac version 7.6. Our focus with this release has been to improve product reliability in various areas, with a special focus on the code editing experience. We have also made several fixes that improve IDE performance. Finally, we’ve extended our support for Azure functions with the addition of new templates and the ability to publish your function to Azure from within the IDE.

    This post highlights the major improvements in this release. To see the complete list of changes, check out the Visual Studio for Mac version 7.6 Release Notes. You can get started by downloading the new release or updating your existing install to the latest build available in the Stable channel.

    Improving reliability of the Code Editor

    We’ve focused our attention on improving the reliability of the code editor in Visual Studio for Mac and have addressed several issues with the code editor. In particular, we want to highlight the following fixes to issues many of you have reported:

    Improving performance of the IDE

    One of the top reported bugs in previous releases has been performance issues in the editor. Having a fast and reliable code editor is a fundamental part of any IDE and an important part of any developer’s workflow, so we’ve made some improvements in this area:

    • We improved tag-based classification for C# with PR #4740 by reusing existing Visual Studio for Windows code, which should improve typing performance in the editor.
    • We now support no-op restore of NuGet packages when opening a solution. This change speeds up NuGet restores on solution load.

    We’ve also added many more small fixes that improve startup time and reduce memory consumption of the IDE.

    Richer support for Azure Functions

    Azure functions are a great way to quickly get up and running with a serverless function in just a few minutes. With this release, we have introduced new templates for you to choose from when creating your Azure Functions project:

    New Project Dialog showing how to configure Azure Functions project

    These new templates allow you to configure access rights, connection strings, and any other binding properties that are required to configure the function. For information on selecting a template, refer to the Available function templates guide.

    Another major part of the Azure functions workflow that we are introducing with this release is publishing of functions from Visual Studio for Mac to the Azure Portal. To publish a function, simply right-click on the project name and select Publish > Publish to Azure. You’ll then be able to publish to an existing Azure App Service or use the publishing wizard to create a new one:

    New App Service Dialog showing how to create new app service on Azure

    For information on publishing to Azure from Visual Studio for Mac, see the Publishing to Azure guide.

    Share your Feedback

    Addressing reliability and performance issues in Visual Studio for Mac remains our top priority. Your feedback is extremely important to us and helps us prioritize the issues that are most impacting your workflow. There are several ways that you can reach out to us:

    • Use the Report a Problem tool in Visual Studio for Mac.
      • We are enhancing the Report a Problem experience by allowing you to report a problem without leaving the IDE. You’ll have the ability to automatically include additional information, such as crash logs, that will help our Engineering team narrow down the root cause of your report more effectively. This will be introduced in an upcoming servicing release to 7.6 that will be available in the Stable channel within the next few weeks.
    • You can track your issues on the Visual Studio Developer Community portal where you can ask questions and find answers.
    • In addition to filing issues, you can also add your vote or comment on existing issues. This helps us assess the impact of the issue.
    Dominic Nahous, Senior PM Manager, Visual Studio for Mac
    @VisualStudio

    Dominic works as a PM manager on Visual Studio for Mac. His team focuses on ensuring a delightful experience for developers using a Mac to build apps.

    Azure Marketplace consulting offers: May

    $
    0
    0

    We continue to expand the Azure Marketplace ecosystem. In May, 26 consulting offers successfully met the onboarding criteria and went live. See details of the new offers below:


    App Migration to Azure 10-Day Workshop (2nd- Canada)

    App Migration to Azure 10-Day Workshop: In this workshop, Imaginet’s Azure professionals will accelerate your application modernization and migration efforts while adding in the robustness and scalability of cloud technologies. For U.S. customers.

    App Migration to Azure 10-Day Workshop

    App Migration to Azure 10-Day Workshop: In this workshop, Imaginet’s Azure professionals will accelerate your application modernization and migration efforts while adding in the robustness and scalability of cloud technologies. For customers in Canada.

    Application Migration & Sizing 1-Week Assessment - [UnifyCloud]

    Application Migration & Sizing: 1-Week Assessment: We use CloudPilot’s static code analysis to scan the application source code and use configuration data to provide a detailed report of code-level changes to modernize your applications for the cloud.

    AzStudio PaaS Platform 2-Day Proof of Concept - [Monza Cloud]

    AzStudio PaaS Platform: 2-Day Proof of Concept: Receive a two-day proof of concept on our AzStudio platform and learn how it can rapidly accelerate Azure Platform-as-a-Service development.

    Azure Architecture Design 2-Week Assessment [Sikich]

    Azure Architecture Design 2-Week Assessment: In this assessment, Sikich will identify the client’s business requirements and create an Azure architecture design. This will include a structural design, a monthly estimated cost, and estimated installation services.

    Azure Datacenter Migration 2-Week Assessment [Sikich]

    Azure Datacenter Migration 2-Week Assessment: After listening to your business requirements and future business goals, we will develop an Azure datacenter migration plan to expand your IT capabilities with hosting on Azure.

    Azure Enterprise-Class Networking 1-Day Workshop [Dynamics Edge]

    Azure Enterprise-Class Networking: 1-Day Workshop: In this workshop, you will configure a virtual network with subnets in Azure, secure networks with firewall rules and route tables, and set up access to the virtual network with a jump box and a site-to-site VPN connection.

    Azure Jumpstart 4-Day Workshop [US Medical IT]

    Azure Jumpstart Workshop: This on-site workshop will involve looking at the client's framework, setting up a VPN, extending on-premises migration of Active Directory on Microsoft Azure, and assisting the client in installing BitTitan’s Azure HealthCheck software.

    Azure Migration Assessment 1 Day Assessment [Confluent]

    Azure Migration Assessment: 1 Day Assessment: Confluent’s virtual assessment will focus on a server environment and determine the financial impact and technical implications of migrating to Microsoft Azure.

    Azure Subscription 2-Wk Assessment [UnifyCloud]

    Azure Subscription: 2-Wk Assessment: UnifyCloud will assess your Azure subscription and provide recommendations for how you can save money. Optimize and control your Azure resources for your budget, security standards, and regulatory baselines.

    Azure Enterprise-Class Networking 1-Day Workshop [Dynamics Edge]

    Big Data Analytics Solutions: 2-Day Workshop: Data professionals will learn how to design solutions for batch and real-time data processing. Different methods of using Azure will be discussed and practiced in lab exercises, such as Azure CLI, Azure PowerShell, and Azure Portal.

    Cloud Governance 3-Wk Assessment [Cloudneeti]

    Cloud Governance: 3-Wk Assessment: Within a fixed time and scope, our team of Azure architects will deliver an assessment spanning five key areas of Azure governance: Active Directory, subscription, resource group, resources, and policies.

    Cloud HPC Consultation 1-Hr Briefing [UberCloud]

    Cloud HPC Consultation 1-Hr Briefing: This one-hour custom online briefing is for technical and business leaders who want to learn how Cloud HPC can benefit their engineering simulations.

    Azure Enterprise-Class Networking 1-Day Workshop [Dynamics Edge]

    Continuous Delivery in VSTS/Azure: 1-Day Workshop: This instructor-led course is intended for data professionals who want to set up and configure Continuous Delivery within Azure using Azure Resource Manager (ARM) templates and Visual Studio Team Services (VSTS).

    Digital Platform for Contracting 4-Hr Assessment [Vana Solutions]

    Digital Platform for Contracting: 4-Hr Assessment: Vana’s contracting solution for government streamlines the contracting lifecycle. From contract initiation to records management, it provides a cloud or on-premises platform for agile acquisition.

    Azure Subscription 2-Wk Assessment [UnifyCloud]

    GDPR of On-Premise Environment: 2-Wk Assessment: Improve your GDPR compliance in two weeks with a data-driven assessment of your IT infrastructure and your cybersecurity and data protection solutions.

    IoT and Computer Vision with Azure 4-Day Workshop [Agitare Technologies]

    IoT and Computer Vision with Azure: 4-Day Workshop: Gain hands-on experience with Azure IoT services and Raspberry Pi by creating a simple home security solution in this four-day IoT workshop. The workshop is ideal for hardware vendors or technology professionals.

    Kubernetes on Azure 2-Day Workshop [Architech]

    Kubernetes on Azure 2-Day Workshop: Kubernetes is quickly becoming the container orchestration platform of choice for organizations deploying applications in the cloud. Ramp up your development and operations team members with this deeply technical boot camp.

    Azure Enterprise-Class Networking 1-Day Workshop [Dynamics Edge]

    Lift and Shift/Resource Mgr: 1Day Virtual Workshop: This workshop details how to migrate an on-premises procurement system to Azure, map dependencies onto Azure Infrastructure-as-a-Service virtual machines, and provide end-state design and high-level steps to get there.

    Azure Subscription 2-Wk Assessment [UnifyCloud]

    Managed Cost & Security: 2-Wk Assessment: Our managed service ensures you stay in control of all your Azure resources in terms of cost, security, governance and regulatory compliance (e.g., GDPR, PCI, ISO).

    Azure Architecture Design 2-Week Assessment [Sikich]

    Microsoft Azure App Hosting Design 1-Wk Assessment: An Azure application hosting design will be created based on the customer's requirements. This will include a structural design, the monthly estimated cost, and estimated installation services.

    Migrate Local MS SQL Database To Azure 4-Wk [Akvelon]

    Migrate Local MS SQL Database To Azure: 4-Wk: Akvelon will migrate your local Microsoft SQL Server workload to Azure SQL Database cloud services or an Azure virtual machine in a quick, safe, and cost-effective manner.

    Migrate Local MS SQL Database To Azure 4-Wk [Akvelon]

    Migrate Your Websites: 5-Wk Implementation: Migrating your websites to Azure Infrastructure-as-a-Service is a big step for your business. Akvelon will migrate and deploy your web apps to Azure, allowing you to take advantage of Azure's hosting services and scalability.

    Azure Enterprise-Class Networking 1-Day Workshop [Dynamics Edge]

    Modern Cloud Apps: 1-day Virtual Workshop: This workshop will teach you how to implement an end-to-end solution for e-commerce that is based on Azure App Service, Azure Active Directory, and Visual Studio Online. We suggest students first take the Azure Essentials course.

    Permissioned Private Blockchain - 4-Wk PoC [Skcript]

    Permissioned Private Blockchain - 4-Wk PoC: Before businesses can use blockchain to solve their problems, they must understand blockchain's technical capabilities. Skcript helps you evaluate, ideate, and build blockchain solutions for your business needs.

    Zero Dollar Down SAP Migration 1-Day Assessment [Wharfdale Technologies]

    Zero Dollar Down SAP Migration 1-Day Assessment: Wharfedale Technologies empowers clients in SAP digital transformation by migrating SAP landscapes to Microsoft Azure for no upfront costs. This model helps customers overcome their budget and resource challenges.

    DPDK (Data Plane Development Kit) for Linux VMs now generally available

    $
    0
    0

    Data Plane Development Kit (DPDK) in an Azure Linux Virtual Machine (VM) that offers a fast user space packet processing framework for performance intensive applications that bypass the VM’s kernel network stack, is now generally available in all Azure regions!

    DPDK provides a key performance differentiation in driving network function virtualization implementations, in the form of network virtual appliances (NVA) such as a virtual router, firewall, VPN, load balancer, evolved packet core, and denial-of-service (DDoS) applications. Customers in Azure can now use DPDK capabilities running in Linux VMs with multiple Linux OS distributions (Ubuntu, RHEL, CentOS and SLES) to achieve higher packets per second (PPS).

    The following distributions from the Azure Gallery are supported:

    Linux OS

    Kernel Version

    Ubuntu 16.04

    4.15.0-1015-azure

    Ubuntu 18.04

    4.15.0-1015-azure

    SLES 15

    4.12.14-5.5-azure

    RHEL 7.5

    3.10.0-862.9.1.el7

    CentOS 7.5

    3.10.0-862.3.3.el7

    Data Plane Development Kit for Linux VMs

    In the case of an Azure Linux VM without DPDK, packet processing is through a kernel network stack which is interrupt driven. Each time the network adapter receives incoming packets, there is a kernel interrupt to process the packet and context switch from a kernel space to a user space.

    Azure Linux VM with DPDK eliminates context switching and the interrupt driven method in favor of a user space implementation using poll mode drivers for fast packet processing. Bypassing the kernel and taking control of packets in user space reduces the cycle count and improves the rate of packets processed per second in Azure Linux VMs.

    DPDK in an Azure Linux VM is enabled over Azure Accelerated Networking to leverage the advantages of High Performance NIC with FPGA.

    Get started with setting up DPDK in a Linux VM from Microsoft Azure today!

    Expanded Azure Blueprint for FFIEC compliant workloads

    $
    0
    0

    We are pleased to announce general availability of the expanded Blueprint for Federal Financial Institution Examination Council (FFIEC) regulated workloads. As more financial services customers moving to the Azure cloud platform, we wanted to expand the Blueprint to explain how to deploy four different reference architectures in a secure and compliant way. It also takes the guesswork out of figuring out what security controls Microsoft implements on your behalf when you build on Azure, and how to implement the customer-responsible security controls.

    We have built an end-to-end solution for moving compliant workloads to Azure, and reducing the time required to do so, leveraging Microsoft’s experience in working with banks in the U.S. and around the globe. Why start from scratch when you don’t have to? This Blueprint provides guidance for the deployment of PaaS Web Applications, IaaS Web Applications, Data Analytics, and Data Warehouse architecture in Azure suitable for the collection, storage, and retrieval of sensitive financial data regulated by the FFIEC.

    The FFIEC Blueprint now consists of:workloads

    • Four reference architectures, with supporting deployment guidance
    • Threat models to understand the points of potential risk
    • Security control implementation mappings which describes how the reference architecture supports each control
    • Customer responsibility matrix which details the implementation of each objective is the responsibility of Microsoft, the customer, or both

    For more information and to get started, check out the following:

    Logic Apps, Flow connectors will make Automating Video Indexer simpler than ever

    $
    0
    0

    Video Indexer recently released a new and improved Video Indexer V2 API. This RESTful API supports both server-to-server and client-to-server communication and enables Video Indexer users to integrate video and audio insights easily into their application logic, unlocking new experiences and monetization opportunities.

    To make the integration even easier, we also added new Logic Apps and Flow connectors that are compatible with the new API. Using the new connectors, you can now set up custom workflows to effectively index and extract insights from a large amount of video and audio files, without writing a single line of code! Furthermore, using the connectors for your integration gives you better visibility on the health of your flow and an easy way to debug it. 

    To help you get started quickly with the new connectors, we’ve added Microsoft Flow templates that use the new connectors to automate extraction of insights from videos. In this blog, we will walk you through those example templates.

    Upload and index your video automatically

    This scenario is comprised of two different flows that work together. The first flow is triggered when a new file is added to a designated folder in a OneDrive account. It uploads the new file to Video Indexer with a callback URL to send a notification once the indexing operation completes. The second flow is triggered based on the callback URL and saves the extracted insights back to a JSON file in OneDrive. The reason that two flows are used is to support async upload and indexing of larger files effectively.

    Setting up the file upload flow

    Navigate to the first template page.

    To set up this flow, you will need to provide your Video Indexer API Key and OneDrive credentials.

    Part1TemplatePage

    Once both keys are provided, green marks will appear near your accounts, and you can click to continue to the flow itself and configure it for your needs:

    Select a folder that you will place videos in:

    Part1WhenFileCreated

    Fill in your account Location and ID to get the Video Indexer account token and call the file upload request.

    Part1GetAccessToken

    For file upload, you can decide to use the default values, or click on the connector to add additional settings. Notice that you will leave the callback URL empty for now … you’ll add it only after finishing the second template, where the callback URL is created).

    image007

    Click “Save flow,” and let’s move on to configure the second flow, to extract the insights once the upload completed.

    Setting up the JSON extraction flow

    Navigate to the second template page.

    To set up this flow, you will need to provide your Video Indexer API Key and OneDrive credentials. You will need to update the same parameters as you did for the first flow.

    Part2TemplatePage

    Then, continue to configure the flow.

    Fill in your account Location and ID to get your Video Indexer Account Token and the Indexing result.

    Part1GetAccessToken

    Part2GetVideoIndex

    And select the OneDrive folder to save the insights to. You can also edit the default parameter, if you would like to change the name of the JSON file containing the insights.

    Part2CreateFile

    Click “Save flow.”

    Once the flow is saved, a URL is created in the trigger. Copy the URL from the trigger:

    save flow

    Now, go back to the first flow created and paste the URL in the “Upload video and index” operation under the Callback URL parameter:

    Part1Upload

    Make sure both templates are saved, and you’re good to go!

    Try out your newly created flow by adding a video to your OneDrive folder, and go back a few minutes later to see that the insights appear in the destination folder.

    Endless integration possibilities

    And this is just one example! You can use the new connector for any API call provided by Video Indexer. to upload and retrieve insights, translate the results, get delightful embeddable widgets and even customize your models. Additionally, you can choose to trigger those actions based on different sources like updates to file repositories or emails sent, and to have the results update to our relevant infrastructure or application, or even to generate any number of action items. And you can do all that for large number of files and without coding or having to do a repetitive manual work. Go ahead and try it now for any flow that works for your business needs, it's easy.

    Have questions or feedback? We would love to hear from you!

    Use our UserVoice to help us prioritize features, or email VISupport@Microsoft.com for any question.

    What’s new in VSTS Sprint 138 Update

    $
    0
    0
    The Sprint 138 Update of Visual Studio Team Services (VSTS) has rolled out to all organizations. In this update, test results for releases have been enhanced to group together test attempts and summarize better. Watch the following video to learn about this and a few of the other new features. Now you can also bring... Read More

    .NET Core August 2018 Update

    $
    0
    0

    Today, we are releasing the .NET Core August 2018 Update. This update includes .NET Core 2.1.3 and .NET Core SDK 2.1.401.

    Getting the Update

    The latest .NET Core updates are available on the .NET Core download page.

    See the .NET Core 2.1.3 release notes for details on the release including a detailed commit list.

    Docker Images

    .NET Docker images have been updated for today’s release. The following repos have been updated.

    microsoft/dotnet
    microsoft/dotnet-samples

    Note: Look at the “Tags” view in each repository to see the updated Docker image tags.

    Note: You must re-pull base images in order to get updates. The Docker client does not pull updates automatically.

    2.1 declared LTS

    As mentioned in a previous blog post, we have been working toward declaring .NET Core 2.1 as LTS. With the August Update, we’re pleased to announce that 2.1.3 begins the .NET Core 2.1 LTS lifecycle. We’ll continue to update 2.1 with important fixes to address security and reliability issues as wells as add support for new operating system versions. Details on the .NET Core lifecycle can be seen in the .NET Core support policy.

    What’s covered?

    The LTS designation covers all packages referenced by Microsoft.NETCore.App and Microsoft.AspNetCore.App. To ensure that applications running on 2.1 remain on the LTS supported updates, it’s important to reference these ‘meta-packages’ rather than individual ‘loose’ packages. This will enable the applications to properly utilize 2.1 updates when they are released and installed.

    The .NET Core SDK is not included as part of the LTS designation. SDK fixes will continue to be released in the latest version ‘train’ which supports maintaining and building applications for .NET Core 2.1.

    See .NET Core Supported OS Lifecycle Policy to learn about Windows, macOS and Linux versions that are supported for each .NET Core release.

    Previous .NET Core Updates

    The last few .NET Core updates follow:

    July 2018 Update
    June 2018 Update
    May 2018 Update

    .NET Core August Update

    $
    0
    0

    .NET Core August 2018 Update

    Today, we are releasing the .NET Core August 2018 Update. This update includes .NET Core 2.1.3 and .NET Core SDK 2.1.401.

    Getting the Update

    The latest .NET Core updates are available on the .NET Core download page.

    See the .NET Core 2.1.3 release notes for details on the release including a detailed commit list.

    Docker Images

    .NET Docker images have been updated for today’s release. The following repos have been updated.

    microsoft/dotnet
    microsoft/dotnet-samples
    microsoft/aspnetcore
    microsoft/aspnetcore-build

    Note: Look at the “Tags” view in each repository to see the updated Docker image tags.

    Note: You must re-pull base images in order to get updates. The Docker client does not pull updates automatically.

    2.1 declared LTS

    As mentioned in a previous blog post, we have been working toward declaring .NET Core 2.1 as LTS. With the August Update, we’re pleased to announce that 2.1.3 begins the .NET Core 2.1 LTS lifecycle. We’ll continue to update 2.1 with important fixes to address security and reliability issues as wells as add support for new operating system versions. Details on the .NET Core lifecycle can be seen in the .NET Core support policy.

    What’s covered?

    The LTS designation covers all packages referenced by Microsoft.NETCore.App and Microsoft.AspNetCore.App. To ensure that applications running on 2.1 remain on the LTS supported updates, it’s important to reference these ‘meta-packages’ rather than individual ‘loose’ packages. This will enable the applications to properly utilize 2.1 updates when they are released and installed.

    The .NET Core SDK is not included as part of the LTS designation. SDK fixes will continue to be released in the lastest version ‘train’ which supports maintaining and building applicaitons for .NET Core 2.1.

    See .NET Core Supported OS Lifecycle Policy to learn about Windows, macOS and Linux versions that are supported for each .NET Core release.

    Previous .NET Core Updates

    The last few .NET Core updates follow:

    July 2018 Update
    June 2018 Update
    May 2018 Update

    Windows 10 SDK Preview Build 17738 available now!

    $
    0
    0

    Today, we released a new Windows 10 Preview Build of the SDK to be used in conjunction with Windows 10 Insider Preview (Build 17738 or greater). The Preview SDK Build 17738 contains bug fixes and under development changes to the API surface area.

    The Preview SDK can be downloaded from developer section on Windows Insider.

    For feedback and updates to the known issues, please see the developer forum. For new developer feature requests, head over to our Windows Platform UserVoice.

    Things to note:

    • This build works in conjunction with previously released SDKs and Visual Studio 2017. You can install this SDK and still also continue to submit your apps that target Windows 10 build 1803 or earlier to the store.
    • The Windows SDK will now formally only be supported by Visual Studio 2017 and greater. You can download the Visual Studio 2017 here.
    • This build of the Windows SDK will only install on Windows 10 Insider Preview builds.
    • In order to assist with script access to the SDK, the ISO will also be able to be accessed through the following URL:  https://go.microsoft.com/fwlink/?prd=11966&pver=1.0&plcid=0x409&clcid=0x409&ar=Flight&sar=Sdsurl&o1=17738 once the static URL is published.

    C++/WinRT Update for build 17709 and beyond:

    This update introduces many improvements and fixes for C++/WinRT. Notably, it introduces the ability to build C++/WinRT without any dependency on the Windows SDK. This isn’t particularly interesting to the OS developer, but even in the OS repo it provides benefits because it does not itself include any Windows headers. Thus, a developer will typically pull in fewer or no dependencies inadvertently. This also means a dramatic reduction in the number of macros that a C++/WinRT developer must guard against. Removing the dependency on the Windows headers means that C++/WinRT is more portable and standards compliant and furthers our efforts to make it a cross-compiler and cross-platform library. It also means that the C++/WinRT headers will never be mangled by macros. If you previously relied on C++/WinRT to include various Windows headers that you will now have to include them yourself. It has always been good practice to always include any headers you depend on explicitly and not rely on another library to include them for you.

    Highlights

    Support get_strong and get_weak to create delegates: This update allows a developer to use either get_strong or get_weak instead of a raw this pointer when creating a delegate pointing to a member function.

    Add async cancellation callback: The most frequently requested feature for C++/WinRT’s coroutine support has been the addition of a cancellation callback.

    Simplify the use of APIs expecting IBuffer parameters: Although most APIs prefer collections or arrays, enough APIs rely on IBuffer that it should be easier to use such APIs from C++. This update provides direct access to the data behind an IBuffer implementation using the same data naming convention used by the C++ standard library containers. This also avoids colliding with metadata names that conventionally begin with an uppercase letter.

    Conformance: Improved support for Clang and Visual C++’s stricter conformance modes.

    Improved code gen: Various improvements to reduce code size, improve inlining, and optimize factory caching.

    Remove unnecessary recursion: When the command line refers to a folder rather than a specific winmd, cppwinrt will no longer search recursively for winmd files. It causes performance problems in the OS build and can lead to usage errors that are hard to diagnose when developers inadvertently cause cppwinrt to consume more winmds than expected. The cppwinrt compiler also now handles duplicates more intelligently, making it more resilient to user error and poorly-formed winmd files.

    Declare both WINRT_CanUnloadNow and WINRT_GetActivationFactory in base.h: Callers don’t need to declare them directly. Their signatures have also changed, amounting to a breaking change. The declarations alleviate most of the pain of this change. The change is necessitated by the fact that C++/WinRT no longer depends on the Windows headers and this change removes the dependency on the types from the Windows headers.

    Harden smart pointers: The event revokers didn’t revoke when move-assigned a new value. This lead me to take a closer look at the smart pointer classes and I noticed that they were not reliably handling self-assignment. This is rooted in the com_ptr class template that most of the others rely on. I fixed com_ptr and updated the event revokers to handle move semantics correctly to ensure that they revoke upon assignment. The handle class template has also been hardened by the removal of the implicit constructor that made it easy to write incorrect code. This also turned bugs in the OS into compiler errors fixed in this PR.

    Breaking Changes

    Support for non-WinRT interfaces is disabled by default. To enable, simply #include <unknwn.h> before any C++/WinRT headers.

    winrt::get_abi(winrt::hstring) now returns void* instead of HSTRING. Code requiring the HSTRING ABI can simply use a static_cast.

    winrt::put_abi(winrt::hstring) returns void** instead of HSTRING*. Code requiring the HSTRING ABI can simply use a reinterpret_cast.

    HRESULT is now projected as winrt::hresult. Code requiring an HRESULT can simply static_cast if you need to do type checking or support type traits, but it is otherwise convertible as long as <unknwn.h> is included first.

    GUID is now projected as winrt::guid. Code implementing APIs with GUID parameters must use winrt::guid instead, but it is otherwise convertible as long as <unknwn.h> is included first.

    The signatures of WINRT_CanUnloadNow and WINRT_GetActivationFactory has changed. Code must not declare these functions at all and instead include winrt/base.h to include their declarations.

    The winrt::handle constructor is now explicit. Code assigning a raw handle value must call the attach method instead.

    winrt::clock::from_FILETIME has been deprecated. Code should use winrt::clock::from_file_time instead.

    What’s New:

    MSIX Support

    It’s finally here! You can now package your applications as MSIX. These applications can be installed and run on any device with 17682 build or later.

    To package your application with MSIX, use the MakeAppx tool. To install the application – just click on the MSIX file. To understand more about MSIX, watch this introductory video: link

    Feedback and comments are welcome on our MSIX community: http://aka.ms/MSIXCommunity

    MSIX is not currently supported by the App Certification Kit nor the Microsoft Store at this time.

    MC.EXE

    We’ve made some important changes to the C/C++ ETW code generation of mc.exe (Message Compiler):

    The “-mof” parameter is deprecated. This parameter instructs MC.exe to generate ETW code that is compatible with Windows XP and earlier. Support for the “-mof” parameter will be removed in a future version of mc.exe.

    As long as the “-mof” parameter is not used, the generated C/C++ header is now compatible with both kernel-mode and user-mode, regardless of whether “-km” or “-um” was specified on the command line. The header will use the _ETW_KM_ macro to automatically determine whether it is being compiled for kernel-mode or user-mode and will call the appropriate ETW APIs for each mode.

    • The only remaining difference between “-km” and “-um” is that the EventWrite[EventName] macros generated with “-km” have an Activity ID parameter while the EventWrite[EventName] macros generated with “-um” do not have an Activity ID parameter.

    The EventWrite[EventName] macros now default to calling EventWriteTransfer (user mode) or EtwWriteTransfer (kernel mode). Previously, the EventWrite[EventName] macros defaulted to calling EventWrite (user mode) or EtwWrite (kernel mode).

    • The generated header now supports several customization macros. For example, you can set the MCGEN_EVENTWRITETRANSFER macro if you need the generated macros to call something other than EventWriteTransfer.
    • The manifest supports new attributes.
      • Event “name”: non-localized event name.
      • Event “attributes”: additional key-value metadata for an event such as filename, line number, component name, function name.
      • Event “tags”: 28-bit value with user-defined semantics (per-event).
      • Field “tags”: 28-bit value with user-defined semantics (per-field – can be applied to “data” or “struct” elements).
    • You can now define “provider traits” in the manifest (e.g. provider group). If provider traits are used in the manifest, the EventRegister[ProviderName] macro will automatically register them.
    • MC will now report an error if a localized message file is missing a string. (Previously MC would silently generate a corrupt message resource.)
    • MC can now generate Unicode (utf-8 or utf-16) output with the “-cp utf-8” or “-cp utf-16” parameters.

    Known Issues:

    The SDK headers are generated with types in the “ABI” namespace. This is done to avoid conflicts with C++/CX and C++/WinRT clients that need to consume types directly at the ABI layer[1]. By default, types emitted by MIDL are *not* put in the ABI namespace, however this has the potential to introduce conflicts from teams attempting to consume ABI types from Windows WinRT MIDL generated headers and non-Windows WinRT MIDL generated headers (this is especially challenging if the non-Windows header references Windows types).

    To ensure that developers have a consistent view of the WinRT API surface, validation has been added to the generated headers to ensure that the ABI prefix is consistent between the Windows headers and user generated headers. If you encounter an error like:

    5>c:program files (x86)windows kits10include10.0.17687.0winrtwindows.foundation.h(83): error C2220: warning treated as error – no ‘object’ file generated

    5>c:program files (x86)windows kits10include10.0.17687.0winrtwindows.foundation.h(83): warning C4005: ‘CHECK_NS_PREFIX_STATE’: macro redefinition

    5>g:<PATH TO YOUR HEADER HERE>(41): note: see previous definition of ‘CHECK_NS_PREFIX_STATE’

    It means that some of your MIDL generated headers are inconsistent with the system generated headers.

    There are two ways to fix this:

    • Preferred: Compile your IDL file with the /ns_prefix MIDL command line switch. This will cause all your types to be moved to the ABI namespace consistent with the Windows headers. This may require code changes in your code however.
    • Alternate: Add #define DISABLE_NS_PREFIX_CHECKS before including the Windows headers. This will suppress the validation.

    Windows App Certification Kit Crashes

    The Windows App Certification Kit will crash when running. To avoid this failure we recommend not installing the Windows App Certification Kit. You can uncheck this option during setup.

    API Updates, Additions and Removals

    When targeting new APIs, consider writing your app to be adaptive in order to run correctly on the widest number of Windows 10 devices. Please see Dynamically detecting features with API contracts (10 by 10) for more information.

    The following APIs have been added to the platform since the release of 17134. The APIs listed below have been removed.

    Additions:

    
    namespace Windows.AI.MachineLearning {
      public interface ILearningModelFeatureDescriptor
      public interface ILearningModelFeatureValue
      public interface ILearningModelOperatorProvider
      public sealed class ImageFeatureDescriptor : ILearningModelFeatureDescriptor
      public sealed class ImageFeatureValue : ILearningModelFeatureValue
      public interface ITensor : ILearningModelFeatureValue
      public sealed class LearningModel : IClosable
      public sealed class LearningModelBinding : IIterable<IKeyValuePair<string, object>>, IMapView<string, object>
      public sealed class LearningModelDevice
      public enum LearningModelDeviceKind
      public sealed class LearningModelEvaluationResult
      public enum LearningModelFeatureKind
      public sealed class LearningModelSession : IClosable
      public struct MachineLearningContract
      public sealed class MapFeatureDescriptor : ILearningModelFeatureDescriptor
      public sealed class SequenceFeatureDescriptor : ILearningModelFeatureDescriptor
      public sealed class TensorBoolean : ILearningModelFeatureValue, ITensor
      public sealed class TensorDouble : ILearningModelFeatureValue, ITensor
      public sealed class TensorFeatureDescriptor : ILearningModelFeatureDescriptor
      public sealed class TensorFloat : ILearningModelFeatureValue, ITensor
      public sealed class TensorFloat16Bit : ILearningModelFeatureValue, ITensor
      public sealed class TensorInt16Bit : ILearningModelFeatureValue, ITensor
      public sealed class TensorInt32Bit : ILearningModelFeatureValue, ITensor
      public sealed class TensorInt64Bit : ILearningModelFeatureValue, ITensor
      public sealed class TensorInt8Bit : ILearningModelFeatureValue, ITensor
      public enum TensorKind
      public sealed class TensorString : ILearningModelFeatureValue, ITensor
      public sealed class TensorUInt16Bit : ILearningModelFeatureValue, ITensor
      public sealed class TensorUInt32Bit : ILearningModelFeatureValue, ITensor
      public sealed class TensorUInt64Bit : ILearningModelFeatureValue, ITensor
      public sealed class TensorUInt8Bit : ILearningModelFeatureValue, ITensor
    }
    namespace Windows.ApplicationModel {
      public sealed class AppInstallerInfo
      public sealed class LimitedAccessFeatureRequestResult
      public static class LimitedAccessFeatures
      public enum LimitedAccessFeatureStatus
      public sealed class Package {
        IAsyncOperation<PackageUpdateAvailabilityResult> CheckUpdateAvailabilityAsync();
        AppInstallerInfo GetAppInstallerInfo();
      }
      public enum PackageUpdateAvailability
      public sealed class PackageUpdateAvailabilityResult
    }
    namespace Windows.ApplicationModel.Calls {
      public sealed class VoipCallCoordinator {
        IAsyncOperation<VoipPhoneCallResourceReservationStatus> ReserveCallResourcesAsync();
      }
    }
    namespace Windows.ApplicationModel.Chat {
      public static class ChatCapabilitiesManager {
        public static IAsyncOperation<ChatCapabilities> GetCachedCapabilitiesAsync(string address, string transportId);
        public static IAsyncOperation<ChatCapabilities> GetCapabilitiesFromNetworkAsync(string address, string transportId);
      }
      public static class RcsManager {
        public static event EventHandler<object> TransportListChanged;
      }
    }
    namespace Windows.ApplicationModel.DataTransfer {
      public static class Clipboard {
        public static event EventHandler<ClipboardHistoryChangedEventArgs> HistoryChanged;
        public static event EventHandler<object> HistoryEnabledChanged;
        public static event EventHandler<object> RoamingEnabledChanged;
        public static bool ClearHistory();
        public static bool DeleteItemFromHistory(ClipboardHistoryItem item);
        public static IAsyncOperation<ClipboardHistoryItemsResult> GetHistoryItemsAsync();
        public static bool IsHistoryEnabled();
        public static bool IsRoamingEnabled();
        public static bool SetContentWithOptions(DataPackage content, ClipboardContentOptions options);
        public static SetHistoryItemAsContentStatus SetHistoryItemAsContent(ClipboardHistoryItem item);
      }
      public sealed class ClipboardContentOptions
      public sealed class ClipboardHistoryChangedEventArgs
      public sealed class ClipboardHistoryItem
      public sealed class ClipboardHistoryItemsResult
      public enum ClipboardHistoryItemsResultStatus
      public sealed class DataPackagePropertySetView : IIterable<IKeyValuePair<string, object>>, IMapView<string, object> {
        bool IsFromRoamingClipboard { get; }
        string SourceDisplayName { get; }
      }
      public enum SetHistoryItemAsContentStatus
    }
    namespace Windows.ApplicationModel.Store.Preview {
      public enum DeliveryOptimizationDownloadMode
      public enum DeliveryOptimizationDownloadModeSource
      public sealed class DeliveryOptimizationSettings
      public static class StoreConfiguration {
        public static bool IsPinToDesktopSupported();
        public static bool IsPinToStartSupported();
        public static bool IsPinToTaskbarSupported();
        public static void PinToDesktop(string appPackageFamilyName);
        public static void PinToDesktopForUser(User user, string appPackageFamilyName);
      }
    }
    namespace Windows.ApplicationModel.Store.Preview.InstallControl {
      public enum AppInstallationToastNotificationMode
      public sealed class AppInstallItem {
        AppInstallationToastNotificationMode CompletedInstallToastNotificationMode { get; set; }
        AppInstallationToastNotificationMode InstallInProgressToastNotificationMode { get; set; }
        bool PinToDesktopAfterInstall { get; set; }
        bool PinToStartAfterInstall { get; set; }
        bool PinToTaskbarAfterInstall { get; set; }
      }
      public sealed class AppInstallManager {
        bool CanInstallForAllUsers { get; }
      }
      public sealed class AppInstallOptions {
        string CampaignId { get; set; }
        AppInstallationToastNotificationMode CompletedInstallToastNotificationMode { get; set; }
        string ExtendedCampaignId { get; set; }
        bool InstallForAllUsers { get; set; }
        AppInstallationToastNotificationMode InstallInProgressToastNotificationMode { get; set; }
        bool PinToDesktopAfterInstall { get; set; }
        bool PinToStartAfterInstall { get; set; }
        bool PinToTaskbarAfterInstall { get; set; }
        bool StageButDoNotInstall { get; set; }
      }
      public sealed class AppUpdateOptions {
        bool AutomaticallyDownloadAndInstallUpdateIfFound { get; set; }
      }
    }
    namespace Windows.ApplicationModel.UserActivities {
      public sealed class UserActivity {
        bool IsRoamable { get; set; }
      }
    }
    namespace Windows.Data.Text {
      public sealed class TextPredictionGenerator {
        CoreTextInputScope InputScope { get; set; }
        IAsyncOperation<IVectorView<string>> GetCandidatesAsync(string input, uint maxCandidates, TextPredictionOptions predictionOptions, IIterable<string> previousStrings);
        IAsyncOperation<IVectorView<string>> GetNextWordCandidatesAsync(uint maxCandidates, IIterable<string> previousStrings);
      }
      public enum TextPredictionOptions : uint
    }
    namespace Windows.Devices.Display.Core {
      public sealed class DisplayAdapter
      public enum DisplayBitsPerChannel : uint
      public sealed class DisplayDevice
      public enum DisplayDeviceCapability
      public sealed class DisplayFence
      public sealed class DisplayManager : IClosable
      public sealed class DisplayManagerChangedEventArgs
      public sealed class DisplayManagerDisabledEventArgs
      public sealed class DisplayManagerEnabledEventArgs
      public enum DisplayManagerOptions : uint
      public sealed class DisplayManagerPathsFailedOrInvalidatedEventArgs
      public enum DisplayManagerResult
      public sealed class DisplayManagerResultWithState
      public sealed class DisplayModeInfo
      public enum DisplayModeQueryOptions : uint
      public sealed class DisplayPath
      public enum DisplayPathScaling
      public enum DisplayPathStatus
      public struct DisplayPresentationRate
      public sealed class DisplayPrimaryDescription
      public enum DisplayRotation
      public sealed class DisplayScanout
      public sealed class DisplaySource
      public sealed class DisplayState
      public enum DisplayStateApplyOptions : uint
      public enum DisplayStateFunctionalizeOptions : uint
      public sealed class DisplayStateOperationResult
      public enum DisplayStateOperationStatus
      public sealed class DisplaySurface
      public sealed class DisplayTarget
      public enum DisplayTargetPersistence
      public sealed class DisplayTask
      public sealed class DisplayTaskPool
      public enum DisplayTaskSignalKind
      public sealed class DisplayView
      public sealed class DisplayWireFormat
      public enum DisplayWireFormatColorSpace
      public enum DisplayWireFormatEotf
      public enum DisplayWireFormatHdrMetadata
      public enum DisplayWireFormatPixelEncoding
    }
    namespace Windows.Devices.Enumeration {
      public enum DeviceInformationKind {
        DevicePanel = 8,
      }
      public sealed class DeviceInformationPairing {
        public static bool TryRegisterForAllInboundPairingRequestsWithProtectionLevel(DevicePairingKinds pairingKindsSupported, DevicePairingProtectionLevel minProtectionLevel);
      }
    }
    namespace Windows.Devices.Enumeration.Pnp {
      public enum PnpObjectType {
        DevicePanel = 8,
      }
    }
    namespace Windows.Devices.Lights {
      public sealed class LampArray
      public enum LampArrayKind
      public sealed class LampInfo
      public enum LampPurposes : uint
    }
    namespace Windows.Devices.Lights.Effects {
      public interface ILampArrayEffect
      public sealed class LampArrayBitmapEffect : ILampArrayEffect
      public sealed class LampArrayBitmapRequestedEventArgs
      public sealed class LampArrayBlinkEffect : ILampArrayEffect
      public sealed class LampArrayColorRampEffect : ILampArrayEffect
      public sealed class LampArrayCustomEffect : ILampArrayEffect
      public enum LampArrayEffectCompletionBehavior
      public sealed class LampArrayEffectPlaylist : IIterable<ILampArrayEffect>, IVectorView<ILampArrayEffect>
      public enum LampArrayEffectStartMode
      public enum LampArrayRepetitionMode
      public sealed class LampArraySolidEffect : ILampArrayEffect
      public sealed class LampArrayUpdateRequestedEventArgs
    }
    namespace Windows.Devices.PointOfService {
      public sealed class BarcodeScannerCapabilities {
        bool IsVideoPreviewSupported { get; }
      }
      public sealed class ClaimedBarcodeScanner : IClosable {
        event TypedEventHandler<ClaimedBarcodeScanner, ClaimedBarcodeScannerClosedEventArgs> Closed;
      }
      public sealed class ClaimedBarcodeScannerClosedEventArgs
      public sealed class ClaimedCashDrawer : IClosable {
        event TypedEventHandler<ClaimedCashDrawer, ClaimedCashDrawerClosedEventArgs> Closed;
      }
      public sealed class ClaimedCashDrawerClosedEventArgs
      public sealed class ClaimedLineDisplay : IClosable {
        event TypedEventHandler<ClaimedLineDisplay, ClaimedLineDisplayClosedEventArgs> Closed;
      }
      public sealed class ClaimedLineDisplayClosedEventArgs
      public sealed class ClaimedMagneticStripeReader : IClosable {
        event TypedEventHandler<ClaimedMagneticStripeReader, ClaimedMagneticStripeReaderClosedEventArgs> Closed;
      }
      public sealed class ClaimedMagneticStripeReaderClosedEventArgs
      public sealed class ClaimedPosPrinter : IClosable {
        event TypedEventHandler<ClaimedPosPrinter, ClaimedPosPrinterClosedEventArgs> Closed;
      }
      public sealed class ClaimedPosPrinterClosedEventArgs
    }
    namespace Windows.Devices.PointOfService.Provider {
      public sealed class BarcodeScannerDisableScannerRequest {
        IAsyncAction ReportFailedAsync(int reason);
        IAsyncAction ReportFailedAsync(int reason, string failedReasonDescription);
      }
      public sealed class BarcodeScannerEnableScannerRequest {
        IAsyncAction ReportFailedAsync(int reason);
        IAsyncAction ReportFailedAsync(int reason, string failedReasonDescription);
      }
      public sealed class BarcodeScannerFrameReader : IClosable
      public sealed class BarcodeScannerFrameReaderFrameArrivedEventArgs
      public sealed class BarcodeScannerGetSymbologyAttributesRequest {
        IAsyncAction ReportFailedAsync(int reason);
        IAsyncAction ReportFailedAsync(int reason, string failedReasonDescription);
      }
      public sealed class BarcodeScannerHideVideoPreviewRequest {
        IAsyncAction ReportFailedAsync(int reason);
        IAsyncAction ReportFailedAsync(int reason, string failedReasonDescription);
      }
      public sealed class BarcodeScannerProviderConnection : IClosable {
        IAsyncOperation<BarcodeScannerFrameReader> CreateFrameReaderAsync();
        IAsyncOperation<BarcodeScannerFrameReader> CreateFrameReaderAsync(BitmapPixelFormat preferredFormat);
        IAsyncOperation<BarcodeScannerFrameReader> CreateFrameReaderAsync(BitmapPixelFormat preferredFormat, BitmapSize preferredSize);
      }
      public sealed class BarcodeScannerSetActiveSymbologiesRequest {
        IAsyncAction ReportFailedAsync(int reason);
        IAsyncAction ReportFailedAsync(int reason, string failedReasonDescription);
      }
      public sealed class BarcodeScannerSetSymbologyAttributesRequest {
        IAsyncAction ReportFailedAsync(int reason);
        IAsyncAction ReportFailedAsync(int reason, string failedReasonDescription);
      }
      public sealed class BarcodeScannerStartSoftwareTriggerRequest {
        IAsyncAction ReportFailedAsync(int reason);
        IAsyncAction ReportFailedAsync(int reason, string failedReasonDescription);
      }
      public sealed class BarcodeScannerStopSoftwareTriggerRequest {
        IAsyncAction ReportFailedAsync(int reason);
        IAsyncAction ReportFailedAsync(int reason, string failedReasonDescription);
      }
      public sealed class BarcodeScannerVideoFrame : IClosable
    }
    namespace Windows.Devices.Sensors {
      public sealed class HingeAngleReading
      public sealed class HingeAngleSensor
      public sealed class HingeAngleSensorReadingChangedEventArgs
      public sealed class SimpleOrientationSensor {
        public static IAsyncOperation<SimpleOrientationSensor> FromIdAsync(string deviceId);
        public static string GetDeviceSelector();
      }
    }
    namespace Windows.Devices.SmartCards {
      public static class KnownSmartCardAppletIds
      public sealed class SmartCardAppletIdGroup {
        string Description { get; set; }
        IRandomAccessStreamReference Logo { get; set; }
        ValueSet Properties { get; }
        bool SecureUserAuthenticationRequired { get; set; }
      }
      public sealed class SmartCardAppletIdGroupRegistration {
        string SmartCardReaderId { get; }
        IAsyncAction SetPropertiesAsync(ValueSet props);
      }
    }
    namespace Windows.Devices.WiFi {
      public enum WiFiPhyKind {
        HE = 10,
      }
    }
    namespace Windows.Foundation {
      public static class GuidHelper
    }
    namespace Windows.Globalization {
      public static class CurrencyIdentifiers {
        public static string MRU { get; }
        public static string SSP { get; }
        public static string STN { get; }
        public static string VES { get; }
      }
    }
    namespace Windows.Graphics.Capture {
      public sealed class Direct3D11CaptureFramePool : IClosable {
        public static Direct3D11CaptureFramePool CreateFreeThreaded(IDirect3DDevice device, DirectXPixelFormat pixelFormat, int numberOfBuffers, SizeInt32 size);
      }
      public sealed class GraphicsCaptureItem {
        public static GraphicsCaptureItem CreateFromVisual(Visual visual);
      }
    }
    namespace Windows.Graphics.Display.Core {
      public enum HdmiDisplayHdrOption {
        DolbyVisionLowLatency = 3,
      }
      public sealed class HdmiDisplayMode {
        bool IsDolbyVisionLowLatencySupported { get; }
      }
    }
    namespace Windows.Graphics.Holographic {
      public sealed class HolographicCamera {
        bool IsHardwareContentProtectionEnabled { get; set; }
        bool IsHardwareContentProtectionSupported { get; }
      }
      public sealed class HolographicQuadLayerUpdateParameters {
        bool CanAcquireWithHardwareProtection { get; }
        IDirect3DSurface AcquireBufferToUpdateContentWithHardwareProtection();
      }
    }
    namespace Windows.Graphics.Imaging {
      public sealed class BitmapDecoder : IBitmapFrame, IBitmapFrameWithSoftwareBitmap {
        public static Guid HeifDecoderId { get; }
        public static Guid WebpDecoderId { get; }
      }
      public sealed class BitmapEncoder {
        public static Guid HeifEncoderId { get; }
      }
    }
    namespace Windows.Management.Deployment {
      public enum DeploymentOptions : uint {
        ForceUpdateFromAnyVersion = (uint)262144,
      }
      public sealed class PackageManager {
        IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress> DeprovisionPackageForAllUsersAsync(string packageFamilyName);
      }
      public enum RemovalOptions : uint {
        RemoveForAllUsers = (uint)524288,
      }
    }
    namespace Windows.Media.Audio {
      public sealed class CreateAudioDeviceInputNodeResult {
        HResult ExtendedError { get; }
      }
     public sealed class CreateAudioDeviceOutputNodeResult {
        HResult ExtendedError { get; }
      }
      public sealed class CreateAudioFileInputNodeResult {
        HResult ExtendedError { get; }
      }
      public sealed class CreateAudioFileOutputNodeResult {
        HResult ExtendedError { get; }
      }
      public sealed class CreateAudioGraphResult {
        HResult ExtendedError { get; }
      }
      public sealed class CreateMediaSourceAudioInputNodeResult {
        HResult ExtendedError { get; }
      }
      public enum MixedRealitySpatialAudioFormatPolicy
      public sealed class SetDefaultSpatialAudioFormatResult
      public enum SetDefaultSpatialAudioFormatStatus
      public sealed class SpatialAudioDeviceConfiguration
      public sealed class SpatialAudioFormatConfiguration
      public static class SpatialAudioFormatSubtype
    }
    namespace Windows.Media.Control {
      public sealed class CurrentSessionChangedEventArgs
      public sealed class GlobalSystemMediaTransportControlsSession
      public sealed class GlobalSystemMediaTransportControlsSessionManager
      public sealed class GlobalSystemMediaTransportControlsSessionMediaProperties
      public sealed class GlobalSystemMediaTransportControlsSessionPlaybackControls
      public sealed class GlobalSystemMediaTransportControlsSessionPlaybackInfo
      public enum GlobalSystemMediaTransportControlsSessionPlaybackStatus
      public sealed class GlobalSystemMediaTransportControlsSessionTimelineProperties
      public sealed class MediaPropertiesChangedEventArgs
      public sealed class PlaybackInfoChangedEventArgs
      public sealed class SessionsChangedEventArgs
      public sealed class TimelinePropertiesChangedEventArgs
    }
    namespace Windows.Media.Core {
      public sealed class MediaStreamSample {
        IDirect3DSurface Direct3D11Surface { get; }
        public static MediaStreamSample CreateFromDirect3D11Surface(IDirect3DSurface surface, TimeSpan timestamp);
      }
    }
    namespace Windows.Media.Devices.Core {
      public sealed class CameraIntrinsics {
        public CameraIntrinsics(Vector2 focalLength, Vector2 principalPoint, Vector3 radialDistortion, Vector2 tangentialDistortion, uint imageWidth, uint imageHeight);
      }
    }
    namespace Windows.Media.Import {
      public enum PhotoImportContentTypeFilter {
        ImagesAndVideosFromCameraRoll = 3,
      }
      public sealed class PhotoImportItem {
        string Path { get; }
      }
    }
    namespace Windows.Media.MediaProperties {
      public sealed class ImageEncodingProperties : IMediaEncodingProperties {
        public static ImageEncodingProperties CreateHeif();
      }
      public static class MediaEncodingSubtypes {
        public static string Heif { get; }
      }
    }
    namespace Windows.Media.Protection.PlayReady {
      public static class PlayReadyStatics {
        public static IReference<DateTime> HardwareDRMDisabledAtTime { get; }
        public static IReference<DateTime> HardwareDRMDisabledUntilTime { get; }
        public static void ResetHardwareDRMDisabled();
      }
    }
    namespace Windows.Media.Streaming.Adaptive {
      public enum AdaptiveMediaSourceResourceType {
        MediaSegmentIndex = 5,
      }
    }
    namespace Windows.Networking.BackgroundTransfer {
      public enum BackgroundTransferPriority {
        Low = 2,
      }
    }
    namespace Windows.Networking.Connectivity {
      public sealed class ConnectionProfile {
        bool CanDelete { get; }
        IAsyncOperation<ConnectionProfileDeleteStatus> TryDeleteAsync();
      }
      public enum ConnectionProfileDeleteStatus
    }
    namespace Windows.Networking.NetworkOperators {
      public enum ESimOperationStatus {
        CardGeneralFailure = 13,
        ConfirmationCodeMissing = 14,
        EidMismatch = 18,
        InvalidMatchingId = 15,
        NoCorrespondingRequest = 23,
        NoEligibleProfileForThisDevice = 16,
        OperationAborted = 17,
        OperationProhibitedByProfileClass = 21,
        ProfileNotAvailableForNewBinding = 19,
        ProfileNotPresent = 22,
        ProfileNotReleasedByOperator = 20,
      }
    }
    namespace Windows.Perception {
      public sealed class PerceptionTimestamp {
        TimeSpan SystemRelativeTargetTime { get; }
      }
      public static class PerceptionTimestampHelper {
        public static PerceptionTimestamp FromSystemRelativeTargetTime(TimeSpan targetTime);
      }
    }
    namespace Windows.Perception.Spatial {
      public sealed class SpatialAnchorExporter
      public enum SpatialAnchorExportPurpose
      public sealed class SpatialAnchorExportSufficiency
      public sealed class SpatialLocation {
        Vector3 AbsoluteAngularAccelerationAxisAngle { get; }
        Vector3 AbsoluteAngularVelocityAxisAngle { get; }
      }
    }
    namespace Windows.Perception.Spatial.Preview {
      public static class SpatialGraphInteropPreview
    }
    namespace Windows.Services.Cortana {
      public sealed class CortanaActionableInsights
      public sealed class CortanaActionableInsightsOptions
    }
    namespace Windows.Services.Store {
      public sealed class StoreAppLicense {
        bool IsDiscLicense { get; }
      }
      public sealed class StoreContext {
        IAsyncOperation<StoreRateAndReviewResult> RequestRateAndReviewAppAsync();
        IAsyncOperation<IVectorView<StoreQueueItem>> SetInstallOrderForAssociatedStoreQueueItemsAsync(IIterable<StoreQueueItem> items);
      }
      public sealed class StoreQueueItem {
        IAsyncAction CancelInstallAsync();
        IAsyncAction PauseInstallAsync();
        IAsyncAction ResumeInstallAsync();
      }
      public sealed class StoreRateAndReviewResult
      public enum StoreRateAndReviewStatus
    }
    namespace Windows.Storage.Provider {
      public enum StorageProviderHydrationPolicyModifier : uint {
        AutoDehydrationAllowed = (uint)4,
      }
      public sealed class StorageProviderSyncRootInfo {
        Guid ProviderId { get; set; }
      }
    }
    namespace Windows.System {
      public sealed class AppUriHandlerHost
      public sealed class AppUriHandlerRegistration
      public sealed class AppUriHandlerRegistrationManager
      public static class Launcher {
        public static IAsyncOperation<bool> LaunchFolderPathAsync(string path);
        public static IAsyncOperation<bool> LaunchFolderPathAsync(string path, FolderLauncherOptions options);
        public static IAsyncOperation<bool> LaunchFolderPathForUserAsync(User user, string path);
        public static IAsyncOperation<bool> LaunchFolderPathForUserAsync(User user, string path, FolderLauncherOptions options);
      }
    }
    namespace Windows.System.Preview {
      public enum HingeState
      public sealed class TwoPanelHingedDevicePosturePreview
      public sealed class TwoPanelHingedDevicePosturePreviewReading
      public sealed class TwoPanelHingedDevicePosturePreviewReadingChangedEventArgs
    }
    namespace Windows.System.Profile {
      public enum SystemOutOfBoxExperienceState
      public static class SystemSetupInfo
      public static class WindowsIntegrityPolicy
    }
    namespace Windows.System.Profile.SystemManufacturers {
      public sealed class SystemSupportDeviceInfo
      public static class SystemSupportInfo {
        public static SystemSupportDeviceInfo LocalDeviceInfo { get; }
      }
    }
    namespace Windows.System.RemoteSystems {
      public sealed class RemoteSystem {
        IVectorView<RemoteSystemApp> Apps { get; }
      }
      public sealed class RemoteSystemApp
      public sealed class RemoteSystemAppRegistration
      public sealed class RemoteSystemConnectionInfo
      public sealed class RemoteSystemConnectionRequest {
        RemoteSystemApp RemoteSystemApp { get; }
        public static RemoteSystemConnectionRequest CreateForApp(RemoteSystemApp remoteSystemApp);
      }
      public sealed class RemoteSystemWebAccountFilter : IRemoteSystemFilter
    }
    namespace Windows.System.Update {
      public enum SystemUpdateAttentionRequiredReason
      public sealed class SystemUpdateItem
      public enum SystemUpdateItemState
      public sealed class SystemUpdateLastErrorInfo
      public static class SystemUpdateManager
      public enum SystemUpdateManagerState
      public enum SystemUpdateStartInstallAction
    }
    namespace Windows.System.UserProfile {
      public sealed class AssignedAccessSettings
    }
    namespace Windows.UI.Accessibility {
      public sealed class ScreenReaderPositionChangedEventArgs
      public sealed class ScreenReaderService
    }
    namespace Windows.UI.Composition {
      public enum AnimationPropertyAccessMode
      public sealed class AnimationPropertyInfo : CompositionObject
      public sealed class BooleanKeyFrameAnimation : KeyFrameAnimation
      public class CompositionAnimation : CompositionObject, ICompositionAnimationBase {
        void SetExpressionReferenceParameter(string parameterName, IAnimationObject source);
      }
      public enum CompositionBatchTypes : uint {
        AllAnimations = (uint)5,
        InfiniteAnimation = (uint)4,
      }
      public sealed class CompositionGeometricClip : CompositionClip
      public class CompositionGradientBrush : CompositionBrush {
        CompositionMappingMode MappingMode { get; set; }
      }
      public enum CompositionMappingMode
      public class CompositionObject : IAnimationObject, IClosable {
        void PopulatePropertyInfo(string propertyName, AnimationPropertyInfo propertyInfo);
        public static void StartAnimationGroupWithIAnimationObject(IAnimationObject target, ICompositionAnimationBase animation);
        public static void StartAnimationWithIAnimationObject(IAnimationObject target, string propertyName, CompositionAnimation animation);
      }
      public sealed class Compositor : IClosable {
        BooleanKeyFrameAnimation CreateBooleanKeyFrameAnimation();
        CompositionGeometricClip CreateGeometricClip();
        CompositionGeometricClip CreateGeometricClip(CompositionGeometry geometry);
        RedirectVisual CreateRedirectVisual();
        RedirectVisual CreateRedirectVisual(Visual source);
      }
      public interface IAnimationObject
      public sealed class RedirectVisual : ContainerVisual
    }
    namespace Windows.UI.Composition.Interactions {
      public sealed class InteractionSourceConfiguration : CompositionObject
      public enum InteractionSourceRedirectionMode
      public sealed class InteractionTracker : CompositionObject {
        bool IsInertiaFromImpulse { get; }
        int TryUpdatePosition(Vector3 value, InteractionTrackerClampingOption option);
        int TryUpdatePositionBy(Vector3 amount, InteractionTrackerClampingOption option);
      }
      public enum InteractionTrackerClampingOption
      public sealed class InteractionTrackerInertiaStateEnteredArgs {
        bool IsInertiaFromImpulse { get; }
      }
      public class VisualInteractionSource : CompositionObject, ICompositionInteractionSource {
        InteractionSourceConfiguration PointerWheelConfig { get; }
      }
    }
    namespace Windows.UI.Input.Inking {
      public enum HandwritingLineHeight
      public sealed class PenAndInkSettings
      public enum PenHandedness
    }
    namespace Windows.UI.Input.Inking.Preview {
      public sealed class PalmRejectionDelayZonePreview : IClosable
    }
    namespace Windows.UI.Notifications {
      public sealed class ScheduledToastNotificationShowingEventArgs
      public sealed class ToastNotifier {
        event TypedEventHandler<ToastNotifier, ScheduledToastNotificationShowingEventArgs> ScheduledToastNotificationShowing;
      }
    }
    namespace Windows.UI.Shell {
      public enum SecurityAppKind
      public sealed class SecurityAppManager
      public struct SecurityAppManagerContract
      public enum SecurityAppState
      public enum SecurityAppSubstatus
      public sealed class TaskbarManager {
        IAsyncOperation<bool> IsSecondaryTilePinnedAsync(string tileId);
        IAsyncOperation<bool> RequestPinSecondaryTileAsync(SecondaryTile secondaryTile);
        IAsyncOperation<bool> TryUnpinSecondaryTileAsync(string tileId);
      }
    }
    namespace Windows.UI.StartScreen {
      public sealed class StartScreenManager {
        IAsyncOperation<bool> ContainsSecondaryTileAsync(string tileId);
        IAsyncOperation<bool> TryRemoveSecondaryTileAsync(string tileId);
      }
    }
    namespace Windows.UI.Text {
      public sealed class RichEditTextDocument : ITextDocument {
        void ClearUndoRedoHistory();
      }
    }
    namespace Windows.UI.Text.Core {
      public sealed class CoreTextLayoutRequest {
        CoreTextLayoutBounds LayoutBoundsVisualPixels { get; }
      }
    }
    namespace Windows.UI.ViewManagement {
      public enum ApplicationViewWindowingMode {
        CompactOverlay = 3,
        Maximized = 4,
      }
    }
    namespace Windows.UI.ViewManagement.Core {
      public sealed class CoreInputView {
        bool TryHide();
        bool TryShow();
        bool TryShow(CoreInputViewKind type);
      }
      public enum CoreInputViewKind
    }
    namespace Windows.UI.WebUI {
      public sealed class BackgroundActivatedEventArgs : IBackgroundActivatedEventArgs
      public delegate void BackgroundActivatedEventHandler(object sender, IBackgroundActivatedEventArgs eventArgs);
      public sealed class NewWebUIViewCreatedEventArgs
      public static class WebUIApplication {
        public static event BackgroundActivatedEventHandler BackgroundActivated;
        public static event EventHandler<NewWebUIViewCreatedEventArgs> NewWebUIViewCreated;
      }
      public sealed class WebUIView : IWebViewControl, IWebViewControl2
    }
    namespace Windows.UI.Xaml {
      public class BrushTransition
      public class ColorPaletteResources : ResourceDictionary
      public class DataTemplate : FrameworkTemplate, IElementFactory {
        UIElement GetElement(ElementFactoryGetArgs args);
        void RecycleElement(ElementFactoryRecycleArgs args);
      }
      public sealed class DebugSettings {
        bool FailFastOnErrors { get; set; }
      }
      public sealed class EffectiveViewportChangedEventArgs
      public class ElementFactoryGetArgs
      public class ElementFactoryRecycleArgs
      public class FrameworkElement : UIElement {
        bool IsLoaded { get; }
        event TypedEventHandler<FrameworkElement, EffectiveViewportChangedEventArgs> EffectiveViewportChanged;
        void InvalidateViewport();
      }
      public interface IElementFactory
      public class ScalarTransition
      public class UIElement : DependencyObject, IAnimationObject {
        bool CanBeScrollAnchor { get; set; }
        public static DependencyProperty CanBeScrollAnchorProperty { get; }
        Vector3 CenterPoint { get; set; }
        ScalarTransition OpacityTransition { get; set; }
        float Rotation { get; set; }
        Vector3 RotationAxis { get; set; }
        ScalarTransition RotationTransition { get; set; }
        Vector3 Scale { get; set; }
        Vector3Transition ScaleTransition { get; set; }
        Matrix4x4 TransformMatrix { get; set; }
        Vector3 Translation { get; set; }
        Vector3Transition TranslationTransition { get; set; }
        void PopulatePropertyInfo(string propertyName, AnimationPropertyInfo propertyInfo);
        virtual void PopulatePropertyInfoOverride(string propertyName, AnimationPropertyInfo animationPropertyInfo);
        void StartAnimation(ICompositionAnimationBase animation);
        void StopAnimation(ICompositionAnimationBase animation);
      }
      public class Vector3Transition
      public enum Vector3TransitionComponents : uint
    }
    namespace Windows.UI.Xaml.Automation {
      public sealed class AutomationElementIdentifiers {
        public static AutomationProperty IsDialogProperty { get; }
      }
      public sealed class AutomationProperties {
        public static DependencyProperty IsDialogProperty { get; }
        public static bool GetIsDialog(DependencyObject element);
        public static void SetIsDialog(DependencyObject element, bool value);
      }
    }
    namespace Windows.UI.Xaml.Automation.Peers {
      public class AppBarButtonAutomationPeer : ButtonAutomationPeer, IExpandCollapseProvider {
        ExpandCollapseState ExpandCollapseState { get; }
        void Collapse();
        void Expand();
      }
      public class AutomationPeer : DependencyObject {
        bool IsDialog();
        virtual bool IsDialogCore();
      }
      public class MenuBarAutomationPeer : FrameworkElementAutomationPeer
      public class MenuBarItemAutomationPeer : FrameworkElementAutomationPeer, IExpandCollapseProvider, IInvokeProvider
    }
    namespace Windows.UI.Xaml.Controls {
      public sealed class AnchorRequestedEventArgs
      public class AppBarElementContainer : ContentControl, ICommandBarElement, ICommandBarElement2
      public sealed class AutoSuggestBox : ItemsControl {
        object Description { get; set; }
        public static DependencyProperty DescriptionProperty { get; }
      }
      public enum BackgroundSizing
      public sealed class Border : FrameworkElement {
        BackgroundSizing BackgroundSizing { get; set; }
        public static DependencyProperty BackgroundSizingProperty { get; }
        BrushTransition BackgroundTransition { get; set; }
      }
      public class CalendarDatePicker : Control {
        object Description { get; set; }
        public static DependencyProperty DescriptionProperty { get; }
      }
      public class ComboBox : Selector {
        object Description { get; set; }
        public static DependencyProperty DescriptionProperty { get; }
        bool IsEditable { get; set; }
        public static DependencyProperty IsEditableProperty { get; }
        string Text { get; set; }
        Style TextBoxStyle { get; set; }
        public static DependencyProperty TextBoxStyleProperty { get; }
        public static DependencyProperty TextProperty { get; }
        event TypedEventHandler<ComboBox, ComboBoxTextSubmittedEventArgs> TextSubmitted;
      }
      public sealed class ComboBoxTextSubmittedEventArgs
      public class CommandBarFlyout : FlyoutBase
      public class ContentPresenter : FrameworkElement {
        BackgroundSizing BackgroundSizing { get; set; }
        public static DependencyProperty BackgroundSizingProperty { get; }
        BrushTransition BackgroundTransition { get; set; }
      }
      public class Control : FrameworkElement {
        BackgroundSizing BackgroundSizing { get; set; }
        public static DependencyProperty BackgroundSizingProperty { get; }
        CornerRadius CornerRadius { get; set; }
        public static DependencyProperty CornerRadiusProperty { get; }
      }
      public class DataTemplateSelector : IElementFactory {
        UIElement GetElement(ElementFactoryGetArgs args);
        void RecycleElement(ElementFactoryRecycleArgs args);
      }
      public class DatePicker : Control {
        IReference<DateTime> SelectedDate { get; set; }
        public static DependencyProperty SelectedDateProperty { get; }
        event TypedEventHandler<DatePicker, DatePickerSelectedValueChangedEventArgs> SelectedDateChanged;
      }
      public sealed class DatePickerSelectedValueChangedEventArgs
      public class DropDownButton : Button
      public class DropDownButtonAutomationPeer : ButtonAutomationPeer, IExpandCollapseProvider
      public class Frame : ContentControl, INavigate {
        bool IsNavigationStackEnabled { get; set; }
        public static DependencyProperty IsNavigationStackEnabledProperty { get; }
        bool NavigateToType(TypeName sourcePageType, object parameter, FrameNavigationOptions navigationOptions);
      }
      public class Grid : Panel {
        BackgroundSizing BackgroundSizing { get; set; }
        public static DependencyProperty BackgroundSizingProperty { get; }
      }
      public class IconSourceElement : IconElement
      public interface IScrollAnchorProvider
      public class MenuBar : Control
      public class MenuBarItem : Control
      public class MenuBarItemFlyout : MenuFlyout
      public class NavigationView : ContentControl {
        UIElement ContentOverlay { get; set; }
        public static DependencyProperty ContentOverlayProperty { get; }
        bool IsPaneVisible { get; set; }
        public static DependencyProperty IsPaneVisibleProperty { get; }
        NavigationViewOverflowLabelMode OverflowLabelMode { get; set; }
        public static DependencyProperty OverflowLabelModeProperty { get; }
        UIElement PaneCustomContent { get; set; }
        public static DependencyProperty PaneCustomContentProperty { get; }
        NavigationViewPaneDisplayMode PaneDisplayMode { get; set; }
        public static DependencyProperty PaneDisplayModeProperty { get; }
        UIElement PaneHeader { get; set; }
        public static DependencyProperty PaneHeaderProperty { get; }
        NavigationViewSelectionFollowsFocus SelectionFollowsFocus { get; set; }
        public static DependencyProperty SelectionFollowsFocusProperty { get; }
        NavigationViewShoulderNavigationEnabled ShoulderNavigationEnabled { get; set; }
        public static DependencyProperty ShoulderNavigationEnabledProperty { get; }
        NavigationViewTemplateSettings TemplateSettings { get; }
        public static DependencyProperty TemplateSettingsProperty { get; }
      }
      public class NavigationViewItem : NavigationViewItemBase {
        bool SelectsOnInvoked { get; set; }
        public static DependencyProperty SelectsOnInvokedProperty { get; }
      }
      public sealed class NavigationViewItemInvokedEventArgs {
        NavigationViewItemBase InvokedItemContainer { get; }
        NavigationTransitionInfo RecommendedNavigationTransitionInfo { get; }
      }
      public enum NavigationViewOverflowLabelMode
      public enum NavigationViewPaneDisplayMode
      public sealed class NavigationViewSelectionChangedEventArgs {
        NavigationTransitionInfo RecommendedNavigationTransitionInfo { get; }
        NavigationViewItemBase SelectedItemContainer { get; }
      }
      public enum NavigationViewSelectionFollowsFocus
      public enum NavigationViewShoulderNavigationEnabled
      public class NavigationViewTemplateSettings : DependencyObject
      public class Panel : FrameworkElement {
        BrushTransition BackgroundTransition { get; set; }
      }
      public sealed class PasswordBox : Control {
        bool CanPasteClipboardContent { get; }
        public static DependencyProperty CanPasteClipboardContentProperty { get; }
        object Description { get; set; }
        public static DependencyProperty DescriptionProperty { get; }
        FlyoutBase SelectionFlyout { get; set; }
        public static DependencyProperty SelectionFlyoutProperty { get; }
        void PasteFromClipboard();
      }
      public class RelativePanel : Panel {
        BackgroundSizing BackgroundSizing { get; set; }
        public static DependencyProperty BackgroundSizingProperty { get; }
      }
      public class RichEditBox : Control {
        object Description { get; set; }
        public static DependencyProperty DescriptionProperty { get; }
        FlyoutBase ProofingMenuFlyout { get; }
        public static DependencyProperty ProofingMenuFlyoutProperty { get; }
        FlyoutBase SelectionFlyout { get; set; }
        public static DependencyProperty SelectionFlyoutProperty { get; }
        RichEditTextDocument TextDocument { get; }
        event TypedEventHandler<RichEditBox, RichEditBoxSelectionChangingEventArgs> SelectionChanging;
      }
      public sealed class RichEditBoxSelectionChangingEventArgs
      public sealed class RichTextBlock : FrameworkElement {
        FlyoutBase SelectionFlyout { get; set; }
        public static DependencyProperty SelectionFlyoutProperty { get; }
        void CopySelectionToClipboard();
      }
      public sealed class ScrollContentPresenter : ContentPresenter {
        bool CanContentRenderOutsideBounds { get; set; }
        public static DependencyProperty CanContentRenderOutsideBoundsProperty { get; }
        bool SizesContentToTemplatedParent { get; set; }
        public static DependencyProperty SizesContentToTemplatedParentProperty { get; }
      }
      public sealed class ScrollViewer : ContentControl, IScrollAnchorProvider {
        bool CanContentRenderOutsideBounds { get; set; }
        public static DependencyProperty CanContentRenderOutsideBoundsProperty { get; }
        UIElement CurrentAnchor { get; }
        double HorizontalAnchorRatio { get; set; }
        public static DependencyProperty HorizontalAnchorRatioProperty { get; }
        bool ReduceViewportForCoreInputViewOcclusions { get; set; }
        public static DependencyProperty ReduceViewportForCoreInputViewOcclusionsProperty { get; }
        double VerticalAnchorRatio { get; set; }
        public static DependencyProperty VerticalAnchorRatioProperty { get; }
        event TypedEventHandler<ScrollViewer, AnchorRequestedEventArgs> AnchorRequested;
        public static bool GetCanContentRenderOutsideBounds(DependencyObject element);
        void RegisterAnchorCandidate(UIElement element);
        public static void SetCanContentRenderOutsideBounds(DependencyObject element, bool canContentRenderOutsideBounds);
        void UnregisterAnchorCandidate(UIElement element);
      }
      public class SplitButton : ContentControl
      public class SplitButtonAutomationPeer : FrameworkElementAutomationPeer, IExpandCollapseProvider, IInvokeProvider
      public sealed class SplitButtonClickEventArgs
      public class StackPanel : Panel, IInsertionPanel, IScrollSnapPointsInfo {
        BackgroundSizing BackgroundSizing { get; set; }
        public static DependencyProperty BackgroundSizingProperty { get; }
      }
      public sealed class TextBlock : FrameworkElement {
        FlyoutBase SelectionFlyout { get; set; }
        public static DependencyProperty SelectionFlyoutProperty { get; }
        void CopySelectionToClipboard();
      }
      public class TextBox : Control {
        bool CanPasteClipboardContent { get; }
        public static DependencyProperty CanPasteClipboardContentProperty { get; }
        bool CanRedo { get; }
        public static DependencyProperty CanRedoProperty { get; }
        bool CanUndo { get; }
        public static DependencyProperty CanUndoProperty { get; }
        object Description { get; set; }
        public static DependencyProperty DescriptionProperty { get; }
        FlyoutBase ProofingMenuFlyout { get; }
        public static DependencyProperty ProofingMenuFlyoutProperty { get; }
        FlyoutBase SelectionFlyout { get; set; }
        public static DependencyProperty SelectionFlyoutProperty { get; }
        event TypedEventHandler<TextBox, TextBoxSelectionChangingEventArgs> SelectionChanging;
        void ClearUndoRedoHistory();
        void CopySelectionToClipboard();
        void CutSelectionToClipboard();
        void PasteFromClipboard();
        void Redo();
        void Undo();
      }
      public sealed class TextBoxSelectionChangingEventArgs
      public class TextCommandBarFlyout : CommandBarFlyout
      public class TimePicker : Control {
        IReference<TimeSpan> SelectedTime { get; set; }
        public static DependencyProperty SelectedTimeProperty { get; }
        event TypedEventHandler<TimePicker, TimePickerSelectedValueChangedEventArgs> SelectedTimeChanged;
      }
      public sealed class TimePickerSelectedValueChangedEventArgs
      public class ToggleSplitButton : SplitButton
      public class ToggleSplitButtonAutomationPeer : FrameworkElementAutomationPeer, IExpandCollapseProvider, IToggleProvider
      public sealed class ToggleSplitButtonIsCheckedChangedEventArgs
      public class ToolTip : ContentControl {
        IReference<Rect> PlacementRect { get; set; }
        public static DependencyProperty PlacementRectProperty { get; }
      }
      public class TreeView : Control {
        bool CanDragItems { get; set; }
        public static DependencyProperty CanDragItemsProperty { get; }
        bool CanReorderItems { get; set; }
        public static DependencyProperty CanReorderItemsProperty { get; }
        Style ItemContainerStyle { get; set; }
        public static DependencyProperty ItemContainerStyleProperty { get; }
        StyleSelector ItemContainerStyleSelector { get; set; }
        public static DependencyProperty ItemContainerStyleSelectorProperty { get; }
        TransitionCollection ItemContainerTransitions { get; set; }
        public static DependencyProperty ItemContainerTransitionsProperty { get; }
        object ItemsSource { get; set; }
        public static DependencyProperty ItemsSourceProperty { get; }
        DataTemplate ItemTemplate { get; set; }
        public static DependencyProperty ItemTemplateProperty { get; }
        DataTemplateSelector ItemTemplateSelector { get; set; }
        public static DependencyProperty ItemTemplateSelectorProperty { get; }
        event TypedEventHandler<TreeView, TreeViewDragItemsCompletedEventArgs> DragItemsCompleted;
        event TypedEventHandler<TreeView, TreeViewDragItemsStartingEventArgs> DragItemsStarting;
        DependencyObject ContainerFromItem(object item);
        DependencyObject ContainerFromNode(TreeViewNode node);
        object ItemFromContainer(DependencyObject container);
        TreeViewNode NodeFromContainer(DependencyObject container);
      }
      public sealed class TreeViewCollapsedEventArgs {
        object Item { get; }
      }
      public sealed class TreeViewDragItemsCompletedEventArgs
      public sealed class TreeViewDragItemsStartingEventArgs
      public sealed class TreeViewExpandingEventArgs {
        object Item { get; }
      }
      public class TreeViewItem : ListViewItem {
        bool HasUnrealizedChildren { get; set; }
        public static DependencyProperty HasUnrealizedChildrenProperty { get; }
        object ItemsSource { get; set; }
        public static DependencyProperty ItemsSourceProperty { get; }
      }
      public sealed class WebView : FrameworkElement {
        event TypedEventHandler<WebView, WebViewWebResourceRequestedEventArgs> WebResourceRequested;
      }
      public sealed class WebViewWebResourceRequestedEventArgs
    }
    namespace Windows.UI.Xaml.Controls.Maps {
      public enum MapTileAnimationState
      public sealed class MapTileBitmapRequestedEventArgs {
        int FrameIndex { get; }
      }
     public class MapTileSource : DependencyObject {
        MapTileAnimationState AnimationState { get; }
        public static DependencyProperty AnimationStateProperty { get; }
        bool AutoPlay { get; set; }
        public static DependencyProperty AutoPlayProperty { get; }
        int FrameCount { get; set; }
        public static DependencyProperty FrameCountProperty { get; }
        TimeSpan FrameDuration { get; set; }
        public static DependencyProperty FrameDurationProperty { get; }
        void Pause();
        void Play();
        void Stop();
      }
      public sealed class MapTileUriRequestedEventArgs {
        int FrameIndex { get; }
      }
    }
    namespace Windows.UI.Xaml.Controls.Primitives {
      public class CommandBarFlyoutCommandBar : CommandBar
      public sealed class CommandBarFlyoutCommandBarTemplateSettings : DependencyObject
      public class FlyoutBase : DependencyObject {
        bool AreOpenCloseAnimationsEnabled { get; set; }
        public static DependencyProperty AreOpenCloseAnimationsEnabledProperty { get; }
        bool InputDevicePrefersPrimaryCommands { get; }
        public static DependencyProperty InputDevicePrefersPrimaryCommandsProperty { get; }
        bool IsOpen { get; }
        public static DependencyProperty IsOpenProperty { get; }
        FlyoutShowMode ShowMode { get; set; }
        public static DependencyProperty ShowModeProperty { get; }
        public static DependencyProperty TargetProperty { get; }
        void ShowAt(DependencyObject placementTarget, FlyoutShowOptions showOptions);
      }
      public enum FlyoutPlacementMode {
        Auto = 13,
        BottomEdgeAlignedLeft = 7,
        BottomEdgeAlignedRight = 8,
        LeftEdgeAlignedBottom = 10,
        LeftEdgeAlignedTop = 9,
        RightEdgeAlignedBottom = 12,
        RightEdgeAlignedTop = 11,
        TopEdgeAlignedLeft = 5,
        TopEdgeAlignedRight = 6,
      }
      public enum FlyoutShowMode
      public class FlyoutShowOptions
      public class NavigationViewItemPresenter : ContentControl
    }
    namespace Windows.UI.Xaml.Core.Direct {
      public interface IXamlDirectObject
      public sealed class XamlDirect
      public struct XamlDirectContract
      public enum XamlEventIndex
      public enum XamlPropertyIndex
      public enum XamlTypeIndex
    }
    namespace Windows.UI.Xaml.Hosting {
      public class DesktopWindowXamlSource : IClosable
      public sealed class DesktopWindowXamlSourceGotFocusEventArgs
      public sealed class DesktopWindowXamlSourceTakeFocusRequestedEventArgs
      public sealed class WindowsXamlManager : IClosable
      public enum XamlSourceFocusNavigationReason
      public sealed class XamlSourceFocusNavigationRequest
      public sealed class XamlSourceFocusNavigationResult
    }
    namespace Windows.UI.Xaml.Input {
      public sealed class CanExecuteRequestedEventArgs
      public sealed class ExecuteRequestedEventArgs
      public sealed class FocusManager {
        public static event EventHandler<GettingFocusEventArgs> GettingFocus;
        public static event EventHandler<FocusManagerGotFocusEventArgs> GotFocus;
        public static event EventHandler<LosingFocusEventArgs> LosingFocus;
        public static event EventHandler<FocusManagerLostFocusEventArgs> LostFocus;
      }
      public sealed class FocusManagerGotFocusEventArgs
      public sealed class FocusManagerLostFocusEventArgs
      public sealed class GettingFocusEventArgs : RoutedEventArgs {
        Guid CorrelationId { get; }
      }
      public sealed class LosingFocusEventArgs : RoutedEventArgs {
        Guid CorrelationId { get; }
      }
      public class StandardUICommand : XamlUICommand
      public enum StandardUICommandKind
      public class XamlUICommand : DependencyObject, ICommand
    }
    namespace Windows.UI.Xaml.Markup {
      public sealed class FullXamlMetadataProviderAttribute : Attribute
      public interface IXamlBindScopeDiagnostics
      public interface IXamlType2 : IXamlType
    }
    namespace Windows.UI.Xaml.Media {
      public class Brush : DependencyObject, IAnimationObject {
        void PopulatePropertyInfo(string propertyName, AnimationPropertyInfo propertyInfo);
        virtual void PopulatePropertyInfoOverride(string propertyName, AnimationPropertyInfo animationPropertyInfo);
      }
    }
    namespace Windows.UI.Xaml.Media.Animation {
      public class BasicConnectedAnimationConfiguration : ConnectedAnimationConfiguration
      public sealed class ConnectedAnimation {
        ConnectedAnimationConfiguration Configuration { get; set; }
      }
      public class ConnectedAnimationConfiguration
      public class DirectConnectedAnimationConfiguration : ConnectedAnimationConfiguration
      public class GravityConnectedAnimationConfiguration : ConnectedAnimationConfiguration
      public enum SlideNavigationTransitionEffect
      public sealed class SlideNavigationTransitionInfo : NavigationTransitionInfo {
        SlideNavigationTransitionEffect Effect { get; set; }
        public static DependencyProperty EffectProperty { get; }
      }
    }
    namespace Windows.UI.Xaml.Navigation {
      public class FrameNavigationOptions
    }
    namespace Windows.Web.UI {
      public interface IWebViewControl2
      public sealed class WebViewControlNewWindowRequestedEventArgs {
        IWebViewControl NewWindow { get; set; }
        Deferral GetDeferral();
      }
      public enum WebViewControlPermissionType {
        ImmersiveView = 6,
      }
    }
    namespace Windows.Web.UI.Interop {
      public sealed class WebViewControl : IWebViewControl, IWebViewControl2 {
        event TypedEventHandler<WebViewControl, object> GotFocus;
        event TypedEventHandler<WebViewControl, object> LostFocus;
        void AddInitializeScript(string script);
      }
    }
    
    

    Removals:

    
    namespace Windows.Gaming.UI {
      public sealed class GameMonitor
      public enum GameMonitoringPermission
    }
    
    

    The post Windows 10 SDK Preview Build 17738 available now! appeared first on Windows Developer Blog.

    A Microsoft DevSecOps Static Application Security Testing (SAST) Exercise

    $
    0
    0
    Static Application Security Testing (SAST) is a critical DevSecOps practice. As engineering organizations accelerate continuous delivery to impressive levels, it’s important to ensure that continuous security validation keeps up. To do so most effectively requires a multi-dimensional application of static analysis tools. The more customizable the tool, the better you can shape it to your... Read More

    Analytics Private Preview for Customers on TFS 2018 Update 2

    $
    0
    0
    Analytics is the new reporting platform for both Team Foundation Server (TFS) and Visual Studio Team Services (VSTS). We are starting a Limited Private Preview of Analytics for TFS 2018 Update 2 in preparation for a full release in TFS 2019. To learn more about Analytics: Check out the Analytics Extension page on our marketplace.... Read More
    Viewing all 10804 articles
    Browse latest View live


    <script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>