<?xml version="1.0"?>
<oembed><version>1.0</version><provider_name>Visual Studio news feed</provider_name><provider_url>https://devblogs.microsoft.com/vsnews</provider_url><author_name>App Center Team</author_name><author_url>https://devblogs.microsoft.com/vsnews/akams-author/aadsso-100030000fe84d86c/</author_url><title>Announcing TypeScript 2.8</title><type>rich</type><width>600</width><height>338</height><html>&lt;blockquote class="wp-embedded-content" data-secret="3VYAnzYFsE"&gt;&lt;a href="https://devblogs.microsoft.com/vsnews/akams-p7kled/"&gt;Announcing TypeScript 2.8&lt;/a&gt;&lt;/blockquote&gt;&lt;iframe sandbox="allow-scripts" security="restricted" src="https://devblogs.microsoft.com/vsnews/akams-p7kled/embed/#?secret=3VYAnzYFsE" width="600" height="338" title="&#x201C;Announcing TypeScript 2.8&#x201D; &#x2014; Visual Studio news feed" data-secret="3VYAnzYFsE" frameborder="0" marginwidth="0" marginheight="0" scrolling="no" class="wp-embedded-content"&gt;&lt;/iframe&gt;&lt;script type="text/javascript"&gt;
/* &lt;![CDATA[ */
/*! This file is auto-generated */
!function(d,l){"use strict";l.querySelector&amp;&amp;d.addEventListener&amp;&amp;"undefined"!=typeof URL&amp;&amp;(d.wp=d.wp||{},d.wp.receiveEmbedMessage||(d.wp.receiveEmbedMessage=function(e){var t=e.data;if((t||t.secret||t.message||t.value)&amp;&amp;!/[^a-zA-Z0-9]/.test(t.secret)){for(var s,r,n,a=l.querySelectorAll('iframe[data-secret="'+t.secret+'"]'),o=l.querySelectorAll('blockquote[data-secret="'+t.secret+'"]'),c=new RegExp("^https?:$","i"),i=0;i&lt;o.length;i++)o[i].style.display="none";for(i=0;i&lt;a.length;i++)s=a[i],e.source===s.contentWindow&amp;&amp;(s.removeAttribute("style"),"height"===t.message?(1e3&lt;(r=parseInt(t.value,10))?r=1e3:~~r&lt;200&amp;&amp;(r=200),s.height=r):"link"===t.message&amp;&amp;(r=new URL(s.getAttribute("src")),n=new URL(t.value),c.test(n.protocol))&amp;&amp;n.host===r.host&amp;&amp;l.activeElement===s&amp;&amp;(d.top.location.href=t.value))}},d.addEventListener("message",d.wp.receiveEmbedMessage,!1),l.addEventListener("DOMContentLoaded",function(){for(var e,t,s=l.querySelectorAll("iframe.wp-embedded-content"),r=0;r&lt;s.length;r++)(t=(e=s[r]).getAttribute("data-secret"))||(t=Math.random().toString(36).substring(2,12),e.src+="#?secret="+t,e.setAttribute("data-secret",t)),e.contentWindow.postMessage({message:"ready",secret:t},"*")},!1)))}(window,document);
//# sourceURL=https://devblogs.microsoft.com/vsnews/wp-includes/js/wp-embed.min.js
/* ]]&gt; */
&lt;/script&gt;
</html><thumbnail_url>https://devblogs.microsoft.com/vsnews/wp-content/uploads/sites/25/2018/08/vsfeaturebig.png</thumbnail_url><thumbnail_width>716</thumbnail_width><thumbnail_height>448</thumbnail_height><description>TypeScript 2.8 is here and brings a few features that we think you&#x2019;ll love unconditionally! If you&#x2019;re not familiar with TypeScript, it&#x2019;s a language that adds optional static types to JavaScript. Those static types help make guarantees about your code to avoid typos and other silly errors. They can also help provide nice things like [&hellip;]</description></oembed>
