Skip to content

v0.2.25

Choose a tag to compare

@github-actions github-actions released this 24 May 00:45
· 334 commits to main since this release
caee6ac

Changelog

  • 4659a75 Add --skip=validate to goreleaser release args
  • 3bdc84e Add .env, *.log, and Claude local settings to .gitignore
  • b5642fd Add CLAUDE.md with branch naming conventions
  • 355c870 Add CLI colorization via fatih/color
  • 4f25a41 Add README, deferred task list, and update CLAUDE.md
  • 9858464 Add WIP design spec and package manager doc to .claude/docs/
  • 69b0189 Add auto patch release workflow on main push
  • 8972eb2 Add composability parity design goal to suite spec
  • f102b1b Add docs/ directory and note it in CLAUDE.md
  • 5ccaa7e Add dotd env list/get/set and env.SaveEnvFileToPath
  • 8af68b3 Add dotp spec: @require/@request, installed()/installable(), packages.yaml
  • e96c8e6 Add implementation plan: 5 phases from repo bootstrap to orchestrator
  • eb6ab3a Add package manager fragmentation to problem statement
  • 7d76174 Add per-tool GoReleaser release infrastructure
  • c5ec171 Add script source order problem to intro
  • c6d6dc5 Add spec review doc, project settings, and deferred design tasks
  • dc103a0 Add specv2: dotr suite architecture design
  • 951b6dc Add structural spec: monorepo layout, internal packages, FileSet, I/O boundary
  • bd3ef00 Add token efficiency guidelines to CLAUDE.md
  • 3c9397c Apply spec review resolutions across all spec files
  • 0a2d157 Clarify work/personal coexistence bullet
  • 159f186 Clean up TODO: close repo rename item, keep dotp spec open
  • b755261 Color cobra help output: bold headers, cyan commands and flags
  • 4d1d3ad Defer CI/PR template setup to TODO
  • ffedaec Document release process in CLAUDE.md; fix README install URL
  • 90d6adc Document trunk-based branching strategy and naming conventions
  • 424032e Downgrade go.mod to Go 1.24 to fix lint CI
  • 455f59b Expand conventional solutions: add numbered prefix example
  • 561b74a Fix GoReleaser semver: set GORELEASER_CURRENT_TAG to VERSION
  • a796c9b Fix all golangci-lint v2 errors
  • b6f97f8 Fix golangci-lint version: use v2.11.4 (supports go 1.25)
  • 04632fd Fix lint: use golangci-lint v2, accept go 1.25 toolchain bump
  • d4ce53e Fix missing VERSION env var in auto-release goreleaser invocation
  • f8b6dcf Fix missing color in dotd apply verbose/dry-run output
  • d1b4a54 Fix per-tool GitHub release naming to prevent tag collision
  • a45492f Fix remaining errcheck: defer close and error-path Remove
  • 2445b67 Fix standalone mode: dotl and dotp use unconditional walk
  • 262ce0d Guard against duplicate release creation in auto-release
  • bfae630 Implement @retain-prefix: skip dot- transformation on last path component
  • d1dd231 Mark phases 1-3 complete in TODO
  • 9ca75e9 Merge branch 'feature/claude-phase-1-foundation' into feature/claude-phase-3-walk-fileset-v2
  • 7c7e707 Merge pull request #1 from rocne/feature/claude-phase-5-cmds
  • 8e79b56 Merge pull request #10 from rocne/feature/claude-goreleaser-release-names
  • 7bd6002 Merge pull request #11 from rocne/feature/claude-goreleaser-gh-publish
  • 4ac0837 Merge pull request #12 from rocne/feature/claude-release-docs
  • 84edb84 Merge pull request #13 from rocne/feature/claude-cli-color
  • a43394b Merge pull request #14 from rocne/feature/claude-fix-auto-release
  • e4c7004 Merge pull request #15 from rocne/feature/claude-dotd-color-apply
  • d01c302 Merge pull request #16 from rocne/feature/claude-pr-workflow-policy
  • 45e4cef Merge pull request #17 from rocne/feature/claude-packages-yaml-scaffold
  • 69f5af8 Merge pull request #18 from rocne/feature/claude-install-script
  • 989a379 Merge pull request #19 from rocne/feature/claude-install-script
  • 8ed2162 Merge pull request #2 from rocne/feature/claude-files-flag
  • 4ddf19b Merge pull request #20 from rocne/feature/claude-audit-ecosystem
  • e95ca82 Merge pull request #21 from rocne/feature/claude-audit-fixes
  • b7c95de Merge pull request #22 from rocne/feature/claude-import-annotations
  • 3005904 Merge pull request #23 from rocne/feature/claude-readme-annotations
  • 1f60b56 Merge pull request #25 from rocne/feature/claude-docs-site
  • 212e525 Merge pull request #26 from rocne/feature/claude-integration-tests
  • 6963c8d Merge pull request #27 from rocne/feature/claude-integration-tests
  • 093f17d Merge pull request #29 from rocne/feature/claude-docs-refresh
  • 916f10f Merge pull request #3 from rocne/feature/claude-readme-v2
  • 111edcf Merge pull request #30 from rocne/feature/claude-remove-old-toolnames
  • 6d2cd9a Merge pull request #31 from rocne/feature/claude-remove-old-toolnames
  • ab5b810 Merge pull request #32 from rocne/feature/claude-naming-audit
  • 94ffc5f Merge pull request #33 from rocne/feature/claude-naming-audit
  • 1ee312a Merge pull request #34 from rocne/feature/claude-session-cleanup
  • 3e818f1 Merge pull request #35 from rocne/feature/claude-env-diff-completions-tests
  • 58608f5 Merge pull request #36 from rocne/feature/claude-public-release-cleanup
  • e8763a4 Merge pull request #37 from rocne/feature/claude-public-release-spec-cleanup
  • 8372766 Merge pull request #38 from rocne/feature/claude-readme-walk-fix
  • 0c983ae Merge pull request #39 from rocne/feature/claude-shellrc-rename
  • 89571ed Merge pull request #4 from rocne/feature/claude-readme-intro
  • 0e1484a Merge pull request #40 from rocne/feature/claude-files-list-cmd
  • 296e749 Merge pull request #41 from rocne/feature/claude-cleanup-pass
  • 4f3043b Merge pull request #42 from rocne/feature/claude-ux-improvements
  • c03fb88 Merge pull request #43 from rocne/feature/claude-package-manifests
  • 9515650 Merge pull request #44 from rocne/feature/claude-compose-targets
  • f97099e Merge pull request #45 from rocne/feature/claude-help-fixes
  • 44f9e91 Merge pull request #46 from rocne/feature/claude-path-resolver
  • e17e220 Merge pull request #47 from rocne/feature/claude-logging
  • 15aca49 Merge pull request #48 from rocne/feature/claude-output-migration
  • b4902a3 Merge pull request #49 from rocne/feature/claude-homebrew-tap
  • 89d5879 Merge pull request #5 from rocne/feature/claude-readme-conventional
  • b312954 Merge pull request #50 from rocne/feature/claude-cleanup-help-flags
  • 32121be Merge pull request #51 from rocne/feature/claude-rename-brew-formula
  • 8cb8bb9 Merge pull request #52 from rocne/feature/claude-env-help
  • dbb9233 Merge pull request #53 from rocne/feature/claude-bundle
  • 9a175fc Merge pull request #54 from rocne/feature/claude-compose
  • b83606b Merge pull request #55 from rocne/feature/claude-v2-planning
  • 8909bb9 Merge pull request #56 from rocne/feature/claude-v2-impl
  • 4f1ecb9 Merge pull request #57 from rocne/feature/claude-v2-env-config
  • 342cf52 Merge pull request #58 from rocne/feature/claude-v2-pipeline
  • deb936e Merge pull request #59 from rocne/feature/claude-v2-cli-init
  • 48705b5 Merge pull request #6 from rocne/feature/claude-readme-work-personal
  • 24328da Merge pull request #60 from rocne/feature/claude-review-fixes
  • 1ff6b12 Merge pull request #61 from rocne/feature/claude-action-system
  • 9027b4b Merge pull request #62 from rocne/feature/claude-cli-completeness
  • 863f940 Merge pull request #63 from rocne/feature/claude-adopt
  • 54569d0 Merge pull request #64 from rocne/feature/claude-audit-fixes
  • db0b457 Merge pull request #65 from rocne/feature/claude-init-rc-canonical
  • 34f372e Merge pull request #67 from rocne/feature/claude-init-walk-fixes
  • 1d63a67 Merge pull request #7 from rocne/feature/claude-hyphen-tags
  • b3d6a3e Merge pull request #8 from rocne/feature/claude-goreleaser-tag-fix
  • fb6c2c8 Merge pull request #9 from rocne/feature/claude-goreleaser-skip-validate
  • 1331c84 Move docs to .claude/docs/ for Claude reference material
  • 5dada15 Overhaul README: philosophy, how it works, full annotation docs
  • 5e9e704 Phase 0: repo bootstrap
  • 5b9e570 Phase 1: internal/annotation and internal/predicate
  • 67fb52f Phase 2: internal/dotryaml, internal/env, cmd/dote
  • 2512cb3 Phase 3: internal/walk and internal/fileset
  • c903803 Phase 4: dag, initgen, linker, packages
  • 9926a6b Phase 5: cmd/dotd, cmd/dotl, cmd/dotp, cmd/dotr
  • 3b7f5c0 Refactor cmds to newRootCmd() and add cmd-layer tests
  • 6a94d37 Refactor dote to newRootCmd() and add cmd-layer tests
  • 36159b2 Reframe intro: problem statement, comparison table, value prop
  • 6222ae6 Rename --dotfiles to --files with -f shorthand
  • cc325a3 Rework README: tool sections replace overview table
  • 2907b9c Rework release: goreleaser builds, gh publishes
  • da03408 Rewrite README for dotr suite
  • a3de3a9 Sharpen script order bullet: call out numbered prefix hack
  • aad26bb Split SPEC.md into spec/ directory with index and subsection files
  • b81e447 Switch release tags from slash to hyphen format
  • ff7721d Tighten intro bullets into table; add setup + color TODOs
  • 6168bc9 Update CLAUDE.md: living doc note, commit/push cadence, validation steps
  • 2414718 Update go.mod to Go 1.26, tidy deps
  • 6d19ed1 Upgrade to golangci-lint-action@v7 for golangci-lint v2 support
  • e4a97f5 Wire link_root cascade from .dotr.yaml into linker
  • 1410b3e chore(todo): add go-public and GitHub Pages tasks
  • 66c7874 ci: trigger CI
  • 6334bea ci: trigger CI after base branch update
  • a6b451a ci: trigger CI run
  • d422504 docs(claude): strengthen pre-push PR check instruction
  • 7ac4b4d docs(cmd): document env diff intentional design — compares file vs shell, not final resolved env
  • 0fae1f3 docs(install): add curl one-liner usage to script header
  • 9dd460a docs(plan): add dotd adopt implementation plan
  • 4a7290c docs(plan): fix adopt plan — imports, suppression lines, expected output, go mod tidy, shellrc test
  • 51e2d18 docs(plan): second-pass review fixes — stale import note, filepath literals, bin test original-removal check
  • c44a9cb docs(readme): add @disable/@no-source/@source annotations, dotr adopt, fix .dot-dagger.yaml schema
  • 4d185ca docs(readme): add Development section with test and docs serve commands
  • 7a0af2a docs(readme): add install.sh one-liner, fix stale priority docs
  • 96826b5 docs(readme): audit for clarity, ordering, and terminology
  • e22510b docs(readme): fix fileset stage — walks whole repo, not just 3 dirs
  • d9ffebd docs(setup): improve packages.yaml scaffold with full example
  • 16b0555 docs(spec): add actions.md, update compose/dag/index for v2 action system
  • b1c937c docs(spec): add dotd adopt v2 design spec
  • c7da628 docs(spec): align spec with actual code and design
  • 668a2d4 docs(spec): deep accuracy pass — align with actual implementation
  • ecfb6be docs(spec): fix adopt spec — flags table, test placement, symlink notation
  • 44f3606 docs(spec): mark dotd adopt as implemented in cli.md
  • d79d984 docs(spec): update cli, architecture, and index to match implementation
  • b171759 docs(spec): update cli.md to match v2 implementation; unhide package/compose/dag commands
  • f77c050 feat(adopter): add Infer with convention-based destination inference
  • cd4b4c3 feat(adopter): implement Adopt — copy, remove, symlink via pipeline.Act
  • d5bfb5f feat(annotation): rewrite scanner for v2 @key(args) syntax
  • 82e1b20 feat(cli): add dotd env/config subcommands, hidden get-os/get-hostname, help --all
  • d03a826 feat(cli): add dotd init, dotd list, dotd bundle (v2 pipeline)
  • 34bc848 feat(cli): wire dotd apply/check to v2 pipeline, delete superseded v1 packages
  • ed969d4 feat(cli): wire dotd apply/check to v2 pipeline, delete superseded v1 packages
  • 15728e0 feat(cmd): add dotd env diff command
  • a54380f feat(cmd): add dotd package list command
  • 5224e95 feat(cmd): implement dotd adopt — inference, prompt, copy, symlink
  • 84563aa feat(config): add config.yaml loader with Get/Set
  • b6480ce feat(dagger): add .dagger file parser with v2 node schema
  • 5253734 feat(dagger): add ConventionConfig for configurable convention dir names
  • dd0ec85 feat(dotd): add completion subcommand, env diff, and expand unit tests
  • e1fae0c feat(dotr): add dotr setup interactive onboarding command
  • 79d4866 feat(dotr): add env/dag/link/package as subcommands
  • 4232a20 feat(ecosystem): single canonical name and default path functions
  • 23a4862 feat(ecosystem): tool name constants + rename config file to .dot-dagger.yaml
  • 9bc3282 feat(env): rewrite for v2 — flat yaml, shell interpolation, DOTD_* vars
  • 0eee667 feat(install): add tool, version, os, arch args to install.sh
  • 6d8c9f9 feat(node): add logical name derivation
  • 3b8b567 feat(packages): move priority to packages.yaml, add per-package prefer
  • 5eba904 feat(pipeline): add ValidateNodes for action sequencing validation
  • 3bf0f9d feat(pipeline): add act stage (link, source, no-source)
  • bbe088d feat(pipeline): add filter stage
  • fc0c36d feat(pipeline): add init.sh generation
  • 4a47824 feat(pipeline): add normalizeActionAnnotations for canonical action form
  • 1843df5 feat(pipeline): add order stage (Kahn + alpha tie-break) and After field on RawNode
  • 259edbd feat(pipeline): add walk stage with RawNode types and cascade logic
  • c820510 feat(pipeline): normalize action annotations before mergeActions
  • 8b382b6 feat(pipeline): wire ValidateNodes between Walk and Filter
  • 05cba2d feat(setup): detect installed package managers and pre-fill packages.yaml
  • 49d659a feat: UX improvements across CLI surface
  • 22b3a43 feat: add @disable/@no-source/@source annotations and dotr import command
  • 5ee8c86 feat: add dotd bundle command
  • f7c44ce feat: add dotd files list command
  • e166d8d feat: add dotd-packages.yaml package manifests
  • fc46477 feat: add install.sh to download and install latest dotr
  • 315db37 feat: add structured logging via charmbracelet/log
  • 44d6088 feat: centralize path resolution with DOTD_* env vars and env.yaml fields
  • eb5ee9f feat: complete BasicNode wiring, @disable, link/compose fixes, nosync warning
  • 34066be feat: implement §21 compose targets
  • 7edc399 feat: integration-test compose stage end-to-end
  • 7b3c177 feat: migrate all output to structured log levels with stdout/stderr split
  • 3d627c4 feat: publish Homebrew tap formula on release
  • ddee412 feat: rename scripts/ → shellrc/, make convention dirs configurable
  • dfa95ba feat: wire dotd init RC file check, fix canonical resolution violations
  • 36b9736 fix(annotation): migrate all packages to v2 annotation API
  • a6b362b fix(critical): fix C-1 through C-5 from v2 code review
  • f2790bd fix(ecosystem): roll own XDG helpers, move init.sh to XDG_DATA_HOME
  • c6b0ceb fix(env): add missing env API functions and fix CLI commands
  • 09c34bc fix(install): add checksum verification and --dry-run flag
  • 26702fa fix(install): update tag format from dotd-vX.Y.Z to vX.Y.Z
  • ba3e402 fix(lint): remove ineffectual label assignment in setup.go
  • 0c3829e fix(lint): resolve ineffassign, staticcheck, and unused function issues
  • dd15a5c fix(lint): use fmt.Fprintf in bundle.go; remove dead setup.go
  • 2d62461 fix(pipeline): allow link with no dest when link_root set; skip fragment validation
  • 5a7bd0d fix(pipeline): wire compose/link/bin support so all integration tests pass
  • d864d51 fix(test): check os.Unsetenv/Setenv error returns to satisfy errcheck
  • cd150ad fix(testdata): update fixtures to v2 annotation syntax
  • e5641e0 fix(walk): skip ecosystem config file when building nodes
  • d3e70b8 fix: audit CLI help messages and check exit behavior
  • 90e776f fix: flat env.yaml fixture and lint errcheck in main.go
  • 34c2cf3 fix: remove redundant flags, fix misleading package hint, simplify files cmd
  • 88f973d fix: rename Homebrew formula from dotd to dot-dagger
  • c81621d fix: route all default paths through ecosystem; fish config respects XDG
  • 105bbee fix: skip .git in walk, normalize relative paths in init, improve wizard prompts
  • e0327a0 fix: update @after refs in test fixtures to use shellrc. prefix
  • 83059d7 fix: wire logger to cmd.ErrOrStderr() so tests capture output; fix --verbose → --log-level debug
  • e429cc3 refactor(cmd): extract runPipeline to deduplicate apply/check pipeline setup
  • 895bfe9 refactor(dotr): rename import command to adopt
  • d249d1b refactor(packages): generate install script instead of exec subprocess
  • d75a894 refactor: apply code review fixes across codebase
  • 755231c refactor: collapse suite into single dotd binary
  • d851d61 refactor: remove all former sub-tool name references
  • 638fa95 refactor: rename .dot-dagger.yaml to .dotd.yaml, simplify CI/CD tags
  • bb570d6 refactor: resolve all open audit items (A-03, A-04, A-06–A-08, A-10–A-11)
  • 117e976 test(ecosystem): add unit tests for ResolvePath and Default* functions
  • 1528e8e test(integration): add package management tests
  • 8e6f232 test(integration): update PackageRequireHardFail for generate command
  • cf9d2ee test(setup): add unit tests for Scaffold