repoburg 1.0.54 → 1.0.55

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1 @@
1
+ export declare function fuzzySearch(query: string, items: string[]): string[];
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.fuzzySearch = fuzzySearch;
4
+ function fuzzySearch(query, items) {
5
+ if (!query) {
6
+ return items;
7
+ }
8
+ const lowerCaseQuery = query.toLowerCase();
9
+ const rankedItems = items
10
+ .map((item) => {
11
+ const lowerCaseItem = item.toLowerCase();
12
+ let score = 0;
13
+ let consecutiveMatches = 0;
14
+ let lastMatchIndex = -1;
15
+ for (let i = 0; i < lowerCaseQuery.length; i++) {
16
+ const char = lowerCaseQuery[i];
17
+ const foundIndex = lowerCaseItem.indexOf(char, lastMatchIndex + 1);
18
+ if (foundIndex === -1) {
19
+ return null;
20
+ }
21
+ if (foundIndex === 0 ||
22
+ ['/', '\\', '_', '-', '.'].includes(lowerCaseItem[foundIndex - 1])) {
23
+ score += 15;
24
+ }
25
+ if (item[foundIndex] === query[i]) {
26
+ score += 5;
27
+ }
28
+ if (lastMatchIndex === foundIndex - 1) {
29
+ consecutiveMatches++;
30
+ score += 20 * consecutiveMatches;
31
+ }
32
+ else {
33
+ consecutiveMatches = 0;
34
+ }
35
+ score -= foundIndex - (lastMatchIndex + 1);
36
+ lastMatchIndex = foundIndex;
37
+ }
38
+ score -= item.length * 0.1;
39
+ return { item, score };
40
+ })
41
+ .filter((result) => result !== null);
42
+ rankedItems.sort((a, b) => b.score - a.score);
43
+ return rankedItems.map((result) => result.item);
44
+ }
45
+ //# sourceMappingURL=fuzzy-search.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fuzzy-search.js","sourceRoot":"","sources":["../../src/utils/fuzzy-search.ts"],"names":[],"mappings":";;AAAA,kCA8DC;AA9DD,SAAgB,WAAW,CAAC,KAAa,EAAE,KAAe;IACxD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,cAAc,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;IAE3C,MAAM,WAAW,GAAG,KAAK;SACtB,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACZ,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACzC,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,IAAI,kBAAkB,GAAG,CAAC,CAAC;QAC3B,IAAI,cAAc,GAAG,CAAC,CAAC,CAAC;QAExB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/C,MAAM,IAAI,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;YAC/B,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC,IAAI,EAAE,cAAc,GAAG,CAAC,CAAC,CAAC;YAEnE,IAAI,UAAU,KAAK,CAAC,CAAC,EAAE,CAAC;gBACtB,OAAO,IAAI,CAAC;YACd,CAAC;YAGD,IACE,UAAU,KAAK,CAAC;gBAChB,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,EAClE,CAAC;gBACD,KAAK,IAAI,EAAE,CAAC;YACd,CAAC;YAGD,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;gBAClC,KAAK,IAAI,CAAC,CAAC;YACb,CAAC;YAGD,IAAI,cAAc,KAAK,UAAU,GAAG,CAAC,EAAE,CAAC;gBACtC,kBAAkB,EAAE,CAAC;gBACrB,KAAK,IAAI,EAAE,GAAG,kBAAkB,CAAC;YACnC,CAAC;iBAAM,CAAC;gBACN,kBAAkB,GAAG,CAAC,CAAC;YACzB,CAAC;YAGD,KAAK,IAAI,UAAU,GAAG,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC;YAE3C,cAAc,GAAG,UAAU,CAAC;QAC9B,CAAC;QAGD,KAAK,IAAI,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC;QAE3B,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IACzB,CAAC,CAAC;SACD,MAAM,CACL,CAAC,MAAM,EAA6C,EAAE,CAAC,MAAM,KAAK,IAAI,CACvE,CAAC;IAGJ,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;IAE9C,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAClD,CAAC"}
@@ -0,0 +1 @@
1
+ export * from './fuzzy-search';
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./fuzzy-search"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iDAA+B"}
@@ -12,7 +12,7 @@ export declare class WorkspaceService {
12
12
  private fileTreeCacheTimestamp;
13
13
  private readonly CACHE_TTL_MS;
14
14
  constructor(contextGenerationService: ContextGenerationService);
15
- private getIgnorePatterns;
15
+ private getFilesFromRg;
16
16
  private resolveAndValidatePath;
17
17
  validatePaths(paths: {
18
18
  files?: string[];
@@ -12,10 +12,13 @@ var WorkspaceService_1;
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
13
  exports.WorkspaceService = void 0;
14
14
  const common_1 = require("@nestjs/common");
15
- const glob_1 = require("glob");
16
15
  const context_generation_service_1 = require("../context-generation/context-generation.service");
17
16
  const fs = require("fs/promises");
18
17
  const path = require("path");
18
+ const utils_1 = require("../utils");
19
+ const child_process_1 = require("child_process");
20
+ const util_1 = require("util");
21
+ const execAsync = (0, util_1.promisify)(child_process_1.exec);
19
22
  let WorkspaceService = WorkspaceService_1 = class WorkspaceService {
20
23
  constructor(contextGenerationService) {
21
24
  this.contextGenerationService = contextGenerationService;
@@ -25,52 +28,26 @@ let WorkspaceService = WorkspaceService_1 = class WorkspaceService {
25
28
  this.fileTreeCacheTimestamp = null;
26
29
  this.CACHE_TTL_MS = 5 * 60 * 1000;
27
30
  }
28
- async getIgnorePatterns() {
29
- const baseIgnorePatterns = [
30
- '**/node_modules/**',
31
- '**/.git/**',
32
- '**/dist/**',
33
- '**/coverage/**',
34
- '**/.next/**',
35
- '**/data.json',
36
- '**/.DS_Store',
37
- ];
38
- let gitignorePatterns = [];
31
+ async getFilesFromRg() {
32
+ const rgCommand = await this.contextGenerationService.getCommandPath('rg');
33
+ const command = `${rgCommand} --files --hidden --glob '!.git'`;
39
34
  try {
40
- const gitignorePath = path.join(this.projectRoot, '.gitignore');
41
- const gitignoreContent = await fs.readFile(gitignorePath, 'utf-8');
42
- gitignorePatterns = gitignoreContent.split('\n').flatMap((line) => {
43
- const trimmed = line.trim();
44
- if (!trimmed || trimmed.startsWith('#') || trimmed.startsWith('!')) {
45
- return [];
46
- }
47
- let pattern = trimmed;
48
- const isDir = pattern.endsWith('/');
49
- if (isDir) {
50
- pattern = pattern.slice(0, -1);
51
- }
52
- if (pattern.startsWith('/')) {
53
- pattern = pattern.substring(1);
54
- }
55
- else if (!pattern.includes('/')) {
56
- pattern = `**/${pattern}`;
57
- }
58
- if (isDir || !path.extname(pattern)) {
59
- return [pattern, `${pattern}/**`];
60
- }
61
- return [pattern];
35
+ this.logger.log(`Executing for file list: ${command}`);
36
+ const { stdout } = await execAsync(command, {
37
+ cwd: this.projectRoot,
38
+ maxBuffer: 256 * 1024 * 1024,
39
+ timeout: 10000,
62
40
  });
63
- this.logger.log(`Loaded ${gitignorePatterns.length} glob patterns from .gitignore`);
41
+ return stdout.trim().split('\n').filter(Boolean);
64
42
  }
65
43
  catch (error) {
66
- if (error.code === 'ENOENT') {
67
- this.logger.log('.gitignore not found, using default ignore patterns.');
68
- }
69
- else {
70
- this.logger.warn(`Error reading .gitignore: ${error.message}`);
44
+ if (error.code === 1 && error.stdout === '' && error.stderr === '') {
45
+ this.logger.log('rg --files returned no files.');
46
+ return [];
71
47
  }
48
+ this.logger.error(`Failed to get file list from rg: ${error.message}`, error.stack);
49
+ throw new Error(`Could not retrieve file list from RipGrep. Is 'rg' installed and in your PATH?`);
72
50
  }
73
- return [...baseIgnorePatterns, ...gitignorePatterns];
74
51
  }
75
52
  resolveAndValidatePath(unsafePath) {
76
53
  const normalizedPath = path.normalize(unsafePath);
@@ -109,21 +86,17 @@ let WorkspaceService = WorkspaceService_1 = class WorkspaceService {
109
86
  this.logger.log('Returning file tree from cache.');
110
87
  return this.fileTreeCache;
111
88
  }
112
- this.logger.log(`Scanning project root for file tree: ${this.projectRoot}`);
89
+ this.logger.log(`Scanning project root for file tree with rg: ${this.projectRoot}`);
113
90
  try {
114
- const ignorePatterns = await this.getIgnorePatterns();
115
- const files = await (0, glob_1.glob)('**/*', {
116
- cwd: this.projectRoot,
117
- nodir: true,
118
- ignore: ignorePatterns,
119
- dot: true,
120
- });
121
- const allDirs = await (0, glob_1.glob)('**/', {
122
- cwd: this.projectRoot,
123
- ignore: ignorePatterns,
124
- dot: true,
91
+ const files = await this.getFilesFromRg();
92
+ const folderSet = new Set();
93
+ files.forEach((file) => {
94
+ const parts = file.split(path.sep);
95
+ for (let i = 1; i < parts.length; i++) {
96
+ folderSet.add(parts.slice(0, i).join(path.sep));
97
+ }
125
98
  });
126
- const folders = allDirs.map((d) => d.replace(/\/$/, '')).filter((d) => d);
99
+ const folders = Array.from(folderSet);
127
100
  this.logger.log(`Found ${files.length} files and ${folders.length} folders.`);
128
101
  this.fileTreeCache = { files, folders };
129
102
  this.fileTreeCacheTimestamp = now;
@@ -141,47 +114,31 @@ let WorkspaceService = WorkspaceService_1 = class WorkspaceService {
141
114
  }
142
115
  async search(query, type, page, limit) {
143
116
  this.logger.log(`Searching for "${query}" (type: ${type})`);
144
- const ignorePatterns = await this.getIgnorePatterns();
145
- const globOptions = {
146
- cwd: this.projectRoot,
147
- ignore: ignorePatterns,
148
- dot: true,
149
- };
150
- const globPattern = `**/*${query}*`;
151
- const allMatches = await (0, glob_1.glob)(globPattern, {
152
- ...globOptions,
153
- mark: true,
154
- nocase: true,
155
- });
156
- let results = [];
117
+ const { files, folders } = await this.getFileTree();
118
+ let searchPool = [];
157
119
  if (type === 'all') {
158
- results = allMatches.map((p) => ({
159
- type: p.endsWith('/') ? 'folder' : 'file',
160
- path: p.endsWith('/') ? p.slice(0, -1) : p,
161
- }));
120
+ searchPool = [
121
+ ...files.map((p) => ({ path: p, type: 'file' })),
122
+ ...folders.map((p) => ({ path: p, type: 'folder' })),
123
+ ];
162
124
  }
163
125
  else if (type === 'files') {
164
- results = allMatches
165
- .filter((p) => !p.endsWith('/'))
166
- .map((p) => ({ type: 'file', path: p }));
126
+ searchPool = files.map((p) => ({ path: p, type: 'file' }));
167
127
  }
168
128
  else if (type === 'folders') {
169
- results = allMatches
170
- .filter((p) => p.endsWith('/'))
171
- .map((p) => ({ type: 'folder', path: p.slice(0, -1) }));
129
+ searchPool = folders.map((p) => ({ path: p, type: 'folder' }));
172
130
  }
173
- results.sort((a, b) => {
174
- if (a.type === 'folder' && b.type === 'file')
175
- return -1;
176
- if (a.type === 'file' && b.type === 'folder')
177
- return 1;
178
- return a.path.localeCompare(b.path);
179
- });
131
+ const searchPoolStrings = searchPool.map((item) => item.path);
132
+ const matchedPaths = (0, utils_1.fuzzySearch)(query, searchPoolStrings);
133
+ const matchedPathSet = new Set(matchedPaths);
134
+ const results = searchPool
135
+ .filter((item) => matchedPathSet.has(item.path))
136
+ .sort((a, b) => matchedPaths.indexOf(a.path) - matchedPaths.indexOf(b.path));
180
137
  const total = results.length;
181
138
  const startIndex = (page - 1) * limit;
182
139
  const endIndex = page * limit;
183
140
  const paginatedResults = results.slice(startIndex, endIndex);
184
- this.logger.log(`Search for "${query}" (type: ${type}) with glob found ${total} total results. Returning page ${page} with ${paginatedResults.length} items.`);
141
+ this.logger.log(`Search for "${query}" (type: ${type}) found ${total} total results. Returning page ${page} with ${paginatedResults.length} items.`);
185
142
  return {
186
143
  results: paginatedResults,
187
144
  total,
@@ -1 +1 @@
1
- {"version":3,"file":"workspace.service.js","sourceRoot":"","sources":["../../src/workspace/workspace.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workspace.service.js","sourceRoot":"","sources":["../../src/workspace/workspace.service.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@
9
9
  "build": "nest build",
10
10
  "format": "prettier --write \"src/**/*.ts\" \"test/**/*.ts\"",
11
11
  "start": "nest start",
12
+ "start2": "NODE_ENV=production nest start",
12
13
  "start:dev": "nest start --watch",
13
14
  "start:debug": "nest start --debug --watch",
14
15
  "start:prod": "NODE_ENV=production node dist/main",
@@ -29,7 +30,6 @@
29
30
  "@nestjs/schematics": "^10.0.0",
30
31
  "@nestjs/testing": "^10.0.0",
31
32
  "@types/express": "^4.17.17",
32
- "@types/glob": "^8.1.0",
33
33
  "@types/jest": "^29.5.2",
34
34
  "@types/multer": "^1.4.11",
35
35
  "@types/node": "^20.3.1",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "repoburg",
3
- "version": "1.0.54",
3
+ "version": "1.0.55",
4
4
  "description": "A local AI-powered software developer assistant that runs on your own machine.",
5
5
  "author": "Celal Ertug",
6
6
  "license": "SEE LICENSE IN LICENSE",