mirror of
https://github.com/stashapp/CommunityScripts.git
synced 2025-12-16 00:48:05 -06:00
* fix css files * create workflow * format code using prettier * black ignore 3rd party folder * format py code using black * black exclude option in workflow * Don't format workflow files * Add contributing instructions to readme --------- Co-authored-by: WithoutPants <53250216+WithoutPants@users.noreply.github.com>
54 lines
1.1 KiB
Python
54 lines
1.1 KiB
Python
import sys
|
|
|
|
|
|
# Log messages sent from a plugin instance are transmitted via stderr and are
|
|
# encoded with a prefix consisting of special character SOH, then the log
|
|
# level (one of t, d, i, w, e, or p - corresponding to trace, debug, info,
|
|
# warning, error and progress levels respectively), then special character
|
|
# STX.
|
|
#
|
|
# The LogTrace, LogDebug, LogInfo, LogWarning, and LogError methods, and their equivalent
|
|
# formatted methods are intended for use by plugin instances to transmit log
|
|
# messages. The LogProgress method is also intended for sending progress data.
|
|
#
|
|
|
|
|
|
def __prefix(level_char):
|
|
start_level_char = b"\x01"
|
|
end_level_char = b"\x02"
|
|
|
|
ret = start_level_char + level_char + end_level_char
|
|
return ret.decode()
|
|
|
|
|
|
def __log(level_char, s):
|
|
if level_char == "":
|
|
return
|
|
|
|
print(__prefix(level_char) + s + "\n", file=sys.stderr, flush=True)
|
|
|
|
|
|
def LogTrace(s):
|
|
__log(b"t", s)
|
|
|
|
|
|
def LogDebug(s):
|
|
__log(b"d", s)
|
|
|
|
|
|
def LogInfo(s):
|
|
__log(b"i", s)
|
|
|
|
|
|
def LogWarning(s):
|
|
__log(b"w", s)
|
|
|
|
|
|
def LogError(s):
|
|
__log(b"e", s)
|
|
|
|
|
|
def LogProgress(p):
|
|
progress = min(max(0, p), 1)
|
|
__log(b"p", str(progress))
|