log21 2.10.0__tar.gz → 2.10.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (27) hide show
  1. {log21-2.10.0/src/log21.egg-info → log21-2.10.2}/PKG-INFO +30 -25
  2. {log21-2.10.0 → log21-2.10.2}/README.md +29 -24
  3. {log21-2.10.0 → log21-2.10.2}/pyproject.toml +1 -1
  4. {log21-2.10.0 → log21-2.10.2}/src/log21/Argparse.py +47 -12
  5. {log21-2.10.0 → log21-2.10.2}/src/log21/__init__.py +1 -1
  6. {log21-2.10.0 → log21-2.10.2/src/log21.egg-info}/PKG-INFO +30 -25
  7. {log21-2.10.0 → log21-2.10.2}/LICENSE.txt +0 -0
  8. {log21-2.10.0 → log21-2.10.2}/setup.cfg +0 -0
  9. {log21-2.10.0 → log21-2.10.2}/src/log21/Argumentify.py +0 -0
  10. {log21-2.10.0 → log21-2.10.2}/src/log21/Colors.py +0 -0
  11. {log21-2.10.0 → log21-2.10.2}/src/log21/CrashReporter/Formatters.py +0 -0
  12. {log21-2.10.0 → log21-2.10.2}/src/log21/CrashReporter/Reporters.py +0 -0
  13. {log21-2.10.0 → log21-2.10.2}/src/log21/CrashReporter/__init__.py +0 -0
  14. {log21-2.10.0 → log21-2.10.2}/src/log21/FileHandler.py +0 -0
  15. {log21-2.10.0 → log21-2.10.2}/src/log21/Formatters.py +0 -0
  16. {log21-2.10.0 → log21-2.10.2}/src/log21/Levels.py +0 -0
  17. {log21-2.10.0 → log21-2.10.2}/src/log21/Logger.py +0 -0
  18. {log21-2.10.0 → log21-2.10.2}/src/log21/LoggingWindow.py +0 -0
  19. {log21-2.10.0 → log21-2.10.2}/src/log21/Manager.py +0 -0
  20. {log21-2.10.0 → log21-2.10.2}/src/log21/PPrint.py +0 -0
  21. {log21-2.10.0 → log21-2.10.2}/src/log21/ProgressBar.py +0 -0
  22. {log21-2.10.0 → log21-2.10.2}/src/log21/StreamHandler.py +0 -0
  23. {log21-2.10.0 → log21-2.10.2}/src/log21/TreePrint.py +0 -0
  24. {log21-2.10.0 → log21-2.10.2}/src/log21.egg-info/SOURCES.txt +0 -0
  25. {log21-2.10.0 → log21-2.10.2}/src/log21.egg-info/dependency_links.txt +0 -0
  26. {log21-2.10.0 → log21-2.10.2}/src/log21.egg-info/requires.txt +0 -0
  27. {log21-2.10.0 → log21-2.10.2}/src/log21.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: log21
3
- Version: 2.10.0
3
+ Version: 2.10.2
4
4
  Summary: A simple logging package that helps you log colorized messages in Windows console.
5
5
  Author-email: "CodeWriter21(Mehrad Pooryoussof)" <CodeWriter21@gmail.com>
6
6
  License: Apache License 2.0
@@ -38,30 +38,37 @@ log21
38
38
  ![repo size](https://img.shields.io/github/repo-size/MPCodeWriter21/log21)
39
39
  [![CodeFactor](https://www.codefactor.io/repository/github/mpcodewriter21/log21/badge)](https://www.codefactor.io/repository/github/mpcodewriter21/log21)
40
40
 
41
- A simple logging package that helps you log colorized messages in Windows console and other operating systems.
41
+ A simple logging package that helps you log colorized messages in Windows console and
42
+ other operating systems.
42
43
 
43
44
  Features
44
45
  --------
45
46
 
46
- + Colors : The main reason for this package was to log text in the Windows console with the support of ANSI colors.
47
- + Argument parsing : log21's argument parser can be used like python's argparse but it also colorizes the output.
48
- + Logging : A similar logger to logging. Logger but with colorized output and other options such as levelname
49
- modifications. It can also decolorize the output if you want to log into a file.
50
- + Pretty printing : Have you ever wanted to colorize the output of the pprint module? log21's pretty printer can do
51
- that.
52
- + Tree printing : You can pass a dict or list to `log21.tree_print` function and it will print it in a tree-like
53
- structure. It's also colorized XD.
54
- + ProgressBar : log21's progress bar can be used to show progress of a process in a beautiful way.
55
- + LoggingWindow : Helps you to log messages and debug your code in a window other than the console.
47
+ + Colors : The main reason for this package was to log text in the Windows console with
48
+ the support of ANSI colors.
49
+ + Argument parsing : log21's argument parser can be used like python's argparse but it
50
+ also colorizes the output.
51
+ + Logging : A similar logger to logging. Logger but with colorized output and other
52
+ options such as levelname modifications. It can also decolorize the output if you want
53
+ to log into a file.
54
+ + Pretty printing : Have you ever wanted to colorize the output of the pprint module?
55
+ log21's pretty printer can do that.
56
+ + Tree printing : You can pass a dict or list to `log21.tree_print` function and it will
57
+ print it in a tree-like structure. It's also colorized XD.
58
+ + ProgressBar : log21's progress bar can be used to show progress of a process in a
59
+ beautiful way.
60
+ + LoggingWindow : Helps you to log messages and debug your code in a window other than
61
+ the console.
56
62
  + CrashReporter : log21's crash reporter can be used to report crashes in different
57
63
  ways. You can use it to log crashes to console or files or use it to receive crash
58
64
  reports of your program through email. And you can also define your own crash
59
65
  reporter functions and use them instead!
60
66
  + Argumentify : You can use the argumentify feature to decrease the number of lines you
61
67
  need to write to parse command-line arguments. It's colored by the way!
62
- + Any idea? Feel free to [open an issue](https://github.com/MPCodeWriter21/log21/issues) or submit a pull request.
68
+ + Any idea? Feel free to [open an issue](https://github.com/MPCodeWriter21/log21/issues)
69
+ or submit a pull request.
63
70
 
64
- ![issues](https://img.shields.io/github/issues/MPCodeWriter21/log21)
71
+ ![Issues](https://img.shields.io/github/issues/MPCodeWriter21/log21)
65
72
  ![contributors](https://img.shields.io/github/contributors/MPCodeWriter21/log21)
66
73
 
67
74
  Installation
@@ -69,8 +76,8 @@ Installation
69
76
 
70
77
  Well, this is a python package so the first thing you need is python.
71
78
 
72
- If you don't have python installed, please visit [Python.org](https://python.org) and install the latest version of
73
- python.
79
+ If you don't have python installed, please visit [Python.org](https://python.org) and
80
+ install the latest version of python.
74
81
 
75
82
  Then you can install log21 using pip module:
76
83
 
@@ -85,6 +92,7 @@ pip install .
85
92
  ```
86
93
 
87
94
  Or let the pip get it using git:
95
+
88
96
  ```bash
89
97
  pip install git+https://github.com/MPCodeWriter21/log21
90
98
  ```
@@ -92,23 +100,20 @@ pip install git+https://github.com/MPCodeWriter21/log21
92
100
  Changes
93
101
  -------
94
102
 
95
- ### 2.10.0
103
+ ### 2.10.1
96
104
 
97
- + Added some exception classes to raise in the "argumentified" functions to show
98
- *parser error* to the user: `ArgumentError`, `IncompatibleArguments`,
99
- `RequiredArgument`, `TooFewArguments`
105
+ + Updated the Argparse module to be usable with python 3.12.3.
100
106
 
101
107
  [Full CHANGELOG](https://github.com/MPCodeWriter21/log21/blob/master/CHANGELOG.md)
102
108
 
103
-
104
- Usage Examples:
109
+ Usage Examples
105
110
  ---------------
106
111
 
107
112
  See [EXAMPLES.md](https://github.com/MPCodeWriter21/log21/blob/master/EXAMPLES.md)
108
113
 
109
-
110
114
  About
111
115
  -----
116
+
112
117
  Author: CodeWriter21 (Mehrad Pooryoussof)
113
118
 
114
119
  GitHub: [MPCodeWriter21](https://github.com/MPCodeWriter21)
@@ -132,5 +137,5 @@ Or if you can't, give [this project](https://github.com/MPCodeWriter21/log21) a
132
137
  References
133
138
  ----------
134
139
 
135
- + ANSI Color Codes (
136
- Wikipedia): [https://en.wikipedia.org/wiki/ANSI_escape_code](https://en.wikipedia.org/wiki/ANSI_escape_code#Colors)
140
+ + ANSI Color Codes (Wikipedia):
141
+ [https://en.wikipedia.org/wiki/ANSI_escape_code](https://en.wikipedia.org/wiki/ANSI_escape_code#Colors)
@@ -7,30 +7,37 @@ log21
7
7
  ![repo size](https://img.shields.io/github/repo-size/MPCodeWriter21/log21)
8
8
  [![CodeFactor](https://www.codefactor.io/repository/github/mpcodewriter21/log21/badge)](https://www.codefactor.io/repository/github/mpcodewriter21/log21)
9
9
 
10
- A simple logging package that helps you log colorized messages in Windows console and other operating systems.
10
+ A simple logging package that helps you log colorized messages in Windows console and
11
+ other operating systems.
11
12
 
12
13
  Features
13
14
  --------
14
15
 
15
- + Colors : The main reason for this package was to log text in the Windows console with the support of ANSI colors.
16
- + Argument parsing : log21's argument parser can be used like python's argparse but it also colorizes the output.
17
- + Logging : A similar logger to logging. Logger but with colorized output and other options such as levelname
18
- modifications. It can also decolorize the output if you want to log into a file.
19
- + Pretty printing : Have you ever wanted to colorize the output of the pprint module? log21's pretty printer can do
20
- that.
21
- + Tree printing : You can pass a dict or list to `log21.tree_print` function and it will print it in a tree-like
22
- structure. It's also colorized XD.
23
- + ProgressBar : log21's progress bar can be used to show progress of a process in a beautiful way.
24
- + LoggingWindow : Helps you to log messages and debug your code in a window other than the console.
16
+ + Colors : The main reason for this package was to log text in the Windows console with
17
+ the support of ANSI colors.
18
+ + Argument parsing : log21's argument parser can be used like python's argparse but it
19
+ also colorizes the output.
20
+ + Logging : A similar logger to logging. Logger but with colorized output and other
21
+ options such as levelname modifications. It can also decolorize the output if you want
22
+ to log into a file.
23
+ + Pretty printing : Have you ever wanted to colorize the output of the pprint module?
24
+ log21's pretty printer can do that.
25
+ + Tree printing : You can pass a dict or list to `log21.tree_print` function and it will
26
+ print it in a tree-like structure. It's also colorized XD.
27
+ + ProgressBar : log21's progress bar can be used to show progress of a process in a
28
+ beautiful way.
29
+ + LoggingWindow : Helps you to log messages and debug your code in a window other than
30
+ the console.
25
31
  + CrashReporter : log21's crash reporter can be used to report crashes in different
26
32
  ways. You can use it to log crashes to console or files or use it to receive crash
27
33
  reports of your program through email. And you can also define your own crash
28
34
  reporter functions and use them instead!
29
35
  + Argumentify : You can use the argumentify feature to decrease the number of lines you
30
36
  need to write to parse command-line arguments. It's colored by the way!
31
- + Any idea? Feel free to [open an issue](https://github.com/MPCodeWriter21/log21/issues) or submit a pull request.
37
+ + Any idea? Feel free to [open an issue](https://github.com/MPCodeWriter21/log21/issues)
38
+ or submit a pull request.
32
39
 
33
- ![issues](https://img.shields.io/github/issues/MPCodeWriter21/log21)
40
+ ![Issues](https://img.shields.io/github/issues/MPCodeWriter21/log21)
34
41
  ![contributors](https://img.shields.io/github/contributors/MPCodeWriter21/log21)
35
42
 
36
43
  Installation
@@ -38,8 +45,8 @@ Installation
38
45
 
39
46
  Well, this is a python package so the first thing you need is python.
40
47
 
41
- If you don't have python installed, please visit [Python.org](https://python.org) and install the latest version of
42
- python.
48
+ If you don't have python installed, please visit [Python.org](https://python.org) and
49
+ install the latest version of python.
43
50
 
44
51
  Then you can install log21 using pip module:
45
52
 
@@ -54,6 +61,7 @@ pip install .
54
61
  ```
55
62
 
56
63
  Or let the pip get it using git:
64
+
57
65
  ```bash
58
66
  pip install git+https://github.com/MPCodeWriter21/log21
59
67
  ```
@@ -61,23 +69,20 @@ pip install git+https://github.com/MPCodeWriter21/log21
61
69
  Changes
62
70
  -------
63
71
 
64
- ### 2.10.0
72
+ ### 2.10.1
65
73
 
66
- + Added some exception classes to raise in the "argumentified" functions to show
67
- *parser error* to the user: `ArgumentError`, `IncompatibleArguments`,
68
- `RequiredArgument`, `TooFewArguments`
74
+ + Updated the Argparse module to be usable with python 3.12.3.
69
75
 
70
76
  [Full CHANGELOG](https://github.com/MPCodeWriter21/log21/blob/master/CHANGELOG.md)
71
77
 
72
-
73
- Usage Examples:
78
+ Usage Examples
74
79
  ---------------
75
80
 
76
81
  See [EXAMPLES.md](https://github.com/MPCodeWriter21/log21/blob/master/EXAMPLES.md)
77
82
 
78
-
79
83
  About
80
84
  -----
85
+
81
86
  Author: CodeWriter21 (Mehrad Pooryoussof)
82
87
 
83
88
  GitHub: [MPCodeWriter21](https://github.com/MPCodeWriter21)
@@ -101,5 +106,5 @@ Or if you can't, give [this project](https://github.com/MPCodeWriter21/log21) a
101
106
  References
102
107
  ----------
103
108
 
104
- + ANSI Color Codes (
105
- Wikipedia): [https://en.wikipedia.org/wiki/ANSI_escape_code](https://en.wikipedia.org/wiki/ANSI_escape_code#Colors)
109
+ + ANSI Color Codes (Wikipedia):
110
+ [https://en.wikipedia.org/wiki/ANSI_escape_code](https://en.wikipedia.org/wiki/ANSI_escape_code#Colors)
@@ -26,7 +26,7 @@ dependencies = [
26
26
  "webcolors",
27
27
  "docstring-parser"
28
28
  ]
29
- version = "2.10.0"
29
+ version = "2.10.2"
30
30
 
31
31
  [tool.setuptools.packages.find]
32
32
  where = ["src"]
@@ -280,15 +280,28 @@ class ColorizingHelpFormatter(_argparse.HelpFormatter):
280
280
  group_actions = set()
281
281
  inserts = {}
282
282
  for group in groups:
283
+ if not group._group_actions:
284
+ raise ValueError(f'empty group {group}')
285
+
283
286
  try:
284
287
  start = actions.index(group._group_actions[0])
285
288
  except ValueError:
286
289
  continue
287
290
  else:
288
- end = start + len(group._group_actions)
291
+ group_action_count = len(group._group_actions)
292
+ end = start + group_action_count
289
293
  if actions[start:end] == group._group_actions:
294
+
295
+ suppressed_actions_count = 0
290
296
  for action in group._group_actions:
291
297
  group_actions.add(action)
298
+ if action.help is _argparse.SUPPRESS:
299
+ suppressed_actions_count += 1
300
+
301
+ exposed_actions_count = group_action_count - suppressed_actions_count
302
+ if not exposed_actions_count:
303
+ continue
304
+
292
305
  if not group.required:
293
306
  if start in inserts:
294
307
  inserts[start] += ' ['
@@ -298,7 +311,7 @@ class ColorizingHelpFormatter(_argparse.HelpFormatter):
298
311
  inserts[end] += ']'
299
312
  else:
300
313
  inserts[end] = ']'
301
- else:
314
+ elif exposed_actions_count > 1:
302
315
  if start in inserts:
303
316
  inserts[start] += ' ('
304
317
  else:
@@ -941,7 +954,22 @@ class ColorizingArgumentParser(_argparse.ArgumentParser, _ActionsContainer):
941
954
 
942
955
  # get the optional identified at this index
943
956
  option_tuple = option_string_indices[start_index]
944
- action, option_string, explicit_arg = option_tuple
957
+ if len(option_tuple) == 3:
958
+ action, option_string, explicit_arg = option_tuple
959
+ sep = None
960
+ elif len(option_tuple) == 4:
961
+ action, option_string, sep, explicit_arg = option_tuple
962
+ else:
963
+ # Tell the user that there seem to have been a change in argparse module
964
+ # and if they see this error they should immediately report it in an
965
+ # issue at GitHub.com/MPCodeWriter21/log21 with their Python version
966
+ raise ValueError(
967
+ 'Unknown option tuple length, please report this issue at: '
968
+ 'https://GitHub.com/MPCodeWriter21/log21\n'
969
+ f'Python version: {_sys.version}'
970
+ f'Option tuple: {option_tuple}'
971
+ f'log21 version: {_log21.__version__}'
972
+ )
945
973
 
946
974
  # identify additional optionals in the same arg string
947
975
  # (e.g. -xyz is the same as -x -y -z if no args are required)
@@ -964,20 +992,27 @@ class ColorizingArgumentParser(_argparse.ArgumentParser, _ActionsContainer):
964
992
  # of the tail of the option string
965
993
  chars = self.prefix_chars
966
994
  if arg_count == 0 and option_string[1] not in chars:
995
+ if sep or explicit_arg[0] in chars:
996
+ msg = _gettext('ignored explicit argument %r')
997
+ raise _argparse.ArgumentError(action, msg % explicit_arg)
967
998
  action_tuples.append((action, [], option_string))
968
999
  char = option_string[0]
969
1000
  option_string = char + explicit_arg[0]
970
- new_explicit_arg = explicit_arg[1:] or None
971
1001
  optionals_map = self._option_string_actions
972
1002
  if option_string in optionals_map:
973
1003
  action = optionals_map[option_string]
974
- explicit_arg = new_explicit_arg
1004
+ explicit_arg = explicit_arg[1:]
1005
+ if not explicit_arg:
1006
+ sep = explicit_arg = None
1007
+ elif explicit_arg[0] == '=':
1008
+ sep = '='
1009
+ explicit_arg = explicit_arg[1:]
1010
+ else:
1011
+ sep = ''
975
1012
  else:
976
- msg = _gettext(
977
- f'ignored explicit argument {explicit_arg!r}'
978
- )
979
- raise _argparse.ArgumentError(action, msg)
980
-
1013
+ extras.append(char + explicit_arg)
1014
+ stop = start_index + 1
1015
+ break
981
1016
  # if the action expect exactly one argument, we've
982
1017
  # successfully matched the option; exit the loop
983
1018
  elif arg_count == 1:
@@ -989,8 +1024,8 @@ class ColorizingArgumentParser(_argparse.ArgumentParser, _ActionsContainer):
989
1024
  # error if a double-dash option did not use the
990
1025
  # explicit argument
991
1026
  else:
992
- msg = _gettext(f'ignored explicit argument {explicit_arg!r}')
993
- raise _argparse.ArgumentError(action, msg)
1027
+ msg = _gettext('ignored explicit argument %r')
1028
+ raise _argparse.ArgumentError(action, msg % explicit_arg)
994
1029
 
995
1030
  # if there is no explicit argument, try to match the
996
1031
  # optional's string arguments with the following strings
@@ -24,7 +24,7 @@ from .LoggingWindow import LoggingWindow, LoggingWindowHandler
24
24
  from .StreamHandler import StreamHandler, ColorizingStreamHandler
25
25
 
26
26
  __author__ = 'CodeWriter21 (Mehrad Pooryoussof)'
27
- __version__ = '2.10.0'
27
+ __version__ = '2.10.2'
28
28
  __github__ = 'Https://GitHub.com/MPCodeWriter21/log21'
29
29
  __all__ = [
30
30
  'ColorizingStreamHandler', 'DecolorizingFileHandler', 'ColorizingFormatter',
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: log21
3
- Version: 2.10.0
3
+ Version: 2.10.2
4
4
  Summary: A simple logging package that helps you log colorized messages in Windows console.
5
5
  Author-email: "CodeWriter21(Mehrad Pooryoussof)" <CodeWriter21@gmail.com>
6
6
  License: Apache License 2.0
@@ -38,30 +38,37 @@ log21
38
38
  ![repo size](https://img.shields.io/github/repo-size/MPCodeWriter21/log21)
39
39
  [![CodeFactor](https://www.codefactor.io/repository/github/mpcodewriter21/log21/badge)](https://www.codefactor.io/repository/github/mpcodewriter21/log21)
40
40
 
41
- A simple logging package that helps you log colorized messages in Windows console and other operating systems.
41
+ A simple logging package that helps you log colorized messages in Windows console and
42
+ other operating systems.
42
43
 
43
44
  Features
44
45
  --------
45
46
 
46
- + Colors : The main reason for this package was to log text in the Windows console with the support of ANSI colors.
47
- + Argument parsing : log21's argument parser can be used like python's argparse but it also colorizes the output.
48
- + Logging : A similar logger to logging. Logger but with colorized output and other options such as levelname
49
- modifications. It can also decolorize the output if you want to log into a file.
50
- + Pretty printing : Have you ever wanted to colorize the output of the pprint module? log21's pretty printer can do
51
- that.
52
- + Tree printing : You can pass a dict or list to `log21.tree_print` function and it will print it in a tree-like
53
- structure. It's also colorized XD.
54
- + ProgressBar : log21's progress bar can be used to show progress of a process in a beautiful way.
55
- + LoggingWindow : Helps you to log messages and debug your code in a window other than the console.
47
+ + Colors : The main reason for this package was to log text in the Windows console with
48
+ the support of ANSI colors.
49
+ + Argument parsing : log21's argument parser can be used like python's argparse but it
50
+ also colorizes the output.
51
+ + Logging : A similar logger to logging. Logger but with colorized output and other
52
+ options such as levelname modifications. It can also decolorize the output if you want
53
+ to log into a file.
54
+ + Pretty printing : Have you ever wanted to colorize the output of the pprint module?
55
+ log21's pretty printer can do that.
56
+ + Tree printing : You can pass a dict or list to `log21.tree_print` function and it will
57
+ print it in a tree-like structure. It's also colorized XD.
58
+ + ProgressBar : log21's progress bar can be used to show progress of a process in a
59
+ beautiful way.
60
+ + LoggingWindow : Helps you to log messages and debug your code in a window other than
61
+ the console.
56
62
  + CrashReporter : log21's crash reporter can be used to report crashes in different
57
63
  ways. You can use it to log crashes to console or files or use it to receive crash
58
64
  reports of your program through email. And you can also define your own crash
59
65
  reporter functions and use them instead!
60
66
  + Argumentify : You can use the argumentify feature to decrease the number of lines you
61
67
  need to write to parse command-line arguments. It's colored by the way!
62
- + Any idea? Feel free to [open an issue](https://github.com/MPCodeWriter21/log21/issues) or submit a pull request.
68
+ + Any idea? Feel free to [open an issue](https://github.com/MPCodeWriter21/log21/issues)
69
+ or submit a pull request.
63
70
 
64
- ![issues](https://img.shields.io/github/issues/MPCodeWriter21/log21)
71
+ ![Issues](https://img.shields.io/github/issues/MPCodeWriter21/log21)
65
72
  ![contributors](https://img.shields.io/github/contributors/MPCodeWriter21/log21)
66
73
 
67
74
  Installation
@@ -69,8 +76,8 @@ Installation
69
76
 
70
77
  Well, this is a python package so the first thing you need is python.
71
78
 
72
- If you don't have python installed, please visit [Python.org](https://python.org) and install the latest version of
73
- python.
79
+ If you don't have python installed, please visit [Python.org](https://python.org) and
80
+ install the latest version of python.
74
81
 
75
82
  Then you can install log21 using pip module:
76
83
 
@@ -85,6 +92,7 @@ pip install .
85
92
  ```
86
93
 
87
94
  Or let the pip get it using git:
95
+
88
96
  ```bash
89
97
  pip install git+https://github.com/MPCodeWriter21/log21
90
98
  ```
@@ -92,23 +100,20 @@ pip install git+https://github.com/MPCodeWriter21/log21
92
100
  Changes
93
101
  -------
94
102
 
95
- ### 2.10.0
103
+ ### 2.10.1
96
104
 
97
- + Added some exception classes to raise in the "argumentified" functions to show
98
- *parser error* to the user: `ArgumentError`, `IncompatibleArguments`,
99
- `RequiredArgument`, `TooFewArguments`
105
+ + Updated the Argparse module to be usable with python 3.12.3.
100
106
 
101
107
  [Full CHANGELOG](https://github.com/MPCodeWriter21/log21/blob/master/CHANGELOG.md)
102
108
 
103
-
104
- Usage Examples:
109
+ Usage Examples
105
110
  ---------------
106
111
 
107
112
  See [EXAMPLES.md](https://github.com/MPCodeWriter21/log21/blob/master/EXAMPLES.md)
108
113
 
109
-
110
114
  About
111
115
  -----
116
+
112
117
  Author: CodeWriter21 (Mehrad Pooryoussof)
113
118
 
114
119
  GitHub: [MPCodeWriter21](https://github.com/MPCodeWriter21)
@@ -132,5 +137,5 @@ Or if you can't, give [this project](https://github.com/MPCodeWriter21/log21) a
132
137
  References
133
138
  ----------
134
139
 
135
- + ANSI Color Codes (
136
- Wikipedia): [https://en.wikipedia.org/wiki/ANSI_escape_code](https://en.wikipedia.org/wiki/ANSI_escape_code#Colors)
140
+ + ANSI Color Codes (Wikipedia):
141
+ [https://en.wikipedia.org/wiki/ANSI_escape_code](https://en.wikipedia.org/wiki/ANSI_escape_code#Colors)
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes