diff options
| author | Brianna Rainey | 2026-01-13 19:34:55 -0500 |
|---|---|---|
| committer | GitHub | 2026-01-13 19:34:55 -0500 |
| commit | 50f5a76603a3f97f2c6f6a1d3cefea88ed3497aa (patch) | |
| tree | 226fe223b31af6f217b1dd413629ab2cf26964d4 /src/avp/__init__.py | |
| parent | b8703752ffc7768b0275897b3c2a869ff41504e5 (diff) | |
| parent | f975144f25d34f97329b2d4e52891061573cea08 (diff) | |
Merge pull request #85 from aeliton/add-pyproject
Use pyproject.toml + uv_build
Diffstat (limited to 'src/avp/__init__.py')
| -rw-r--r-- | src/avp/__init__.py | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/src/avp/__init__.py b/src/avp/__init__.py new file mode 100644 index 0000000..ee9bebb --- /dev/null +++ b/src/avp/__init__.py @@ -0,0 +1,39 @@ +import sys +import os +import logging + + +__version__ = "2.1.0" + + +class Logger(logging.getLoggerClass()): + """ + Custom Logger class to handle custom VERBOSE log level. + Levels used in this program are as follows: + VERBOSE Annoyingly frequent debug messages (e.g, in loops) + DEBUG Ordinary debug information + INFO Expected events that are expensive or irreversible + WARNING A non-fatal error or suspicious behaviour + ERROR Any error that would interrupt the user + CRITICAL Things that really shouldn't happen at all + """ + + def __init__(self, name, level=logging.NOTSET): + super().__init__(name, level) + logging.addLevelName(5, "VERBOSE") + + def verbose(self, msg, *args, **kwargs): + if self.isEnabledFor(5): + self._log(5, msg, args, **kwargs) + + +logging.setLoggerClass(Logger) +logging.VERBOSE = 5 + + +if getattr(sys, "frozen", False): + # frozen + wd = os.path.dirname(sys.executable) +else: + # unfrozen + wd = os.path.dirname(os.path.realpath(__file__)) |
