Repository navigation
Releases: manatunga/repopy
Release list
v0.6.2
v0.6.2 — Test Coverage: CLI Flags & Command Dispatch
Test-only release. No production code, behavior, or CLI flags changed.
Added
- Full
test_cli.pycoverage forinit,link, andinfosubcommands
(previously onlycloneandcleanhad flag-level tests), including
defaults, valid/invalid choices, and flag combinations. - Direct, mocked tests for every
Commandclass'srun()method
(clean,info,link,clone,init), verifying each one
constructs its correspondingInitializerwith the correct
arguments and returns the correct result. This closes a gap where
run()logic was only covered incidentally throughtest_main.py's
end-to-end dispatch tests, rather than asserted directly.
Notes
v0.6.1
v0.6.1 — Layered Package Reorganization
Internal restructuring of src/repopy/, no functional changes.
Changed
- Reorganized flat
src/repopy/module layout into layered packages
matching the project's architectural model:ui/— CLI parsing and interactive prompts (cli.py,prompts.py)engines/— low-level execution engines (file_system.py,
git_engine.py,info.py)validators/— input sanitation and environment checks
(validators.py,dependencies.py,os_detector.py)commands/— unchanged from v0.6.0, already its own package
Notes
- No flags, commands, or behavior changed for end users.
- Only affects internal import paths; not relevant to anyone
installing viapip install repopy. - Full test suite, mypy, and ruff checks pass clean.
v0.6.0
v0.6.0 — Command Registry Refactor
This release is an internal architecture refactor with no new
user-facing commands or flags. All existing commands work exactly
as before, with one deliberate exception noted below.
Changed
- Replaced the hardcoded
if/elifcommand dispatch in__main__.py
and the manually-repeated subparser setup incli.pywith a
class-based command registry (commands/). Each command now
defines its own arguments and execution logic in one place,
conforming to a sharedCommandinterface. - This lays the groundwork for the upcoming v0.7.0+ commands
(add,remove,update,doctor, etc.) without further
churn to the dispatch layer.
Fixed
repopy initnow correctly returns a non-zero exit code when
initialization fails. Previously, a failedinit(without
--link) would still exit with code0, incorrectly reporting
success to scripts or CI pipelines checking the exit status.
Notes
- No flags, defaults, or command behavior changed otherwise.
- Full test suite (unit + registry integrity) and mypy/ruff checks
pass clean.
Full Changelog: v0.5.0...v0.6.0
v0.5.0
Upgrade the automated test suite to a full, independent CI/CD pipeline that runs automated unit tests, linting, formatting and type checks on commits and merges, and deploys new releases from main to PyPI once tests pass.
Create a new command: repopy info - fetches and displays project workspace metadata, including:
- Project details: name, version, root path, Python runtime version
- Git status: active branch, latest commit hash, remote origin URL, repository status
- Virtual environment: active status, package count and installed dependencies.
Full Changelog: v0.4.1...v0.5.0
v0.4.1
Introduce a brand-new command: repopy clean, to safely fetch and clear build artifacts and test caches.
- Fix bugs within FileSystemEngine methods used for
repopy clean's artifact discoverer.
Full Changelog: v0.4.0...v0.4.1
v0.4.0
Introduce a brand-new command: repopy clean, to safely fetch and clear build artifacts and test caches.
Full Changelog: v0.3.1...v0.4.0
v0.3.1
- Added a class method to FileSystemEngine to create a simple README.md during directory creation with
repopy init - Update test suites, source code and GitHub Actions CI workflow to integrate
rufflinting andmypytype checks.
Full Changelog: v0.3.0...v0.3.1
v0.3.0
Resolved issue #1:
- Upgrade
repopy cloneto include an interactive prompt to proceed or skip installing dependencies. - Add new
-i/--installand--no-installflags torepopy cloneto bypass the prompt and execute or skip dependency installation, respectively.
Full Changelog: v0.2.0...v0.3.0
v0.2.0
Introduce repopy link to link a local workspace to a remote repository.
Upgrade repopy local to repopy init with additional flags (-t / --theme, -s / --skip) for greater user control:
- Add
-l/--linkand-m/--messageflags torepopy initto combine bothrepopy initandrepopy linkprocesses.
Add initial test suites and automated GitHub Actions CI workflows.
Full Changelog: v0.1.1...v0.2.0