bmad-method 4.6.1 → 4.6.2

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/CHANGELOG.md CHANGED
@@ -1,3 +1,10 @@
1
+ ## [4.6.2](https://github.com/bmadcode/BMAD-METHOD/compare/v4.6.1...v4.6.2) (2025-06-19)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * installer upgrade path fixed ([bd6a558](https://github.com/bmadcode/BMAD-METHOD/commit/bd6a55892906077a700f488bde175b57e846729d))
7
+
1
8
  ## [4.6.1](https://github.com/bmadcode/BMAD-METHOD/compare/v4.6.0...v4.6.1) (2025-06-19)
2
9
 
3
10
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bmad-method",
3
- "version": "4.6.1",
3
+ "version": "4.6.2",
4
4
  "description": "Breakthrough Method of Agile AI-driven Development",
5
5
  "main": "tools/cli.js",
6
6
  "bin": {
@@ -425,7 +425,10 @@ class Installer {
425
425
  console.log(chalk.cyan("\nšŸ“¦ Starting v3 to v4 upgrade process..."));
426
426
  const V3ToV4Upgrader = require("../../upgraders/v3-to-v4-upgrader");
427
427
  const upgrader = new V3ToV4Upgrader();
428
- return await upgrader.upgrade({ projectPath: installDir });
428
+ return await upgrader.upgrade({
429
+ projectPath: installDir,
430
+ ides: config.ides || [] // Pass IDE selections from initial config
431
+ });
429
432
  }
430
433
  case "alongside":
431
434
  return await this.performFreshInstall(config, installDir, spinner);
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bmad-method",
3
- "version": "4.6.1",
3
+ "version": "4.6.2",
4
4
  "description": "BMAD Method installer - AI-powered Agile development framework",
5
5
  "main": "lib/installer.js",
6
6
  "bin": {
@@ -98,7 +98,7 @@ class V3ToV4Upgrader {
98
98
 
99
99
  // 8. Setup IDE
100
100
  if (!options.dryRun) {
101
- await this.setupIDE(projectPath);
101
+ await this.setupIDE(projectPath, options.ides);
102
102
  }
103
103
 
104
104
  // 9. Show completion report
@@ -379,8 +379,8 @@ class V3ToV4Upgrader {
379
379
  const spinner = ora("Installing V4 structure...").start();
380
380
 
381
381
  try {
382
- // Get the source .bmad-core directory
383
- const sourcePath = path.join(__dirname, "..", "..", ".bmad-core");
382
+ // Get the source bmad-core directory (without dot prefix)
383
+ const sourcePath = path.join(__dirname, "..", "..", "bmad-core");
384
384
  const destPath = path.join(projectPath, ".bmad-core");
385
385
 
386
386
  // Copy .bmad-core
@@ -545,47 +545,37 @@ class V3ToV4Upgrader {
545
545
  }
546
546
  }
547
547
 
548
- async setupIDE(projectPath) {
549
- const { ide } = await inquirer.prompt([
550
- {
551
- type: "list",
552
- name: "ide",
553
- message: "Which IDE are you using?",
554
- choices: [
555
- { name: "Cursor", value: "cursor" },
556
- { name: "Claude Code", value: "claude-code" },
557
- { name: "Windsurf", value: "windsurf" },
558
- { name: "Roo Code", value: "roo" },
559
- { name: "VS Code", value: "skip" },
560
- { name: "Other/Skip", value: "skip" },
561
- ],
562
- },
563
- ]);
564
-
565
- const selectedIde = ide === "skip" ? null : ide;
566
-
567
- if (selectedIde) {
568
- const ideSetup = require("../installer/lib/ide-setup");
569
- const spinner = ora("Setting up IDE rules for all agents...").start();
570
-
571
- try {
572
- await ideSetup.setup(selectedIde, projectPath);
573
- spinner.succeed("IDE setup complete!");
548
+ async setupIDE(projectPath, selectedIdes) {
549
+ // Use the IDE selections passed from the installer
550
+ if (!selectedIdes || selectedIdes.length === 0) {
551
+ console.log(chalk.dim("No IDE setup requested - skipping"));
552
+ return;
553
+ }
574
554
 
575
- const ideMessages = {
576
- cursor: "Rules created in .cursor/rules/",
577
- "claude-code": "Commands created in .claude/commands/",
578
- windsurf: "Rules created in .windsurf/rules/",
579
- roo: "Custom modes created in .roomodes",
580
- };
555
+ const ideSetup = require("../installer/lib/ide-setup");
556
+ const spinner = ora("Setting up IDE rules for all agents...").start();
581
557
 
582
- console.log(chalk.green(`- ${ideMessages[selectedIde]}`));
583
- } catch (error) {
584
- spinner.fail("IDE setup failed");
585
- console.error(
586
- chalk.yellow("IDE setup failed, but upgrade is complete.")
587
- );
558
+ try {
559
+ const ideMessages = {
560
+ cursor: "Rules created in .cursor/rules/",
561
+ "claude-code": "Commands created in .claude/commands/",
562
+ windsurf: "Rules created in .windsurf/rules/",
563
+ roo: "Custom modes created in .roomodes",
564
+ };
565
+
566
+ // Setup each selected IDE
567
+ for (const ide of selectedIdes) {
568
+ spinner.text = `Setting up ${ide}...`;
569
+ await ideSetup.setup(ide, projectPath);
570
+ console.log(chalk.green(`\nāœ“ ${ideMessages[ide]}`));
588
571
  }
572
+
573
+ spinner.succeed(`IDE setup complete for ${selectedIdes.length} IDE(s)!`);
574
+ } catch (error) {
575
+ spinner.fail("IDE setup failed");
576
+ console.error(
577
+ chalk.yellow("IDE setup failed, but upgrade is complete.")
578
+ );
589
579
  }
590
580
  }
591
581