Skip to content

Latest commit

 

History

History
153 lines (93 loc) · 12.3 KB

File metadata and controls

153 lines (93 loc) · 12.3 KB

Changelog

0.8.0 (2026-08-03)

⚠ BREAKING CHANGES

  • a directory under a forge dir that holds no git repo used to be listed as one and no longer is, so it drops out of list, status, sync and pick. forgemap validate names those directories.
  • a URL carrying more path than the project — a GitHub deep link such as https://github.com/owner/repo/pull/1 — is now an error naming the forge's namespace depth rather than being silently truncated to owner/repo.

Features

  • accept nested namespaces in every slug form (f180c97), closes #86
  • adopt nested namespaces in import (66f2396), closes #86
  • check glab and the layout in validate (6df43c9), closes #86
  • find repos by their .git marker at any namespace depth (94bfb3a), closes #86
  • prune the whole namespace a delete leaves empty (c3bd663), closes #86
  • support GitLab natively via glab (2cfa152), closes #86

Bug Fixes

  • ask each GitLab host only about its own projects (ba83f2c), closes #86
  • scan the repo a namespace at the cap puts one level down (feeaa66), closes #86

0.7.0 (2026-07-26)

Features

  • route questions, ideas and possible bugs to the Discord forum (7c57ba1)

Bug Fixes

  • align issue-template labels with the label catalog (ddcbd68)
  • deps: update runtime dependencies to their latest minors (a9992db)
  • invalidate the scan cache when a repo lands beside another (315cf1f)

0.6.0 (2026-07-22)

⚠ BREAKING CHANGES

  • forgemap search is removed; use forgemap list.

Features

  • complete flags and options in shell completion (1fa1595), closes #73
  • forge: add interactive forge add/remove/edit commands (f8e1984), closes #78
  • replace search command with list (268cd66), closes #72

Bug Fixes

  • config: resolve a relative --config path against the cwd (8bc4a19)
  • test: assert the status tree against plain text, not colored output (159a6d3)

0.5.0 (2026-07-18)

Features

  • add --filter to status, sync and search (#55) (291072b)
  • add delete command for safe single-repo removal (#58) (e2b787f)
  • add info command for version, install path and config (662a8e8), closes #69
  • fall back to fuzzy matching in path and open (#56) (66824fb)

Bug Fixes

  • answer --version/-v from the injected package version (8bfe0ac), closes #68
  • dependabot: match managed area:* label names (4804d8e)
  • honour the no-cache flag on status, sync and cleanup (ed74faa), closes #59
  • keep cleanup from deleting repos with stashed work (#57) (4a4bf9d)

0.4.1 (2026-05-27)

Bug Fixes

  • release: bump package.json via release-type node (29cc4d0)

0.4.0 (2026-05-25)

Features

  • ci: run release-please under the kirchDev Release App (#14) (313527b)

0.3.0 (2026-05-24)

Features

  • cleanup: add --include-dirty and --include-unpushed (769bafa)
  • cleanup: add cleanup command for stale, safely-backed-up repos (bc24909)
  • cleanup: explain why idle repos are kept (97e8095)
  • cleanup: prune all empty owner/server dirs, not just this run's (3a4f285)
  • completion: add --install; one-step shell setup with completion (138477a)
  • import & cleanup commands, one-step shell setup, network hardening (#7) (b896caf)
  • import: add import command to adopt existing repo trees (30925f3)
  • import: group the report tree by owner under each forge (98d9e68)
  • shell-init: add --install to write the loader into the rc file (dd6130a)
  • status,search: group tree output by owner under each forge (2ed69c5)

Bug Fixes

  • cleanup: base staleness on local branches; prune empty owner dirs (41c292b)
  • config: discover config via parent walk-up and global fallback (3876e9c)
  • import: only report a remote as gone on an explicit not-found (5b5cf86)
  • import: time out and never block on a hung remote check (8547db5)
  • pick: make the interactive picker render under captured stdout (15fd3e6)
  • pick: render the picker UI to stderr, keep stdout to the path (8a1ffaf)
  • shell-init: collapse duplicate/legacy rc blocks on re-install (388be31)
  • sync: never hang on an unreachable remote during fetch/pull (f99befd)

Performance Improvements

  • import: batch GitHub checks, limit concurrency, show progress (98a8209)

0.2.0 (2026-05-23)

Features

  • clickable paths, shell-init, and interactive pick (969d834)
  • completion: emit shell completion scripts (c47f3b7)
  • examples: add sandbox playground (83382dd)
  • forgemap cd via shell wrapper, drop fcd (66ff114)
  • forges: add vanilla git adapter (744188d)
  • implement clone, path and config commands (e313ccf)
  • open: add forgemap open and drop unreliable OSC 8 links (4352c3f)
  • repos: add execCapture and git ops module (e4d7833)
  • repos: cache scanRepos by depth-3 mtime fingerprint (44fd6f0)
  • search: fuzzy-find cloned repos by owner/repo (853f4a5)
  • search: translate file:// links to UNC form on WSL (201b895)
  • search: tty-aware output with pretty default (889ceb3)
  • status: per-repo branch/dirty/ahead/behind output (b8072bb)
  • sync: parallel git fetch/pull across all repos (09ddb21)
  • validate: preflight the config and required tooling (e78914c)

Bug Fixes

  • config: close file-system race in config init (5003760)

Performance Improvements

  • cache: ttl fast path, parallel stats, incremental updates (bf8140d)