@@ -69,85 +69,56 @@ pip install git+https://github.com/MPCodeWriter21/log21
6969Changelog
7070---------
7171
72- ### v3.0.1
72+ ### v3.0.2
7373
74- Fix the issue with ` argumentify ` which would result in falsy default values to be
75- replaced with None .
74+ Change ` argumentify ` to use the whole function description as the argument-parser
75+ description instead of the one-line short description .
7676
7777+ Example:
7878
7979``` python
80- def main (offset : int = 0 ) -> None :
81- ...
80+ def main (verbose : bool = False ) -> None :
81+ """ This is a very useful tool and I will describe it thoroughly. It is so good that
82+ we have a second line in the first part of the description.
83+
84+ And now we can talk more about the tool...
85+
86+ :param verbose: This flag will make the logs more verbose!
87+ """
8288
8389argumentify(main)
8490```
8591
86- if no value is provided for ` --offset ` , the default will be ` None ` instead of ` 0 ` which
87- is unexpected and can lead to issues.
88-
89- #### Breaking Changes
90-
91- + ** Internal module renaming and normalization**
92- + All internal modules were renamed to lowercase and, in some cases, split or
93- reorganized.
94- + Imports such as ` log21.Colors ` , ` log21.Logger ` , ` log21.ProgressBar ` , etc. are no
95- longer valid.
96- + Users importing from internal modules must update their imports to the new module
97- names.
98- + Public imports from ` log21 ` remain supported.
99-
100- + ** Argumentify exception renames**
101- + Several exceptions were renamed to follow a consistent ` *Error ` naming convention:
102- + ` TooFewArguments ` → ` TooFewArgumentsError `
103- + ` RequiredArgument ` → ` RequiredArgumentError `
104- + ` IncompatibleArguments ` → ` IncompatibleArgumentsError `
105- + Code that explicitly raises or catches these exceptions must be updated.
106-
107- #### Changes
108-
109- + ** Crash reporter behavior improvement**
110- + Prevented the default file crash reporter from creating ` .crash_report ` files when it
111- is not actually used.
112- + Implemented using an internal ` FakeModule ` helper.
113-
114- + ** Argparse compatibility update**
115- + Bundled and used the Python 3.13 ` argparse ` implementation to ensure consistent
116- behavior across supported Python versions.
117-
118- + ** Progress bar module rename**
119- + Renamed the internal progress bar module to ` progress_bar ` for consistency with the
120- new naming scheme.
121- + This will not break the usages of ` log21.progress_bar(...) ` since the call
122- functionality was added to the module using the ` FakeModule ` helper.
123-
124- + ** Examples added and updated**
125- + Added new example code files.
126- + Updated existing examples to match the v3 API and conventions.
127-
128- #### Fixes
129-
130- + Resolved various linting and static-analysis issues across the codebase.
131- + Addressed minor compatibility issues uncovered by running linters and pre-commit hooks.
132- + Resolved errors occurring in environments with newer versions of argparse.
133-
134- #### Internal and Maintenance Changes
135-
136- + Migrated the build system configuration to ` uv ` .
137- + Updated Python version classifiers and set the supported Python version to 3.9+.
138- + Added ` vermin ` to the pre-commit configuration.
139- + Updated ` .gitignore ` , license metadata, and tool configurations.
140- + Silenced and resolved a large number of linter warnings.
141- + General internal refactoring with no intended user-visible behavioral changes.
142-
143- #### Notes
144-
145- + There are ** no intentional behavioral changes** in logging output, argument parsing
146- logic, or UI components.
147- + Most projects will require ** minimal or no changes** unless they depend on internal
148- modules or renamed exceptions.
149- + See [ MIGRATION-V2-V3.md] ( https://github.com/MPCodeWriter21/log21/blob/master/MIGRATION-V2-V3.md )
150- for detailed upgrade instructions.
92+ The way old versions would look:
93+
94+ ``` help
95+ usage: test.py [-h] [--verbose]
96+
97+ This is a very useful tool and I will describe it thoroughly. It is so good that
98+
99+ options:
100+ -h, --help
101+ show this help message and exit
102+ --verbose, -v
103+ This flag will make the logs more verbose!
104+
105+ ```
106+
107+ Now at v3.0.2:
108+
109+ ``` help
110+ usage: test.py [-h] [--verbose]
111+
112+ This is a very useful tool and I will describe it thoroughly. It is so good that we have a
113+ second line in the first part of the description. And now we can talk more about the tool...
114+
115+ options:
116+ -h, --help
117+ show this help message and exit
118+ --verbose, -v
119+ This flag will make the logs more verbose!
120+
121+ ```
151122
152123[ Full CHANGELOG] ( https://github.com/MPCodeWriter21/log21/blob/master/CHANGELOG.md )
153124
0 commit comments