Skip to content

Commit

Permalink
[main] fix deprecated size pic, point to new url (#2329)
Browse files Browse the repository at this point in the history
* change all size url

* Create ai.3.2.0.js.svg

* add script to generate image

* remove image

* Update package.json

* create old size image pic

* create folder also

* remove logs

* Update old-size-image-generator.js

---------

Co-authored-by: Nev <54870357+MSNev@users.noreply.github.com>
  • Loading branch information
siyuniu-ms and MSNev committed Apr 19, 2024
1 parent 7bcd35c commit 50d893a
Show file tree
Hide file tree
Showing 7 changed files with 239 additions and 72 deletions.
131 changes: 66 additions & 65 deletions AISKU/README.md

Large diffs are not rendered by default.

6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@
[![GitHub Workflow Status (main)](https://img.shields.io/github/actions/workflow/status/microsoft/ApplicationInsights-JS/ci.yml?branch=main)](https://github.com/microsoft/ApplicationInsights-JS/tree/main)
[![Build Status](https://dev.azure.com/mseng/AppInsights/_apis/build/status%2FAppInsights%20-%20DevTools%2F1DS%20JavaScript%20SDK%20web%20SKU%20(main%3B%20master)?branchName=main)](https://dev.azure.com/mseng/AppInsights/_build/latest?definitionId=8184&branchName=main)
[![npm version](https://badge.fury.io/js/%40microsoft%2Fapplicationinsights-web.svg)](https://badge.fury.io/js/%40microsoft%2Fapplicationinsights-web)
[![minified size size](https://img.badgesize.io/https://js.monitor.azure.com/scripts/b/3.min.js.svg?label=minified%20size)](https://js.monitor.azure.com/scripts/b/ai.3.min.js)
[![gzip size](https://img.badgesize.io/https://js.monitor.azure.com/scripts/b/ai.3.min.js.svg?compression=gzip&softmax=30000&max=35000)](https://js.monitor.azure.com/scripts/b/ai.3.min.js)
[![minified size size](https://js.monitor.azure.com/scripts/b/3.min.js.svg)](https://js.monitor.azure.com/scripts/b/ai.3.min.js)
[![gzip size](https://js.monitor.azure.com/scripts/b/ai.3.min.js.gzip.svg)](https://js.monitor.azure.com/scripts/b/ai.3.min.js)

## Before Getting Started

Expand Down Expand Up @@ -572,7 +572,7 @@ While the script downloads from the CDN, all tracking of your page is queued. On
> Summary:
>
> - ![current npm version](https://badge.fury.io/js/%40microsoft%2Fapplicationinsights-web.svg)
> - ![gzip compressed size](https://img.badgesize.io/https://js.monitor.azure.com/scripts/b/ai.3.gbl.min.js.svg?compression=gzip)
> - ![gzip compressed size](https://js.monitor.azure.com/scripts/b/ai.3.gbl.min.js.gzip.svg)
> - **~15 ms** overall initialization time
> - **Zero** tracking missed during life cycle of page
Expand Down
4 changes: 2 additions & 2 deletions docs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@
[![GitHub Workflow Status (main)](https://img.shields.io/github/actions/workflow/status/microsoft/ApplicationInsights-JS/ci.yml?branch=main)](https://github.com/microsoft/ApplicationInsights-JS/tree/main)
[![Build Status](https://dev.azure.com/mseng/AppInsights/_apis/build/status%2FAppInsights%20-%20DevTools%2F1DS%20JavaScript%20SDK%20web%20SKU%20(main%3B%20master)?branchName=main)](https://dev.azure.com/mseng/AppInsights/_build/latest?definitionId=8184&branchName=main)
[![npm version](https://badge.fury.io/js/%40microsoft%2Fapplicationinsights-web.svg)](https://badge.fury.io/js/%40microsoft%2Fapplicationinsights-web)
[![minified size size](https://img.badgesize.io/https://js.monitor.azure.com/scripts/b/ai.3.gbl.min.js.svg?label=minified%20size)](https://js.monitor.azure.com/scripts/b/ai.3.gbl.min.js)
[![gzip size](https://img.badgesize.io/https://js.monitor.azure.com/scripts/b/ai.3.gbl.min.js.svg?compression=gzip&softmax=50000&max=55000)](https://js.monitor.azure.com/scripts/b/ai.3.gbl.min.js)
[![minified size size](https://js.monitor.azure.com/scripts/b/ai.3.gbl.min.js.svg)](https://js.monitor.azure.com/scripts/b/ai.3.gbl.min.js)
[![gzip size](https://js.monitor.azure.com/scripts/b/ai.3.gbl.min.js.gzip.svg)](https://js.monitor.azure.com/scripts/b/ai.3.gbl.min.js)

## Before Getting Started

Expand Down
4 changes: 2 additions & 2 deletions extensions/applicationinsights-debugplugin-js/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@
[![GitHub Workflow Status (main)](https://img.shields.io/github/actions/workflow/status/microsoft/ApplicationInsights-JS/ci.yml?branch=main)](https://github.com/microsoft/ApplicationInsights-JS/tree/main)
[![Build Status](https://dev.azure.com/mseng/AppInsights/_apis/build/status%2FAppInsights%20-%20DevTools%2F1DS%20JavaScript%20SDK%20web%20SKU%20(main%3B%20master)?branchName=main)](https://dev.azure.com/mseng/AppInsights/_build/latest?definitionId=8184&branchName=main)
[![npm version](https://badge.fury.io/js/%40microsoft%2Fapplicationinsights-debugplugin-js.svg)](https://badge.fury.io/js/%40microsoft%2Fapplicationinsights-debugplugin-js)
[![gzip size](https://img.badgesize.io/https://js.monitor.azure.com/scripts/b/ext/ai.dbg.2.min.js.svg?compression=gzip&softmax=30000&max=35000)](https://img.badgesize.io/https://js.monitor.azure.com/scripts/b/ext/ai.dbg.2.min.js.svg?compression=gzip&softmax=20000&max=25000)
[![minified size size](https://img.badgesize.io/https://js.monitor.azure.com/scripts/b/ext/ai.dbg.2.min.js.svg?label=minified%20size)](https://img.badgesize.io/https://js.monitor.azure.com/scripts/b/ext/ai.dbg.2.min.js.svg?label=minified%20size)
[![gzip size](https://js.monitor.azure.com/scripts/b/ext/ai.dbg.2.min.js.gzip.svg)](https://js.monitor.azure.com/scripts/b/ext/ai.dbg.2.min.js.gzip.svg)
[![minified size size](https://js.monitor.azure.com/scripts/b/ext/ai.dbg.2.min.js.svg)](https://js.monitor.azure.com/scripts/b/ext/ai.dbg.2.min.js.svg)

This README is broken down into several parts:

Expand Down
73 changes: 73 additions & 0 deletions tools/sizeImageGenerator/old-size-image-generator.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
const fsPromise = require('fs').promises;
const fs = require('fs');
const zlib = require('zlib');

async function generateSizeBadge(path, fileSize) {
try {
const sizeBadge = `https://img.shields.io/badge/size-${fileSize}kb-blue`;
const res = await fetch(encodeURI(sizeBadge));
if (!res.ok) {
throw new Error(`Failed to fetch ${sizeBadge}: ${res.status} ${res.statusText}`);
}
const buffer = await res.arrayBuffer();
await fsPromise.writeFile(`img/ai.${path}.svg`, Buffer.from(buffer));
} catch (err) {
throw new Error(`Failed to generate size badge: ${err.message}`);
}
}

async function downloadFile(version) {
try {
let url = "https://js.monitor.azure.com/scripts/b/ai." + version + ".js";
const res = await fetch(encodeURI(url));
if (!res.ok) {
throw new Error(`Failed to fetch ${url}: ${res.status} ${res.statusText}`);
}
const buffer = await res.arrayBuffer();
await fsPromise.writeFile(`./cdnFile/ai.${version}.js`, Buffer.from(buffer));
} catch (err) {
throw new Error(`Failed to generate size badge: ${err.message}`);
}
}

function createDirectory(dirName) {
const dir = `./${dirName}`;
if (!fs.existsSync(dir)){
fs.mkdirSync(dir);
}
}

async function main() {
createDirectory("cdnFile");
createDirectory("img");
const versions = ["3.1.2", "3.1.1", "3.1.0", "3.0.9", "3.0.8", "3.0.7",
"3.0.6", "3.0.5", "3.0.4", "3.0.3", "3.0.2", "3.0.1", "3.0.0", "2.8.18",
"2.8.17", "2.8.16", "2.8.15", "2.8.14", "2.8.13", "2.8.12", "2.8.11",
"2.8.10", "2.8.9", "2.8.8", "2.8.7", "2.8.6", "2.8.5", "2.8.4", "2.8.3",
"2.8.2", "2.8.1", "2.8.0", "2.7.4", "2.7.3", "2.7.2", "2.7.1", "2.7.0",
"2.6.5", "2.6.4", "2.6.3", "2.6.2", "2.6.1", "2.6.0", "2.5.11", "2.5.10",
"2.5.9", "2.5.8", "2.5.7", "2.5.6", "2.5.5", "2.5.4", "2.5.3", "2.5.2",
"2.4.4", "2.4.3", "2.4.1", "2.3.1", "2.3.0", "2.2.2", "2.2.0", "2.1.0",
"2.0.1", "2.0.0", "3", "3.gbl"];

for (let i = 0; i < versions.length; i++) {
let version = versions[i];
await downloadFile(version);
await downloadFile(version + ".min");
const filename = `./cdnFile/ai.${version}.js`;
const minFileName = `./cdnFile/ai.${version}.min.js`;
try {
const fileSize = Math.ceil((await fsPromise.stat(filename)).size / 1024);
const minFileSize = Math.ceil((await fsPromise.stat(minFileName)).size / 1024);
const fileContent = await fsPromise.readFile(filename);
const gzippedContent = zlib.gzipSync(fileContent);
const gzippedSize = Math.ceil(gzippedContent.length / 1024);
await generateSizeBadge(version + ".js", fileSize);
await generateSizeBadge(version + ".min.js", minFileSize);
await generateSizeBadge(version + ".min.js.gzip", gzippedSize);
} catch (err) {
console.error('Error:', err);
}
}
}
main();
33 changes: 33 additions & 0 deletions tools/sizeImageGenerator/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
{
"name": "applicationinsights-js-size-image-generator",
"version": "3.1.3-dev",
"author": "Javascript Telemetry SDKs <TelReachSDK@microsoft.com>",
"description": "size image generator",
"homepage": "https://github.com/microsoft/ApplicationInsights-JS",
"sideEffects": false,
"scripts": {
"clean": "git clean -xdf",
"update": "rush update",
"build": "",
"rebuild": "",
"test": "",
"issues": "node ./size-image-generator.js"
},
"keywords": [
"1DS",
"Js",
"SDK"
],
"repository": {
"type": "git",
"url": "https://github.com/microsoft/ApplicationInsights-JS/tree/main/tools/status-tools"
},
"devDependencies": {
"globby": "^11.0.0",
"grunt": "^1.5.3"
},
"dependencies": {
"node-fetch": "^3.3.2",
"zlib": "^1.0.5"
}
}
60 changes: 60 additions & 0 deletions tools/sizeImageGenerator/size-image-generator.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
const fsPromise = require('fs').promises;
const fs = require('fs');
const zlib = require('zlib');
async function getVersionFromPackageJson(packageJsonPath) {
try {
const data = await fsPromise.readFile(packageJsonPath, 'utf8');
const packageJson = JSON.parse(data);
if (packageJson && packageJson.version) {
return packageJson.version;
} else {
throw new Error('No version found in package.json');
}
} catch (err) {
throw new Error(`Failed to read package.json: ${err.message}`);
}
}

async function generateSizeBadge(path, fileSize) {
try {
const sizeBadge = `https://img.shields.io/badge/size-${fileSize}kb-blue`;
const res = await fetch(encodeURI(sizeBadge));
if (!res.ok) {
throw new Error(`Failed to fetch ${sizeBadge}: ${res.status} ${res.statusText}`);
}
const buffer = await res.arrayBuffer();
await fsPromise.writeFile(`img/ai.${path}.svg`, Buffer.from(buffer));
} catch (err) {
throw new Error(`Failed to generate size badge: ${err.message}`);
}
}
function createDirectory(dirName) {
const dir = `./${dirName}`;
if (!fs.existsSync(dir)){
fs.mkdirSync(dir);
}
}
async function main() {
createDirectory("img");
const packageJsonPath = '../../AISKU/package.json';
try {
const version = await getVersionFromPackageJson(packageJsonPath);
const filename = `../../AISKU/browser/es5/ai.${version}.js`;
const minFileName = `../../AISKU/browser/es5/ai.${version}.min.js`;

const fileSize = Math.ceil((await fsPromise.stat(filename)).size / 1024);
const minFileSize = Math.ceil((await fsPromise.stat(minFileName)).size / 1024);

const fileContent = await fsPromise.readFile(filename);
const gzippedContent = zlib.gzipSync(fileContent);
const gzippedSize = Math.ceil(gzippedContent.length / 1024);

await generateSizeBadge(version + ".js", fileSize);
await generateSizeBadge(version + ".min.js", minFileSize);
await generateSizeBadge(version + ".min.js.gzip", gzippedSize);

} catch (err) {
console.error('Error:', err);
}
}
main();

0 comments on commit 50d893a

Please sign in to comment.