Part of #11
As a developer, I want to remove qbit packages from my project so I can clean up unused dependencies.
qctl qbit remove <package> # Examples: qctl qbit remove @qrun/auth-sso qctl qbit remove @qrun/reports --force # Skip dependency check
--force
qbits.lock
vendor/qbits/
qctl-qbit/src/main/java/io/qrun/qctl/qbit/RemoveCommand.java
qbit remove
qctl-qbit/src/main/java/io/qrun/qctl/qbit/lock/LockfileIO.java
qctl-qbit/src/main/java/io/qrun/qctl/qbit/QbitCommand.java
RemoveCommand
Package @qrun/foo is not installed
Cannot remove: @qrun/bar depends on @qrun/foo
LockfileIO.removePackage(name)
QbitCommand.subcommands
qbit remove @qrun/auth-sso
No dependencies set.
The note is not visible to the blocked user.
Part of #11
User Story
As a developer, I want to remove qbit packages from my project so I can clean up unused dependencies.
Design
Command Interface
Workflow
--force)qbits.lockvendor/qbits/directoryFiles to Create/Modify
qctl-qbit/src/main/java/io/qrun/qctl/qbit/RemoveCommand.javaqbit removeqctl-qbit/src/main/java/io/qrun/qctl/qbit/lock/LockfileIO.javaqctl-qbit/src/main/java/io/qrun/qctl/qbit/QbitCommand.javaRemoveCommandError Cases
Package @qrun/foo is not installedCannot remove: @qrun/bar depends on @qrun/fooImplementation Tasks
RemoveCommandwith Picocli annotations--forceflag to skip dependency checkLockfileIO.removePackage(name)methodRemoveCommandinQbitCommand.subcommandsAcceptance Criteria
qbit remove @qrun/auth-ssoremoves package--forcebypasses dependency check