@entro314labs/ai-changelog-generator 3.6.0 → 3.6.1

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.
package/manifest.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "manifest_version": "0.3",
3
3
  "name": "ai-changelog-generator",
4
4
  "display_name": "AI Changelog Generator",
5
- "version": "3.6.0",
5
+ "version": "3.6.1",
6
6
  "description": "AI-powered changelog generator with MCP server support - works with most providers, online and local models",
7
7
  "long_description": "Generate intelligent changelogs from git commits using AI. Supports multiple providers including OpenAI, Claude, Gemini, Ollama, and LM Studio. Perfect for automating release documentation with smart commit analysis and categorization.\n\nFeatures:\n- Automatic changelog generation from git commits\n- Working directory change analysis\n- Multiple AI provider support (OpenAI, Azure, Claude, Gemini, Ollama, LM Studio)\n- Interactive and batch modes\n- Repository health analysis\n- Branch analysis and recommendations\n- Commit categorization and impact assessment",
8
8
  "author": {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@entro314labs/ai-changelog-generator",
3
3
  "displayName": "AI Changelog Generator",
4
- "version": "3.6.0",
4
+ "version": "3.6.1",
5
5
  "type": "module",
6
6
  "description": "AI-powered changelog generator with MCP server support - works with most providers, online and local models",
7
7
  "main": "src/ai-changelog-generator.js",
@@ -144,7 +144,6 @@
144
144
  "test:mcp": "vitest run test/mcp.test.js",
145
145
  "test:styling": "vitest run test/cli-ui.test.js test/colors.test.js test/styling-integration.test.js",
146
146
  "test:styling-e2e": "vitest run test/cli-styling-e2e.test.js --testTimeout=60000",
147
- "test:legacy": "node test/test-runner.js comprehensive",
148
147
  "test:git": "node src/domains/git/git.service.js info",
149
148
  "setup": "node scripts/setup-azure-openai.js",
150
149
  "providers:test": "node test/test-providers.js",
@@ -212,7 +212,7 @@ export class ChangelogOrchestrator {
212
212
  await this.ensureInitialized()
213
213
 
214
214
  // Check for interactive environment
215
- if (!process.stdin.isTTY && !process.env.CI) {
215
+ if (!(process.stdin.isTTY || process.env.CI)) {
216
216
  console.log(colors.warningMessage('Interactive mode requires a TTY terminal.'))
217
217
  return { interactive: false, status: 'skipped' }
218
218
  }
@@ -36,10 +36,10 @@ export class WorkspaceChangelogService extends ChangelogService {
36
36
  const status = {
37
37
  staged: [],
38
38
  unstaged: [],
39
- untracked: []
39
+ untracked: [],
40
40
  }
41
41
 
42
- changes.forEach(change => {
42
+ changes.forEach((change) => {
43
43
  const statusCode = change.status || '??'
44
44
  if (statusCode.startsWith('??')) {
45
45
  status.untracked.push(change.filePath)
@@ -5,11 +5,11 @@
5
5
  * Provides Model Context Protocol interface for changelog generation
6
6
  */
7
7
 
8
+ import { execSync } from 'node:child_process'
8
9
  import fs from 'node:fs'
9
10
  import path, { dirname } from 'node:path'
10
11
  import process from 'node:process'
11
12
  import { fileURLToPath } from 'node:url'
12
- import { execSync } from 'node:child_process'
13
13
 
14
14
  import { Server } from '@modelcontextprotocol/sdk/server/index.js'
15
15
  import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js'
@@ -332,7 +332,7 @@ class AIChangelogMCPServer {
332
332
  source: 'working-directory',
333
333
  filesProcessed: result.filesProcessed,
334
334
  filesSkipped: result.filesSkipped,
335
- }
335
+ },
336
336
  }
337
337
  }
338
338
  } else {
@@ -346,8 +346,8 @@ class AIChangelogMCPServer {
346
346
  metadata: {
347
347
  version,
348
348
  since,
349
- source: 'commits'
350
- }
349
+ source: 'commits',
350
+ },
351
351
  }
352
352
  }
353
353
  }
@@ -391,7 +391,10 @@ class AIChangelogMCPServer {
391
391
 
392
392
  switch (analysisType) {
393
393
  case 'health':
394
- result = await this.changelogOrchestrator.gitService.assessRepositoryHealth(includeRecommendations)
394
+ result =
395
+ await this.changelogOrchestrator.gitService.assessRepositoryHealth(
396
+ includeRecommendations
397
+ )
395
398
  break
396
399
  case 'commits':
397
400
  result = await this.changelogOrchestrator.analysisEngine.analyzeRecentCommits(commitLimit)
@@ -1854,7 +1854,9 @@ export function handleUnifiedOutput(data, config) {
1854
1854
  }
1855
1855
  } else if (!silent) {
1856
1856
  if (dryRun && outputFile) {
1857
- console.log(colors.infoMessage(`[DRY RUN] Would save changelog to: ${colors.file(outputFile)}`))
1857
+ console.log(
1858
+ colors.infoMessage(`[DRY RUN] Would save changelog to: ${colors.file(outputFile)}`)
1859
+ )
1858
1860
  }
1859
1861
  console.log(jsonOutput)
1860
1862
  }
@@ -1876,7 +1878,9 @@ export function handleUnifiedOutput(data, config) {
1876
1878
  }
1877
1879
  } else if (!silent) {
1878
1880
  if (dryRun && outputFile) {
1879
- console.log(colors.infoMessage(`[DRY RUN] Would save changelog to: ${colors.file(outputFile)}`))
1881
+ console.log(
1882
+ colors.infoMessage(`[DRY RUN] Would save changelog to: ${colors.file(outputFile)}`)
1883
+ )
1880
1884
  }
1881
1885
  console.log(markdownOutput)
1882
1886
  }