Skip to content

v0.1.5 - Safe Config Implementation for sk adopt

Choose a tag to compare

@ankushdixit ankushdixit released this 25 Nov 23:43
· 43 commits to main since this release
25a3b1c

What's New

Safe Config Implementation for sk adopt

This release introduces intelligent file handling during adoption to prevent breaking existing projects.

Key Features

  • Three-Category File Handling:

    • NEVER_OVERWRITE (9 files): tsconfig.json, next.config.ts, tailwind.config.ts, etc. - preserved entirely if they exist
    • MERGE_IF_EXISTS (7 files): package.json, pyproject.toml, requirements.txt, etc. - intelligently merged
    • INSTALL_IF_MISSING (28 files): jest.config.ts, .coveragerc, etc. - only installed if missing
  • Backup System: All modified files backed up to .solokit-backup/<timestamp>/

  • --dry-run Mode: Preview all changes without making modifications

    sk adopt --tier=tier-2-standard --coverage=80 --dry-run
  • Smart Merge Strategies: Intelligent merging for 7 file types that preserves existing config while adding Solokit additions:

    • package.json (scripts/devDependencies)
    • pyproject.toml (dev deps and tool configs)
    • requirements.txt (missing packages)
    • eslint.config.mjs (rules)
    • .prettierrc (options)
    • .pre-commit-config.yaml (repos)
    • .husky/pre-commit (commands)

New Files

File Description
src/solokit/adopt/backup.py Timestamped backup system
src/solokit/adopt/merge_strategies.py Smart merge functions for 7 file types

Test Coverage

  • 3,710 tests (3,452 unit + 178 integration + 80 e2e)
  • 97% code coverage
  • All quality checks passing (ruff, mypy, formatting)

Installation

pip install solokit==0.1.5

Or upgrade:

pip install --upgrade solokit

Full Changelog

See CHANGELOG.md for complete details.