<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[13186] sites/trunk/trac.wordpress.org/templates: Trac: CDNise the URLs within JSON/JS as well.</title>
</head>
<body>
<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; }
#msg dl a { font-weight: bold}
#msg dl a:link { color:#fc3; }
#msg dl a:active { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { white-space: pre-line; overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta" style="font-size: 105%">
<dt style="float: left; width: 6em; font-weight: bold">Revision</dt> <dd><a style="font-weight: bold" href="http://meta.trac.wordpress.org/changeset/13186">13186</a><script type="application/ld+json">{"@context":"http://schema.org","@type":"EmailMessage","description":"Review this Commit","action":{"@type":"ViewAction","url":"http://meta.trac.wordpress.org/changeset/13186","name":"Review Commit"}}</script></dd>
<dt style="float: left; width: 6em; font-weight: bold">Author</dt> <dd>dd32</dd>
<dt style="float: left; width: 6em; font-weight: bold">Date</dt> <dd>2024-02-07 07:00:03 +0000 (Wed, 07 Feb 2024)</dd>
</dl>
<pre style='padding-left: 1em; margin: 2em 0; border-left: 2px solid #ccc; line-height: 1.25; font-size: 105%; font-family: sans-serif'>Trac: CDNise the URLs within JSON/JS as well.</pre>
<h3>Modified Paths</h3>
<ul>
<li><a href="#sitestrunktracwordpressorgtemplatesupdateheadersphp">sites/trunk/trac.wordpress.org/templates/update-headers.php</a></li>
<li><a href="#sitestrunktracwordpressorgtemplateswporgheadhtml">sites/trunk/trac.wordpress.org/templates/wporg-head.html</a></li>
</ul>
</div>
<div id="patch">
<h3>Diff</h3>
<a id="sitestrunktracwordpressorgtemplatesupdateheadersphp"></a>
<div class="modfile"><h4 style="background-color: #eee; color: inherit; margin: 1em 0; padding: 1.3em; font-size: 115%">Modified: sites/trunk/trac.wordpress.org/templates/update-headers.php</h4>
<pre class="diff"><span>
<span class="info" style="display: block; padding: 0 10px; color: #888">--- sites/trunk/trac.wordpress.org/templates/update-headers.php 2024-02-07 06:18:36 UTC (rev 13185)
+++ sites/trunk/trac.wordpress.org/templates/update-headers.php 2024-02-07 07:00:03 UTC (rev 13186)
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -88,17 +88,28 @@
</span><span class="cx" style="display: block; padding: 0 10px"> * Until https://github.com/WordPress/wporg-mu-plugins/pull/430 is resolved.
</span><span class="cx" style="display: block; padding: 0 10px"> */
</span><span class="cx" style="display: block; padding: 0 10px"> $html = preg_replace_callback(
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">- '!(?P<url>https://wordpress.org/wp-(includes|content)/[^\'"]+)!i',
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+ '!(?P<url>https:[\\\/]+wordpress.org[\\\/]+wp-(includes|content)[\\\/]+[^\'"]+)!i',
</ins><span class="cx" style="display: block; padding: 0 10px"> function( $m ) {
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">- $url = str_replace( 'https://wordpress.org/', 'https://s.w.org/', $m['url'] );
- $hash = md5( file_get_contents( $m['url'] ) );
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+ $url = $m['url'];
+ $escaped = false !== strpos( $url, '\/' );
</ins><span class="cx" style="display: block; padding: 0 10px">
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">- if ( preg_match( '/([?&;](ver)=[^&]+)/i', $url, $m ) ) {
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+ if ( $escaped ) {
+ $url = stripslashes( $url );
+ }
+
+ $url = str_replace( 'wordpress.org', 's.w.org', $url );
+ $hash = md5( file_get_contents( $url ) );
+
+ if ( preg_match( '/([?&;](ver|v)=[^&]+)/i', $url, $m ) ) {
</ins><span class="cx" style="display: block; padding: 0 10px"> $url = str_replace( $m[0], $m[0] . '-' . $hash, $url );
</span><span class="cx" style="display: block; padding: 0 10px"> } else {
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">- $url .= ( str_contains( $url, '?' ) ? '&' : '?' ) . 'ver=' . $hash;
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+ $url .= ( strpos( $url, '?' ) ? '&' : '?' ) . 'ver=' . $hash;
</ins><span class="cx" style="display: block; padding: 0 10px"> }
</span><span class="cx" style="display: block; padding: 0 10px">
</span><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+ if ( $escaped ) {
+ $url = addcslashes( $url, '/' );
+ }
+
</ins><span class="cx" style="display: block; padding: 0 10px"> return $url;
</span><span class="cx" style="display: block; padding: 0 10px"> },
</span><span class="cx" style="display: block; padding: 0 10px"> $html
</span></span></pre></div>
<a id="sitestrunktracwordpressorgtemplateswporgheadhtml"></a>
<div class="modfile"><h4 style="background-color: #eee; color: inherit; margin: 1em 0; padding: 1.3em; font-size: 115%">Modified: sites/trunk/trac.wordpress.org/templates/wporg-head.html</h4>
<pre class="diff"><span>
<span class="info" style="display: block; padding: 0 10px; color: #888">--- sites/trunk/trac.wordpress.org/templates/wporg-head.html 2024-02-07 06:18:36 UTC (rev 13185)
+++ sites/trunk/trac.wordpress.org/templates/wporg-head.html 2024-02-07 07:00:03 UTC (rev 13186)
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -18,7 +18,7 @@
</span><span class="cx" style="display: block; padding: 0 10px"> })(window,document,'script','dataLayer','GTM-P24PF4B');
</span><span class="cx" style="display: block; padding: 0 10px"> //]]></script>
</span><span class="cx" style="display: block; padding: 0 10px"> <script>//<![CDATA[
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-window._wpemojiSettings = {"baseUrl":"https:\/\/s.w.org\/images\/core\/emoji\/14.0.0\/72x72\/","ext":".png","svgUrl":"https:\/\/s.w.org\/images\/core\/emoji\/14.0.0\/svg\/","svgExt":".svg","source":{"concatemoji":"https:\/\/wordpress.org\/wp-includes\/js\/wp-emoji-release.min.js?ver=6.5-alpha-57545"}};
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+window._wpemojiSettings = {"baseUrl":"https:\/\/s.w.org\/images\/core\/emoji\/14.0.0\/72x72\/","ext":".png","svgUrl":"https:\/\/s.w.org\/images\/core\/emoji\/14.0.0\/svg\/","svgExt":".svg","source":{"concatemoji":"https:\/\/s.w.org\/wp-includes\/js\/wp-emoji-release.min.js?ver=6.5-alpha-57545-4cc444663c1e69cb8ac7b909e7192bca"}};
</ins><span class="cx" style="display: block; padding: 0 10px"> /*! This file is auto-generated */
</span><span class="cx" style="display: block; padding: 0 10px"> !function(i,n){var o,s,e;function c(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(o,JSON.stringify(t))}catch(e){}}function p(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data),r=(e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0),new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data));return t.every(function(e,t){return e===r[t]})}function u(e,t,n){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\uddfa\ud83c\uddf3","\ud83c\uddfa\u200b\ud83c\uddf3")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\ud
c65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!n(e,"\ud83e\udef1\ud83c\udffb\u200d\ud83e\udef2\ud83c\udfff","\ud83e\udef1\ud83c\udffb\u200b\ud83e\udef2\ud83c\udfff")}return!1}function f(e,t,n){var r="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):i.createElement("canvas"),a=r.getContext("2d",{willReadFrequently:!0}),o=(a.textBaseline="top",a.font="600 32px Arial",{});return e.forEach(function(e){o[e]=t(a,e,n)}),o}function t(e){var t=i.createElement("script");t.src=e,t.defer=!0,i.head.appendChild(t)}"undefined"!=typeof Promise&&(o="wpEmojiSettingsSupports",s=["flag","emoji"],n.supports={everything:!0,everythingExceptFlag:!0},e=new Promise(function(e){i.addEventListener("DOMContentLoaded",e,{once:!0})}),new Promise(function(t){var n=function(
){try{var e=JSON.parse(sessionStorage.getItem(o));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(s),u.toString(),p.toString()].join(",")+"));",r=new Blob([e],{type:"text/javascript"}),a=new Worker(URL.createObjectURL(r),{name:"wpTestEmojiSupports"});return void(a.onmessage=function(e){c(n=e.data),a.terminate(),t(n)})}catch(e){}c(n=f(s,u,p))}t(n)}).then(function(e){for(var t in e)n.supports[t]=e[t],n.supports.everything=n.supports.everything&&n.supports[t],"flag
"!==t&&(n.supports.everythingExceptFlag=n.supports.everythingExceptFlag&&n.supports[t]);n.supports.everythingExceptFlag=n.supports.everythingExceptFlag&&!n.supports.flag,n.DOMReady=!1,n.readyCallback=function(){n.DOMReady=!0}}).then(function(){return e}).then(function(){var e;n.supports.everything||(n.readyCallback(),(e=n.source||{}).concatemoji?t(e.concatemoji):e.wpemoji&&e.twemoji&&(t(e.twemoji),t(e.wpemoji)))}))}((window,document),window._wpemojiSettings);
</span><span class="cx" style="display: block; padding: 0 10px"> //]]></script>
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -31,7 +31,7 @@
</span><span class="cx" style="display: block; padding: 0 10px"> .wp-block-group{box-sizing:border-box}
</span><span class="cx" style="display: block; padding: 0 10px"> </style>
</span><span class="cx" style="display: block; padding: 0 10px"> <link rel="stylesheet" id="open-sans-css" href="https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300;0,400;0,600;1,300;1,400;1,600&display=swap" media="all"/>
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-<link rel="stylesheet" id="wp4-styles-css" href="https://s.w.org/style/wp4.css?ver=1645139188" media="all"/>
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+<link rel="stylesheet" id="wp4-styles-css" href="https://s.w.org/style/wp4.css?ver=1645139155" media="all"/>
</ins><span class="cx" style="display: block; padding: 0 10px"> <style id="wp-emoji-styles-inline-css">
</span><span class="cx" style="display: block; padding: 0 10px"> img.wp-smiley, img.emoji {
</span><span class="cx" style="display: block; padding: 0 10px"> display: inline !important;
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -257,14 +257,14 @@
</span><span class="cx" style="display: block; padding: 0 10px"> <style id="core-block-supports-inline-css">
</span><span class="cx" style="display: block; padding: 0 10px"> .wp-container-core-navigation-is-layout-2.wp-container-core-navigation-is-layout-2{flex-direction:column;align-items:flex-start;}
</span><span class="cx" style="display: block; padding: 0 10px"> </style>
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-<link rel="stylesheet" id="wporg-global-fonts-css" href="https://s.w.org/wp-content/mu-plugins/pub-sync/global-fonts/style.css?ver=1700435029-d6228079937fbf30cfb38ae89bd881d5" media="all"/>
-<link rel="stylesheet" id="wporg-global-header-footer-css" href="https://s.w.org/wp-content/mu-plugins/pub-sync/blocks/global-header-footer/build/style.css?ver=1706749364-3b988c8838ef7d6789c20ca32d48bed3" media="all"/>
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+<link rel="stylesheet" id="wporg-global-fonts-css" href="https://s.w.org/wp-content/mu-plugins/pub-sync/global-fonts/style.css?ver=1700434948-d6228079937fbf30cfb38ae89bd881d5" media="all"/>
+<link rel="stylesheet" id="wporg-global-header-footer-css" href="https://s.w.org/wp-content/mu-plugins/pub-sync/blocks/global-header-footer/build/style.css?ver=1706749311-3b988c8838ef7d6789c20ca32d48bed3" media="all"/>
</ins><span class="cx" style="display: block; padding: 0 10px"> <link rel="stylesheet" id="jetpack_css-css" href="https://s.w.org/wp-content/plugins/jetpack/css/jetpack.css?ver=12.9.3-af06e42ba998be5b755ccfa57836b1a5" media="all"/>
</span><span class="cx" style="display: block; padding: 0 10px"> <script id="wp-load-polyfill-importmap">//<![CDATA[
</span><span class="cx" style="display: block; padding: 0 10px"> ( HTMLScriptElement.supports && HTMLScriptElement.supports("importmap") ) || document.write( '\x3Cscript src="https://s.w.org/wp-includes/js/dist/vendor/wp-polyfill-importmap.min.js?ver=1.8.2-66d129b8cda37e04ad3704c92bb40970"\x3E\x3C/scr' + 'ipt\x3E' );
</span><span class="cx" style="display: block; padding: 0 10px"> //]]></script>
</span><span class="cx" style="display: block; padding: 0 10px"> <script type="importmap" id="wp-importmap">//<![CDATA[
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-{"imports":{"@wordpress\/interactivity":"https:\/\/wordpress.org\/wp-includes\/js\/dist\/interactivity.min.js?ver=6.5-alpha-57545"}}
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+{"imports":{"@wordpress\/interactivity":"https:\/\/s.w.org\/wp-includes\/js\/dist\/interactivity.min.js?ver=6.5-alpha-57545-251b74209f6e72f9b956b557828cd919"}}
</ins><span class="cx" style="display: block; padding: 0 10px"> //]]></script>
</span><span class="cx" style="display: block; padding: 0 10px"> <script type="module" src="https://s.w.org/wp-content/plugins/gutenberg/build/interactivity/navigation.min.js?ver=17.6.3-8110d70f09f500def02c907b768f788e" id="@wordpress/block-library/navigation-js-module"/>
</span><span class="cx" style="display: block; padding: 0 10px"> <link rel="modulepreload" href="https://s.w.org/wp-includes/js/dist/interactivity.min.js?ver=6.5-alpha-57545-251b74209f6e72f9b956b557828cd919" id="@wordpress/interactivity-js-modulepreload"/><link rel="preconnect" href="https://fonts.googleapis.com"/><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin=""/>
</span></span></pre>
</div>
</div>
</body>
</html>