Implemented a new command "command_name" in the CLi with its associated functionalities in the relevant modules. The new command allows the user to set the name field in the manifest file. Main.rs was updated to handle this new command and exhaustive error handling was added to the main function. Also, improved the manifest module for better error handling and added functionalities for getting and setting manifest's name.
Introduced a new 'manifest' module to manage manifest files and updated 'command_init' to utilize this module, replacing previously hard-coded functionalities. Added 'manifest' package dependencies to Cargo.lock and command_init's Cargo.toml files.
A new package named 'manifest' is introduced in this commit. It comprises a single structure and related functions for managing manifests. Additionally, 'command_init' has been altered to use this new module instead of using its previously hard-coded functionality. A reference to 'manifest' has also been added in the Cargo.lock and command_init/Cargo.toml files.
This commit creates a new Rust workspace which includes two packages: "command_init" and "mccli". The command line argument parsing for these packages is powered by the "clap" dependency. An automatically generated Cargo.lock file tracks all dependencies. Additionally, a .gitignore file was configured to prevent tracking of unnecessary build artifacts and IDE-specific files.