feat: [#760] package:uninstall support uninstall goravel/framework facades#1173
feat: [#760] package:uninstall support uninstall goravel/framework facades#1173
Conversation
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #1173 +/- ##
==========================================
+ Coverage 68.52% 68.61% +0.09%
==========================================
Files 225 225
Lines 14600 14684 +84
==========================================
+ Hits 10004 10075 +71
- Misses 4218 4222 +4
- Partials 378 387 +9 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
⚠️ Performance Alert ⚠️
Possible performance regression was detected for benchmark.
Benchmark result of this commit is worse than the previous benchmark result exceeding threshold 1.50.
| Benchmark suite | Current: 3f84a47 | Previous: 7e25ea1 | Ratio |
|---|---|---|---|
Benchmark_Fatal |
4e-7 ns/op 0 B/op 0 allocs/op |
2e-7 ns/op 0 B/op 0 allocs/op |
2 |
Benchmark_Fatal - ns/op |
4e-7 ns/op |
2e-7 ns/op |
2 |
This comment was automatically generated by workflow using github-action-benchmark.
There was a problem hiding this comment.
Pull Request Overview
This pull request adds support for uninstalling Goravel framework facades through the package:uninstall command. The implementation enhances the existing package uninstallation functionality to handle both packages and facades, with proper dependency management and user confirmation for cascade uninstalls.
Key changes:
- Extended
package:uninstallcommand to support facade uninstallation with dependency resolution - Refactored error handling from direct console output to context-based messaging
- Added comprehensive test coverage for new facade uninstallation scenarios
Reviewed Changes
Copilot reviewed 6 out of 6 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| foundation/console/package_uninstall_command.go | Added facade uninstallation logic with dependency management and confirmation prompts |
| foundation/console/package_uninstall_command_test.go | Enhanced test suite with facade uninstallation scenarios and updated mocking approach |
| foundation/console/package_install_command.go | Refactored error handling to use context methods and extracted helper function |
| foundation/console/package_install_command_test.go | Updated tests to use context-based assertions instead of color output capture |
| foundation/application.go | Added method to detect installed facades by analyzing service providers |
| foundation/application_test.go | Added test coverage for the new installed facades detection functionality |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
📑 Description
Closes goravel/goravel#760
This pull request refactors package and facade installation and uninstallation logic to improve clarity, error handling, and testability. The changes include updating command constructors to accept more contextual information, switching from direct console output to context-based messaging, and enhancing facade dependency management. Additionally, tests have been updated to reflect these changes and ensure proper behavior.
✅ Checks