{"version":"1.0","provider_name":"Philipp Salvisberg&#039;s Blog","provider_url":"https:\/\/www.salvis.com\/blog","author_name":"Philipp Salvisberg","author_url":"https:\/\/www.salvis.com\/blog\/author\/phs\/","title":"PL\/SQL Cop for SonarQube 7.0 - Philipp Salvisberg&#039;s Blog","type":"rich","width":600,"height":338,"html":"<blockquote class=\"wp-embedded-content\" data-secret=\"ki9ZK83nH4\"><a href=\"https:\/\/www.salvis.com\/blog\/2018\/03\/11\/pl-sql-cop-for-sonarqube-7-0\/\">PL\/SQL Cop for SonarQube 7.0<\/a><\/blockquote><iframe sandbox=\"allow-scripts\" security=\"restricted\" src=\"https:\/\/www.salvis.com\/blog\/2018\/03\/11\/pl-sql-cop-for-sonarqube-7-0\/embed\/#?secret=ki9ZK83nH4\" width=\"600\" height=\"338\" title=\"&#8220;PL\/SQL Cop for SonarQube 7.0&#8221; &#8212; Philipp Salvisberg&#039;s Blog\" data-secret=\"ki9ZK83nH4\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" class=\"wp-embedded-content\"><\/iframe><script type=\"text\/javascript\">\n\/* <![CDATA[ *\/\n\/*! This file is auto-generated *\/\n!function(d,l){\"use strict\";l.querySelector&&d.addEventListener&&\"undefined\"!=typeof URL&&(d.wp=d.wp||{},d.wp.receiveEmbedMessage||(d.wp.receiveEmbedMessage=function(e){var t=e.data;if((t||t.secret||t.message||t.value)&&!\/[^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<o.length;i++)o[i].style.display=\"none\";for(i=0;i<a.length;i++)s=a[i],e.source===s.contentWindow&&(s.removeAttribute(\"style\"),\"height\"===t.message?(1e3<(r=parseInt(t.value,10))?r=1e3:~~r<200&&(r=200),s.height=r):\"link\"===t.message&&(r=new URL(s.getAttribute(\"src\")),n=new URL(t.value),c.test(n.protocol))&&n.host===r.host&&l.activeElement===s&&(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<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);\n\/\/# sourceURL=https:\/\/www.salvis.com\/blog\/wp-includes\/js\/wp-embed.min.js\n\/* ]]> *\/\n<\/script>\n","thumbnail_url":"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/03\/sonarqube.jpg","thumbnail_width":600,"thumbnail_height":450,"description":"For the last two months, my Trivadis colleague Daniel Schutzbach and I have been working on the PL\/SQL Cop plugin for SonarQube. The goal was to support the most recent SonarQube versions 5.6 LTS, 6.7 LTS and 7.0. Dani was doing the heavy lifting and my job was testing and minor bug [\u2026]"}