nercone-modern 1.2.2__py3-none-any.whl → 1.3.0__py3-none-any.whl

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.
@@ -18,11 +18,11 @@ try:
18
18
  logger1.log("This is a info message", "INFO")
19
19
  logger1.log("This is a info message", "INFO")
20
20
  logger1.log("This is a info message", "INFO")
21
- logger2.log("This is an error message", "INFO")
21
+ logger2.log("This is a info message", "INFO")
22
22
  logger1.log("This is a warning message", "WARNING")
23
- logger1.log("This is an error message", "ERROR")
24
- logger1.log("This is an critical error message", "CRITICAL")
25
- prompt_result = logger1.prompt("This is an Prompt. Let's try it: ")
23
+ logger1.log("This is a error message", "ERROR")
24
+ logger1.log("This is a critical error message", "CRITICAL")
25
+ prompt_result = logger1.prompt("This is a Prompt. Let's try it: ")
26
26
  logger1.log(f"Answer is: {prompt_result}", "INFO")
27
27
 
28
28
  progress_bar1 = ModernProgressBar(total=100, process_name="Task 1", spinner_mode=False)
nercone_modern/logging.py CHANGED
@@ -47,7 +47,7 @@ class ModernLogging:
47
47
  global _max_proc_width
48
48
  _max_proc_width = max(_max_proc_width, len(process_name))
49
49
 
50
- def log(self, message="", level="INFO"):
50
+ def log(self, message: str = "", level: str = "INFO"):
51
51
  if not is_higher_priority(level, self.display_level):
52
52
  return
53
53
 
@@ -74,7 +74,7 @@ class ModernLogging:
74
74
  _last_process = self.process_name
75
75
  _last_level = level_text
76
76
 
77
- def prompt(self, message="", level="INFO") -> str:
77
+ def prompt(self, message: str = "", level: str = "INFO") -> str:
78
78
  if not is_higher_priority(level, self.display_level):
79
79
  return
80
80
 
@@ -102,7 +102,7 @@ class ModernLogging:
102
102
  _last_level = level_text
103
103
  return input()
104
104
 
105
- def _make(self, message, level_text, color, show_proc, show_level):
105
+ def _make(self, message: str, level_text: str, color: str, show_proc: bool, show_level: bool):
106
106
  global _max_proc_width
107
107
  level_width = max(MAX_LOG_LEVEL_WIDTH, len(level_text))
108
108
 
@@ -116,7 +116,7 @@ class ModernLogging:
116
116
 
117
117
  return f"{proc_part} {level_part} {str(message)}"
118
118
 
119
- def _color(self, color_name):
119
+ def _color(self, color_name: str = "reset"):
120
120
  if color_name == "cyan":
121
121
  return self._color_by_code(36)
122
122
  elif color_name == "magenta":
@@ -140,5 +140,5 @@ class ModernLogging:
140
140
  else:
141
141
  return ""
142
142
 
143
- def _color_by_code(self, color_code):
143
+ def _color_by_code(self, color_code: int | str = 0):
144
144
  return f"\033[{color_code}m"
@@ -14,7 +14,7 @@ class ModernProgressBar:
14
14
  _last_rendered = False
15
15
  _lock = threading.RLock()
16
16
 
17
- def __init__(self, total: int, process_name: str, spinner_mode=True):
17
+ def __init__(self, total: int, process_name: str, spinner_mode=False):
18
18
  self.total = total
19
19
  self.spinner_mode = spinner_mode
20
20
  self.current = 0
@@ -55,7 +55,7 @@ class ModernProgressBar:
55
55
  self._start_spinner_thread_if_needed()
56
56
  self._render(advance_spinner=False)
57
57
 
58
- def setMessage(self, message):
58
+ def setMessage(self, message: str = ""):
59
59
  self.message = message
60
60
 
61
61
  def start(self):
@@ -78,11 +78,13 @@ class ModernProgressBar:
78
78
  self._stop_spinner_thread()
79
79
  self._render(final=True, advance_spinner=False)
80
80
 
81
- def makeModernLogging(self, process_name):
81
+ def makeModernLogging(self, process_name: str = None):
82
82
  from .logging import ModernLogging
83
+ if not process_name:
84
+ process_name = self.process_name
83
85
  return ModernLogging(process_name)
84
86
 
85
- def logging(self, message, level="INFO", modernLogging=None):
87
+ def logging(self, message: str = "", level: str = "INFO", modernLogging=None):
86
88
  with ModernProgressBar._lock:
87
89
  self.log_lines = 0
88
90
  if modernLogging is None:
@@ -119,7 +121,7 @@ class ModernProgressBar:
119
121
  continue
120
122
  self._render()
121
123
 
122
- def _render(self, final=False, advance_spinner=True):
124
+ def _render(self, final: bool = False, advance_spinner: bool = True):
123
125
  with ModernProgressBar._lock:
124
126
  progress = self.current / self.total if self.total else 0
125
127
  bar = self._progress_bar(progress, advance_spinner=advance_spinner and self._should_spin())
@@ -145,7 +147,7 @@ class ModernProgressBar:
145
147
  sys.stdout.write(f"\033[{down_lines}B")
146
148
  sys.stdout.flush()
147
149
 
148
- def _progress_bar(self, progress, advance_spinner=True):
150
+ def _progress_bar(self, progress: int, advance_spinner: bool = True):
149
151
  bar_length = 20
150
152
  if not self._should_spin():
151
153
  empty_bar = "-"
@@ -174,7 +176,7 @@ class ModernProgressBar:
174
176
  def _should_spin(self):
175
177
  return self.spinner_mode and self._spinner_ready
176
178
 
177
- def _color(self, color_name):
179
+ def _color(self, color_name: str = "reset"):
178
180
  if color_name == "cyan":
179
181
  return self._color_by_code(36)
180
182
  elif color_name == "magenta":
@@ -198,5 +200,5 @@ class ModernProgressBar:
198
200
  else:
199
201
  return ""
200
202
 
201
- def _color_by_code(self, color_code):
203
+ def _color_by_code(self, color_code: int | str = 0):
202
204
  return f"\033[{color_code}m"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: nercone-modern
3
- Version: 1.2.2
3
+ Version: 1.3.0
4
4
  Summary: Modern Logging and Progress Bar Library
5
5
  Author: Nercone
6
6
  Author-email: Nercone <nercone@diamondgotcat.net>
@@ -38,19 +38,23 @@ pip3 install nercone-modern
38
38
 
39
39
  ## Usage
40
40
 
41
+ **Import**
42
+
41
43
  ```python
42
44
  from nercone_modern.logging import ModernLogging
43
45
  from nercone_modern.progressbar import ModernProgressBar
44
46
  ```
45
47
 
46
- ### Logging
48
+ **Logging**
47
49
 
48
50
  ```python
49
51
  logger = ModernLogging("Main", display_level="DEBUG")
50
52
  logger.log("This is a test message", level="INFO")
53
+ answer = logger.prompt("What's your name?", level="INFO")
54
+ logger.log(f"Answer: {answer}", level="DEBUG")
51
55
  ```
52
56
 
53
- ### Progress Bar
57
+ **Progress Bar**
54
58
 
55
59
  ```python
56
60
  progress_bar = ModernProgressBar(total=100, process_name="Task 1", spinner_mode=True)
@@ -60,9 +64,23 @@ time.sleep(5)
60
64
 
61
65
  progress_bar.spinner(False)
62
66
 
63
- for i in range(100):
67
+ progress_bar.setMessage("Step 1")
68
+
69
+ for i in range(50):
64
70
  time.sleep(0.05)
65
- progress_bar.update()
71
+ progress_bar.update(amount=1)
72
+
73
+ progress_bar.setMessage("Step 2")
74
+
75
+ for i in range(25):
76
+ time.sleep(0.03)
77
+ progress_bar.update(amount=1)
78
+
79
+ progress_bar.setMessage("Step 3")
80
+
81
+ for i in range(5):
82
+ time.sleep(1)
83
+ progress_bar.update(amount=5)
66
84
 
67
85
  progress_bar.finish()
68
86
  ```
@@ -0,0 +1,7 @@
1
+ nercone_modern/__init__.py,sha256=ArF3T8FdWIhwGcL4MfYcHqMse3n5gjuyzbLNlcqRcxs,443
2
+ nercone_modern/__main__.py,sha256=wKQnrGpTKemaaMv1oow_KKQFfPqxzhkz4KAhWBjVcYg,1957
3
+ nercone_modern/logging.py,sha256=p9biozctXNQmesChmn8ozCUKwBSC_5mdelCgbuZ3q0M,4945
4
+ nercone_modern/progressbar.py,sha256=bzlGg0dSj88eli2lM0cI4xTw2FNJqlJb352jdtJbsWQ,8088
5
+ nercone_modern-1.3.0.dist-info/WHEEL,sha256=5w2T7AS2mz1-rW9CNagNYWRCaB0iQqBMYLwKdlgiR4Q,78
6
+ nercone_modern-1.3.0.dist-info/METADATA,sha256=ud_YpKj5z4UVcTcaD34R5LcFOkwivtMRtc9n_zQwMs0,1772
7
+ nercone_modern-1.3.0.dist-info/RECORD,,
@@ -1,4 +1,4 @@
1
1
  Wheel-Version: 1.0
2
- Generator: uv 0.9.6
2
+ Generator: uv 0.9.7
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
@@ -1,7 +0,0 @@
1
- nercone_modern/__init__.py,sha256=ArF3T8FdWIhwGcL4MfYcHqMse3n5gjuyzbLNlcqRcxs,443
2
- nercone_modern/__main__.py,sha256=7ZhJgTJOF73XO3HwSed9LAyf9K9A-Bnqd8N3pTuV2b0,1962
3
- nercone_modern/logging.py,sha256=CVMyOGoHAP87A578hvFFc0mNNtNjXCn49rTQDWLo-fE,4860
4
- nercone_modern/progressbar.py,sha256=xPUDQG77pXyKT3YuEVQl8ERjWrZ1YXOnujEUwkFc0YA,7915
5
- nercone_modern-1.2.2.dist-info/WHEEL,sha256=UH59_qNuDUAa1VxQvC6fxmbl24EMw6DOIlT1yp8oeuU,78
6
- nercone_modern-1.2.2.dist-info/METADATA,sha256=e5rADnucSyZHDsNRyVJqG_aoocdU9igp85kt3s0u3Io,1403
7
- nercone_modern-1.2.2.dist-info/RECORD,,