Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Refactor the CLI dynamic command resolution (#362)
* Replaced eval with importlib for secure dynamic command module loading, better mitigating arbitrary code execution risks. * Defined a plugin folder and a specified list of known modules for tighter execution control, enhancing CLI security. * Enhanced error handling for clearer feedback on command module loading issues. * Shifted to pathlib for more robust path handling, replacing os.path and string manipulations. * Adopted importlib.metadata for fetching package versions, offering a fallback for unavailable versions.
- Loading branch information