read profile from config.yaml and multiple file generating
Pull Request Description
Title: Add CLI Argument for Config File Path, Verbose Logging, and Project Configuration
Description: This pull request introduces several enhancements and configurations to the project:
-
Command-Line Argument for Config File Path:
- The script now accepts a command-line argument to specify the path to the configuration YAML file. If no argument is provided, it defaults to
./config.yaml. - This change allows for more flexibility in specifying different configuration files without modifying the script.
- The script now accepts a command-line argument to specify the path to the configuration YAML file. If no argument is provided, it defaults to
-
Verbose Logging:
- Added a
-vor--verbosecommand-line argument to enable verbose logging. - When the verbose flag is set, the logging level is set to
DEBUG, providing more detailed logs for debugging purposes.
- Added a
-
Project Configuration with
pyproject.toml:- Created a
pyproject.tomlfile to specify the project requirements, including the Python version and dependencies. - The project requires Python version
>=3.10and includespyyamlas a dependency.
- Created a
tests
the V3.xml is generated by new implemented python script, 100% equal to origin one
Hey, thanks for the PR! I am hesitant to merge it, though.
From a software engineering standpoint, these changes make sense and improve things, no doubt. But I feel they also bring a certain weight and lower the accessibility of this project.
Currently, I believe everyone who can manage to install Python will be able to download main.py, tweak some params and run the script to get their threads. I think this low barrier is a huge benefit.
With the changes you suggest, this barrier is raised. Someone wanting to generate their own threads will now additionally have to install a dependency and download and rename/copy another file (though the rename/copy could maybe be avoided). That is, if they don't go the proper and even more complicated route of cloning the repo and using Poetry, etc.
I know this may sound like childsplay to a semi-seasoned Python dev but I fear that to many in the "target demographic" of this project - the maker community - this might reduce its attractiveness significantly.
I hope I got my point across and would love to hear what your thoughts on my concerns are.
Your suggestion is very reasonable, I can replace the YAML file parser with the built-in JSON parser or other simpler format ,reducing the cost of non-Python writers, and keeping the original User's experience
I wanted a way to generate custom threads without a fork, so I provided a way to read the configuration file via parameters. Reading the default configuration file and generating the configuration by executing ”python main.py” should also be supported.
@BalzGuenat this pr is ready for reviewing I've changed config format to JSON, and remove poetry files, since not library is required profile for v3 generates same file content as current master