From 337e8827679612bb6875648ef70100b385288a2d Mon Sep 17 00:00:00 2001 From: Geoff Seemueller Date: Sun, 1 Dec 2024 11:41:24 -0500 Subject: [PATCH] Switch from Bun's Glob to glob package for file operations Replaced Bun's `Glob` usage with the `glob` package in `MarkdownGenerator.ts` for better compatibility and functionality. Updated build entrypoints to include all TypeScript files and adjusted dependencies in `package.json` and `pnpm-lock.yaml` to accommodate this change. Also added type annotations to `fileExclusions` and `fileTypeExclusions` for improved type checking. --- build.ts | 2 +- bun.lockb | Bin 60754 -> 69970 bytes package.json | 9 ++++----- src/MarkdownGenerator.ts | 31 ++++++------------------------- src/fileExclusions.ts | 2 +- src/fileTypeExclusions.ts | 6 ++++-- 6 files changed, 16 insertions(+), 34 deletions(-) diff --git a/build.ts b/build.ts index 78cca37..76e68d2 100644 --- a/build.ts +++ b/build.ts @@ -2,7 +2,7 @@ import isolatedDecl from 'bun-plugin-isolated-decl'; // handles building the library await Bun.build({ - entrypoints: ['./src/index.ts'], + entrypoints: ['./src/*.ts'], outdir: './dist', target: 'node', plugins: [ diff --git a/bun.lockb b/bun.lockb index 1fc25a757332529fbc8515a524519c64c629cff7..87048869df8e11d2aec34fa1d6b907fa9316ee0a 100755 GIT binary patch delta 15546 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 delta 10066 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 F{{bHS#4-Q? diff --git a/package.json b/package.json index 1599848..d8e8f02 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "code-tokenizer-md", - "version": "1.1.2", + "version": "1.1.6", "type": "module", "main": "src/index.ts", "module": "src/index.ts", @@ -13,15 +13,13 @@ } }, "bin": { - "code-tokenizer-md": "./dist/code-tokenizer-md" + "code-tokenizer-md": "./dist/cli.js" }, "files": [ "dist" ], - "types": "", "scripts": { - "build": "rm -rf dist && bun ./build.ts && bun build:cli", - "build:cli": "bun build ./src/cli.ts --compile --outfile dist/code-tokenizer-md", + "build": "rm -rf dist && bun build ./src/index.ts ./src/cli.ts --outdir dist --target node && bun ./build.ts", "test": "bun test", "prepublishOnly": "bun run build", "dev": "bun run .", @@ -32,6 +30,7 @@ "fix": "bun format && bun lint:fix" }, "dependencies": { + "glob": "^11.0.0", "llama3-tokenizer-js": "^1.0.0", "micromatch": "^4.0.8" }, diff --git a/src/MarkdownGenerator.ts b/src/MarkdownGenerator.ts index 941b9fc..f969839 100644 --- a/src/MarkdownGenerator.ts +++ b/src/MarkdownGenerator.ts @@ -1,5 +1,3 @@ -// MarkdownGenerator.ts - import path from 'path'; import { execSync } from 'child_process'; import { readFile, writeFile } from 'fs/promises'; @@ -9,7 +7,7 @@ import * as micromatch from 'micromatch'; import fileTypeExclusions from './fileTypeExclusions.js'; import fileExclusions from './fileExclusions.js'; import { readFileSync } from 'node:fs'; -import { Glob } from 'bun'; +import { glob } from 'glob'; interface MarkdownGeneratorOptions { @@ -72,37 +70,19 @@ export class MarkdownGenerator { * @returns {Promise} * @throws {Error} When unable to read ignore files */ - /** - * Loads and processes .code-tokenizer-md-ignore files using ignore-walk. - * These files contain patterns for files to exclude from processing. - * @async - * @returns {Promise} - * @throws {Error} When unable to read ignore files - */ - /** - * Quickly loads patterns from .code-tokenizer-md-ignore files using Bun's native Glob. - * @async - * @returns {Promise} - */ async loadNestedIgnoreFiles(): Promise { try { if (this.verbose) { console.log('Loading ignore patterns...'); } - const ignoreGlob = new Glob("**/.code-tokenizer-md-ignore"); - const ignoreFiles: string[] = []; - - // Use Bun's native glob to find ignore files - for await (const file of ignoreGlob.scan({ + const ignoreFiles = await glob('**/.code-tokenizer-md-ignore', { cwd: this.dir, dot: true, absolute: true, - followSymlinks: false, - onlyFiles: true - })) { - ignoreFiles.push(file); - } + follow: false, + nodir: true + }); if (this.verbose) { console.log(`Found ${ignoreFiles.length} ignore files`); @@ -147,6 +127,7 @@ export class MarkdownGenerator { throw error; } } + /** * Retrieves a list of files tracked by Git, excluding those specified in fileTypeExclusions and fileExclusions. * @async diff --git a/src/fileExclusions.ts b/src/fileExclusions.ts index 779b117..895620a 100644 --- a/src/fileExclusions.ts +++ b/src/fileExclusions.ts @@ -69,4 +69,4 @@ export default [ '**/tmp/', '**/temp/', '**/*.log' -] \ No newline at end of file +] as const; \ No newline at end of file diff --git a/src/fileTypeExclusions.ts b/src/fileTypeExclusions.ts index b1d3ba0..b163138 100644 --- a/src/fileTypeExclusions.ts +++ b/src/fileTypeExclusions.ts @@ -1,4 +1,4 @@ -export default [ +const filetypeExclusions = [ // Images '.jpg', '.jpeg', @@ -57,4 +57,6 @@ export default [ '.db', '.sqlite', '.sqlite3' -] \ No newline at end of file +] as const; + +export default filetypeExclusions; \ No newline at end of file