From 43b8149378b830ccbc5d7801442e1e3c9393f325 Mon Sep 17 00:00:00 2001 From: BCsabaEngine Date: Mon, 19 Aug 2024 20:28:09 +0200 Subject: [PATCH 1/9] feat: force duplicate a file --- demo/svelte/dist/favicon.png.gz | Bin 0 -> 33249 bytes demo/svelte/package-lock.json | 88 ++++++++++++++++---------------- demo/svelte/package.json | 6 +-- 3 files changed, 47 insertions(+), 47 deletions(-) create mode 100644 demo/svelte/dist/favicon.png.gz diff --git a/demo/svelte/dist/favicon.png.gz b/demo/svelte/dist/favicon.png.gz new file mode 100644 index 0000000000000000000000000000000000000000..65f7d57e44b2795f9bebd6968b335da491828e37 GIT binary patch literal 33249 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 literal 0 HcmV?d00001 diff --git a/demo/svelte/package-lock.json b/demo/svelte/package-lock.json index 48a2ef0..88f899b 100644 --- a/demo/svelte/package-lock.json +++ b/demo/svelte/package-lock.json @@ -11,8 +11,8 @@ "@rollup/plugin-swc": "^0.3.1", "@sveltejs/vite-plugin-svelte": "^3.1.1", "@tsconfig/svelte": "^5.0.4", - "@typescript-eslint/eslint-plugin": "^8.1.0", - "@typescript-eslint/parser": "^8.1.0", + "@typescript-eslint/eslint-plugin": "^8.2.0", + "@typescript-eslint/parser": "^8.2.0", "autoprefixer": "^10.4.20", "eslint": "^9.9.0", "eslint-config-prettier": "^9.1.0", @@ -1494,17 +1494,17 @@ "license": "MIT" }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.1.0.tgz", - "integrity": "sha512-LlNBaHFCEBPHyD4pZXb35mzjGkuGKXU5eeCA1SxvHfiRES0E82dOounfVpL4DCqYvJEKab0bZIA0gCRpdLKkCw==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.2.0.tgz", + "integrity": "sha512-02tJIs655em7fvt9gps/+4k4OsKULYGtLBPJfOsmOq1+3cdClYiF0+d6mHu6qDnTcg88wJBkcPLpQhq7FyDz0A==", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.1.0", - "@typescript-eslint/type-utils": "8.1.0", - "@typescript-eslint/utils": "8.1.0", - "@typescript-eslint/visitor-keys": "8.1.0", + "@typescript-eslint/scope-manager": "8.2.0", + "@typescript-eslint/type-utils": "8.2.0", + "@typescript-eslint/utils": "8.2.0", + "@typescript-eslint/visitor-keys": "8.2.0", "graphemer": "^1.4.0", "ignore": "^5.3.1", "natural-compare": "^1.4.0", @@ -1528,16 +1528,16 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.1.0.tgz", - "integrity": "sha512-U7iTAtGgJk6DPX9wIWPPOlt1gO57097G06gIcl0N0EEnNw8RGD62c+2/DiP/zL7KrkqnnqF7gtFGR7YgzPllTA==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.2.0.tgz", + "integrity": "sha512-j3Di+o0lHgPrb7FxL3fdEy6LJ/j2NE8u+AP/5cQ9SKb+JLH6V6UHDqJ+e0hXBkHP1wn1YDFjYCS9LBQsZDlDEg==", "dev": true, "license": "BSD-2-Clause", "dependencies": { - "@typescript-eslint/scope-manager": "8.1.0", - "@typescript-eslint/types": "8.1.0", - "@typescript-eslint/typescript-estree": "8.1.0", - "@typescript-eslint/visitor-keys": "8.1.0", + "@typescript-eslint/scope-manager": "8.2.0", + "@typescript-eslint/types": "8.2.0", + "@typescript-eslint/typescript-estree": "8.2.0", + "@typescript-eslint/visitor-keys": "8.2.0", "debug": "^4.3.4" }, "engines": { @@ -1557,14 +1557,14 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.1.0.tgz", - "integrity": "sha512-DsuOZQji687sQUjm4N6c9xABJa7fjvfIdjqpSIIVOgaENf2jFXiM9hIBZOL3hb6DHK9Nvd2d7zZnoMLf9e0OtQ==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.2.0.tgz", + "integrity": "sha512-OFn80B38yD6WwpoHU2Tz/fTz7CgFqInllBoC3WP+/jLbTb4gGPTy9HBSTsbDWkMdN55XlVU0mMDYAtgvlUspGw==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.1.0", - "@typescript-eslint/visitor-keys": "8.1.0" + "@typescript-eslint/types": "8.2.0", + "@typescript-eslint/visitor-keys": "8.2.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1575,14 +1575,14 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.1.0.tgz", - "integrity": "sha512-oLYvTxljVvsMnldfl6jIKxTaU7ok7km0KDrwOt1RHYu6nxlhN3TIx8k5Q52L6wR33nOwDgM7VwW1fT1qMNfFIA==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.2.0.tgz", + "integrity": "sha512-g1CfXGFMQdT5S+0PSO0fvGXUaiSkl73U1n9LTK5aRAFnPlJ8dLKkXr4AaLFvPedW8lVDoMgLLE3JN98ZZfsj0w==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/typescript-estree": "8.1.0", - "@typescript-eslint/utils": "8.1.0", + "@typescript-eslint/typescript-estree": "8.2.0", + "@typescript-eslint/utils": "8.2.0", "debug": "^4.3.4", "ts-api-utils": "^1.3.0" }, @@ -1600,9 +1600,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.1.0.tgz", - "integrity": "sha512-q2/Bxa0gMOu/2/AKALI0tCKbG2zppccnRIRCW6BaaTlRVaPKft4oVYPp7WOPpcnsgbr0qROAVCVKCvIQ0tbWog==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.2.0.tgz", + "integrity": "sha512-6a9QSK396YqmiBKPkJtxsgZZZVjYQ6wQ/TlI0C65z7vInaETuC6HAHD98AGLC8DyIPqHytvNuS8bBVvNLKyqvQ==", "dev": true, "license": "MIT", "engines": { @@ -1614,14 +1614,14 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.1.0.tgz", - "integrity": "sha512-NTHhmufocEkMiAord/g++gWKb0Fr34e9AExBRdqgWdVBaKoei2dIyYKD9Q0jBnvfbEA5zaf8plUFMUH6kQ0vGg==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.2.0.tgz", + "integrity": "sha512-kiG4EDUT4dImplOsbh47B1QnNmXSoUqOjWDvCJw/o8LgfD0yr7k2uy54D5Wm0j4t71Ge1NkynGhpWdS0dEIAUA==", "dev": true, "license": "BSD-2-Clause", "dependencies": { - "@typescript-eslint/types": "8.1.0", - "@typescript-eslint/visitor-keys": "8.1.0", + "@typescript-eslint/types": "8.2.0", + "@typescript-eslint/visitor-keys": "8.2.0", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -1643,16 +1643,16 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.1.0.tgz", - "integrity": "sha512-ypRueFNKTIFwqPeJBfeIpxZ895PQhNyH4YID6js0UoBImWYoSjBsahUn9KMiJXh94uOjVBgHD9AmkyPsPnFwJA==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.2.0.tgz", + "integrity": "sha512-O46eaYKDlV3TvAVDNcoDzd5N550ckSe8G4phko++OCSC1dYIb9LTc3HDGYdWqWIAT5qDUKphO6sd9RrpIJJPfg==", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", - "@typescript-eslint/scope-manager": "8.1.0", - "@typescript-eslint/types": "8.1.0", - "@typescript-eslint/typescript-estree": "8.1.0" + "@typescript-eslint/scope-manager": "8.2.0", + "@typescript-eslint/types": "8.2.0", + "@typescript-eslint/typescript-estree": "8.2.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1666,13 +1666,13 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.1.0.tgz", - "integrity": "sha512-ba0lNI19awqZ5ZNKh6wCModMwoZs457StTebQ0q1NP58zSi2F6MOZRXwfKZy+jB78JNJ/WH8GSh2IQNzXX8Nag==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.2.0.tgz", + "integrity": "sha512-sbgsPMW9yLvS7IhCi8IpuK1oBmtbWUNP+hBdwl/I9nzqVsszGnNGti5r9dUtF5RLivHUFFIdRvLiTsPhzSyJ3Q==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.1.0", + "@typescript-eslint/types": "8.2.0", "eslint-visitor-keys": "^3.4.3" }, "engines": { diff --git a/demo/svelte/package.json b/demo/svelte/package.json index 6a1b085..244e793 100644 --- a/demo/svelte/package.json +++ b/demo/svelte/package.json @@ -9,7 +9,7 @@ }, "scripts": { "dev": "vite dev --host", - "build": "vite build", + "build": "vite build && cp ./dist/favicon.png ./dist/favicon.png.gz", "preview": "vite preview", "test": "npm run test:integration && npm run test:unit", "ts:check": "svelte-check --tsconfig ./tsconfig.json", @@ -23,8 +23,8 @@ "@rollup/plugin-swc": "^0.3.1", "@sveltejs/vite-plugin-svelte": "^3.1.1", "@tsconfig/svelte": "^5.0.4", - "@typescript-eslint/eslint-plugin": "^8.1.0", - "@typescript-eslint/parser": "^8.1.0", + "@typescript-eslint/eslint-plugin": "^8.2.0", + "@typescript-eslint/parser": "^8.2.0", "autoprefixer": "^10.4.20", "eslint": "^9.9.0", "eslint-config-prettier": "^9.1.0", From f50d2b8276efbc32926da56e618fa298db59cf64 Mon Sep 17 00:00:00 2001 From: BCsabaEngine Date: Mon, 19 Aug 2024 20:34:46 +0200 Subject: [PATCH 2/9] feat: coderabbit --- .coderabbit.yaml | 75 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 .coderabbit.yaml diff --git a/.coderabbit.yaml b/.coderabbit.yaml new file mode 100644 index 0000000..9add0bd --- /dev/null +++ b/.coderabbit.yaml @@ -0,0 +1,75 @@ +language: en-US +tone_instructions: '' +early_access: false +enable_free_tier: true +reviews: + profile: chill + request_changes_workflow: false + high_level_summary: true + high_level_summary_placeholder: '@coderabbitai summary' + auto_title_placeholder: '@coderabbitai' + review_status: true + poem: true + collapse_walkthrough: false + sequence_diagrams: true + path_filters: [] + path_instructions: [] + abort_on_close: true + auto_review: + enabled: true + auto_incremental_review: true + ignore_title_keywords: [] + labels: [] + drafts: false + base_branches: [] + tools: + shellcheck: + enabled: true + ruff: + enabled: true + markdownlint: + enabled: true + github-checks: + enabled: true + timeout_ms: 90000 + languagetool: + enabled: true + enabled_only: false + level: default + biome: + enabled: true + hadolint: + enabled: true + swiftlint: + enabled: true + phpstan: + enabled: true + level: default + golangci-lint: + enabled: true + yamllint: + enabled: true + gitleaks: + enabled: true + checkov: + enabled: true + detekt: + enabled: true + eslint: + enabled: true + rubocop: + enabled: true + buf: + enabled: true +chat: + auto_reply: true +knowledge_base: + opt_out: false + learnings: + scope: auto + issues: + scope: auto + jira: + project_keys: [] + linear: + team_keys: [] From d12da4147127b41f7322573b092d7e3f81d49c18 Mon Sep 17 00:00:00 2001 From: BCsabaEngine Date: Mon, 19 Aug 2024 21:14:42 +0200 Subject: [PATCH 3/9] fix: svelte demo app --- demo/svelte/dist/favicon.png.gz | Bin 33249 -> 33290 bytes demo/svelte/dist/gallery/image-1a.jpg | Bin 0 -> 21191 bytes demo/svelte/package.json | 2 +- 3 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 demo/svelte/dist/gallery/image-1a.jpg diff --git a/demo/svelte/dist/favicon.png.gz b/demo/svelte/dist/favicon.png.gz index 65f7d57e44b2795f9bebd6968b335da491828e37..8e969cf2a13763f7b1748bc4cad3a150a864a4ed 100644 GIT binary patch delta 16691 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

={)O{|&4Ri#DAg$NkE!DZ+`|5b^KxM$`FTDJ6 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 ZrTT#T6IU0{#N@^xTzQEMZ?n6AM*(Pbe>ngE diff --git a/demo/svelte/dist/gallery/image-1a.jpg b/demo/svelte/dist/gallery/image-1a.jpg new file mode 100644 index 0000000000000000000000000000000000000000..bd4ff1fc333611daccb54de857c05603d583e1e5 GIT binary patch literal 21191 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 R1)>UyRnG+beZNBQ|Jg5We?tHO literal 0 HcmV?d00001 diff --git a/demo/svelte/package.json b/demo/svelte/package.json index 244e793..426be92 100644 --- a/demo/svelte/package.json +++ b/demo/svelte/package.json @@ -9,7 +9,7 @@ }, "scripts": { "dev": "vite dev --host", - "build": "vite build && cp ./dist/favicon.png ./dist/favicon.png.gz", + "build": "vite build && gzip -c ./dist/favicon.png > ./dist/favicon.png.gz && cp ./dist/gallery/image-1.jpg ./dist/gallery/image-1a.jpg", "preview": "vite preview", "test": "npm run test:integration && npm run test:unit", "ts:check": "svelte-check --tsconfig ./tsconfig.json", From 31a4ba3827a3d5d15bbdfbe9cd1cd4d06b8c8c81 Mon Sep 17 00:00:00 2001 From: BCsabaEngine Date: Mon, 19 Aug 2024 21:15:03 +0200 Subject: [PATCH 4/9] feat: check duplicate files --- src/consoleColor.ts | 6 +++--- src/file.ts | 33 +++++++++++++++++++++++++++------ src/index.ts | 21 ++++++++++++--------- 3 files changed, 42 insertions(+), 18 deletions(-) diff --git a/src/consoleColor.ts b/src/consoleColor.ts index d8dd72e..311f2b2 100644 --- a/src/consoleColor.ts +++ b/src/consoleColor.ts @@ -1,5 +1,5 @@ -export const greenLog = (s: string): string => `\u001B[32m ${s} \u001B[0m`; +export const greenLog = (s: string): string => `\u001B[32m${s}\u001B[0m`; -export const yellowLog = (s: string): string => `\u001B[33m ${s} \u001B[0m`; +export const yellowLog = (s: string): string => `\u001B[33m${s}\u001B[0m`; -export const redLog = (s: string): string => `\u001B[31m ${s} \u001B[0m`; +export const redLog = (s: string): string => `\u001B[31m${s}\u001B[0m`; diff --git a/src/file.ts b/src/file.ts index fb76143..19036f2 100644 --- a/src/file.ts +++ b/src/file.ts @@ -1,22 +1,43 @@ +import { createHash } from 'node:crypto'; +import { readFileSync } from 'node:fs'; import path from 'node:path'; import { globSync } from 'glob'; import { cmdLine } from './commandLine'; -import { redLog } from './consoleColor'; +import { redLog, yellowLog } from './consoleColor'; -export const getFiles = (): string[] => { - let files = globSync('**/*', { cwd: cmdLine.sourcepath, nodir: true }); - files = files.filter((filename) => { +const findSimilarFiles = (files: Map): string[][] => { + const contentComparer: Map = new Map(); + for (const [filename, content] of files.entries()) { + const hash = createHash('md5').update(content.toString()).digest('hex'); + if (contentComparer.has(hash)) contentComparer.get(hash)!.push(filename); + else contentComparer.set(hash, [filename]); + } + + const result: string[][] = []; + for (const filenames of contentComparer.values()) if (filenames.length > 1) result.push(filenames); + return result; +}; + +export const getFiles = (): Map => { + let filenames = globSync('**/*', { cwd: cmdLine.sourcepath, nodir: true }); + filenames = filenames.filter((filename) => { const extension = path.extname(filename); if (['.gz', '.brottli', '.br'].includes(extension)) { const original = filename.slice(0, -1 * extension.length); - if (files.includes(original)) { + if (filenames.includes(original)) { console.log(redLog(`${filename} skipped because is perhaps a compressed version of ${original}`)); return false; } } return true; }); - return files.sort(); + + const result: Map = new Map(); + for (const filename of filenames) + result.set(filename, readFileSync(path.join(cmdLine.sourcepath, filename), { flag: 'r' })); + for (const sameFile of findSimilarFiles(result)) + console.log(yellowLog(`${sameFile.join(', ')} files look like identical`)); + return result; }; diff --git a/src/index.ts b/src/index.ts index 3a783ad..0ffa2fb 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,6 +1,6 @@ /* eslint-disable unicorn/prefer-string-replace-all */ import { createHash } from 'node:crypto'; -import { mkdirSync, readFileSync, writeFileSync } from 'node:fs'; +import { mkdirSync, writeFileSync } from 'node:fs'; import path from 'node:path'; import { gzipSync } from 'node:zlib'; @@ -19,18 +19,22 @@ const summary = { const sources: CppCodeSources = []; const filesByExtension: ExtensionGroups = []; + +console.log('Collecting source files'); const files = getFiles(); -if (files.length === 0) { +if (files.size === 0) { console.error(`Directory ${cmdLine.sourcepath} is empty`); process.exit(1); } -const rightPad = files.reduce((p, c) => (c.length > p ? c.length : p), 0); -for (const file of files) { - const mime = lookup(file) || 'text/plain'; +console.log(); +console.log('Translation to header file'); +const longestFilename = [...files.keys()].reduce((p, c) => (c.length > p ? c.length : p), 0); +for (const [originalFilename, content] of files) { + const mime = lookup(originalFilename) || 'text/plain'; summary.filecount++; - const filename = file.replace(/\\/g, '/'); + const filename = originalFilename.replace(/\\/g, '/'); const dataname = filename.replace(/[./-]/g, '_'); let extension = path.extname(filename).toUpperCase(); if (extension.startsWith('.')) extension = extension.slice(1); @@ -39,7 +43,6 @@ for (const file of files) { if (group) group.count += 1; else filesByExtension.push({ extension, count: 1 }); - const content = readFileSync(path.join(cmdLine.sourcepath, file), { flag: 'r' }); const md5 = createHash('md5').update(content).digest('hex'); summary.size += content.length; const zipContent = gzipSync(content, { level: 9 }); @@ -58,7 +61,7 @@ for (const file of files) { }); console.log( greenLog( - `[${file}] ${' '.repeat(rightPad - file.length)} ✓ gzip used (${content.length} -> ${zipContent.length} = ${zipRatio}%)` + `[${originalFilename}] ${' '.repeat(longestFilename - originalFilename.length)} ✓ gzip used (${content.length} -> ${zipContent.length} = ${zipRatio}%)` ) ); } else { @@ -74,7 +77,7 @@ for (const file of files) { }); console.log( yellowLog( - `[${file}] ${' '.repeat(rightPad - file.length)} x gzip unused ${content.length <= 1024 ? `(too small) ` : ''}(${content.length} -> ${zipContent.length} = ${zipRatio}%)` + `[${originalFilename}] ${' '.repeat(longestFilename - originalFilename.length)} x gzip unused ${content.length <= 1024 ? `(too small) ` : ''}(${content.length} -> ${zipContent.length} = ${zipRatio}%)` ) ); } From 7515d68403a370f0bcf6a61547d397d615a040fc Mon Sep 17 00:00:00 2001 From: BCsabaEngine Date: Mon, 19 Aug 2024 21:20:32 +0200 Subject: [PATCH 5/9] fix: more secure hash --- src/file.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/file.ts b/src/file.ts index 19036f2..53deac7 100644 --- a/src/file.ts +++ b/src/file.ts @@ -10,7 +10,7 @@ import { redLog, yellowLog } from './consoleColor'; const findSimilarFiles = (files: Map): string[][] => { const contentComparer: Map = new Map(); for (const [filename, content] of files.entries()) { - const hash = createHash('md5').update(content.toString()).digest('hex'); + const hash = createHash('sha256').update(content).digest('hex'); if (contentComparer.has(hash)) contentComparer.get(hash)!.push(filename); else contentComparer.set(hash, [filename]); } From edc4c2cb8fe0de3c2b5c10ac93c2ec31703b4de5 Mon Sep 17 00:00:00 2001 From: BCsabaEngine Date: Mon, 19 Aug 2024 21:24:04 +0200 Subject: [PATCH 6/9] chore: assertive rabbit --- .coderabbit.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.coderabbit.yaml b/.coderabbit.yaml index 9add0bd..c6d6e0d 100644 --- a/.coderabbit.yaml +++ b/.coderabbit.yaml @@ -3,7 +3,7 @@ tone_instructions: '' early_access: false enable_free_tier: true reviews: - profile: chill + profile: assertive request_changes_workflow: false high_level_summary: true high_level_summary_placeholder: '@coderabbitai summary' From da600642828933ceac136bac32c73f55283f258f Mon Sep 17 00:00:00 2001 From: BCsabaEngine Date: Mon, 19 Aug 2024 21:30:21 +0200 Subject: [PATCH 7/9] chore: un-poem rabbit --- .coderabbit.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.coderabbit.yaml b/.coderabbit.yaml index c6d6e0d..7bd39c2 100644 --- a/.coderabbit.yaml +++ b/.coderabbit.yaml @@ -9,7 +9,7 @@ reviews: high_level_summary_placeholder: '@coderabbitai summary' auto_title_placeholder: '@coderabbitai' review_status: true - poem: true + poem: false collapse_walkthrough: false sequence_diagrams: true path_filters: [] From 2f3627260fab27c0efaa01fb3db8533294eb68ca Mon Sep 17 00:00:00 2001 From: BCsabaEngine Date: Mon, 19 Aug 2024 21:34:42 +0200 Subject: [PATCH 8/9] chore: typo --- demo/esp32/src/main.cpp | 4 ++-- src/file.ts | 4 ++-- src/index.ts | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/demo/esp32/src/main.cpp b/demo/esp32/src/main.cpp index 8c298a4..c098bab 100644 --- a/demo/esp32/src/main.cpp +++ b/demo/esp32/src/main.cpp @@ -6,7 +6,7 @@ #include #include "svelteesp32async.h" -#if SVELTEESP32_COUNT != 10 +#if SVELTEESP32_COUNT != 11 #error Invalid file count #endif @@ -40,7 +40,7 @@ void loop() {} #include #include "svelteesp32psychic.h" -#if SVELTEESP32_COUNT != 10 +#if SVELTEESP32_COUNT != 11 #error Invalid file count #endif diff --git a/src/file.ts b/src/file.ts index 53deac7..6a73b6f 100644 --- a/src/file.ts +++ b/src/file.ts @@ -27,7 +27,7 @@ export const getFiles = (): Map => { if (['.gz', '.brottli', '.br'].includes(extension)) { const original = filename.slice(0, -1 * extension.length); if (filenames.includes(original)) { - console.log(redLog(`${filename} skipped because is perhaps a compressed version of ${original}`)); + console.log(redLog(` ${filename} skipped because is perhaps a compressed version of ${original}`)); return false; } } @@ -38,6 +38,6 @@ export const getFiles = (): Map => { for (const filename of filenames) result.set(filename, readFileSync(path.join(cmdLine.sourcepath, filename), { flag: 'r' })); for (const sameFile of findSimilarFiles(result)) - console.log(yellowLog(`${sameFile.join(', ')} files look like identical`)); + console.log(yellowLog(` ${sameFile.join(', ')} files look like identical`)); return result; }; diff --git a/src/index.ts b/src/index.ts index 0ffa2fb..8992c70 100644 --- a/src/index.ts +++ b/src/index.ts @@ -61,7 +61,7 @@ for (const [originalFilename, content] of files) { }); console.log( greenLog( - `[${originalFilename}] ${' '.repeat(longestFilename - originalFilename.length)} ✓ gzip used (${content.length} -> ${zipContent.length} = ${zipRatio}%)` + ` [${originalFilename}] ${' '.repeat(longestFilename - originalFilename.length)} ✓ gzip used (${content.length} -> ${zipContent.length} = ${zipRatio}%)` ) ); } else { @@ -77,7 +77,7 @@ for (const [originalFilename, content] of files) { }); console.log( yellowLog( - `[${originalFilename}] ${' '.repeat(longestFilename - originalFilename.length)} x gzip unused ${content.length <= 1024 ? `(too small) ` : ''}(${content.length} -> ${zipContent.length} = ${zipRatio}%)` + ` [${originalFilename}] ${' '.repeat(longestFilename - originalFilename.length)} x gzip unused ${content.length <= 1024 ? `(too small) ` : ''}(${content.length} -> ${zipContent.length} = ${zipRatio}%)` ) ); } From 0ae0b823a691d11dc810d78df4f6e2290905b30e Mon Sep 17 00:00:00 2001 From: BCsabaEngine Date: Mon, 19 Aug 2024 22:01:10 +0200 Subject: [PATCH 9/9] chore: chill rabbit --- .coderabbit.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.coderabbit.yaml b/.coderabbit.yaml index 7bd39c2..1b5bfa1 100644 --- a/.coderabbit.yaml +++ b/.coderabbit.yaml @@ -3,7 +3,7 @@ tone_instructions: '' early_access: false enable_free_tier: true reviews: - profile: assertive + profile: chill request_changes_workflow: false high_level_summary: true high_level_summary_placeholder: '@coderabbitai summary'