absfuyu 5.0.0__py3-none-any.whl → 5.0.1__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.
Potentially problematic release.
This version of absfuyu might be problematic. Click here for more details.
- absfuyu/__init__.py +1 -1
- absfuyu/__main__.py +1 -1
- absfuyu/cli/__init__.py +2 -2
- absfuyu/cli/color.py +2 -2
- absfuyu/cli/config_group.py +2 -2
- absfuyu/cli/do_group.py +2 -2
- absfuyu/cli/game_group.py +2 -2
- absfuyu/cli/tool_group.py +2 -2
- absfuyu/config/__init__.py +1 -1
- absfuyu/core/__init__.py +1 -1
- absfuyu/core/baseclass.py +5 -5
- absfuyu/core/baseclass2.py +1 -1
- absfuyu/core/docstring.py +24 -21
- absfuyu/core/dummy_func.py +7 -5
- absfuyu/dxt/__init__.py +1 -1
- absfuyu/dxt/dictext.py +1 -1
- absfuyu/dxt/dxt_support.py +1 -1
- absfuyu/dxt/intext.py +1 -1
- absfuyu/dxt/listext.py +1 -1
- absfuyu/dxt/strext.py +2 -2
- absfuyu/extra/__init__.py +2 -2
- absfuyu/extra/beautiful.py +2 -1
- absfuyu/extra/data_analysis.py +1 -1
- absfuyu/fun/__init__.py +1 -1
- absfuyu/fun/tarot.py +2 -2
- absfuyu/game/__init__.py +2 -2
- absfuyu/game/game_stat.py +2 -2
- absfuyu/game/sudoku.py +2 -2
- absfuyu/game/tictactoe.py +2 -2
- absfuyu/game/wordle.py +2 -2
- absfuyu/general/__init__.py +4 -4
- absfuyu/general/content.py +2 -2
- absfuyu/general/shape.py +1 -1
- absfuyu/logger.py +2 -2
- absfuyu/pkg_data/__init__.py +1 -1
- absfuyu/pkg_data/deprecated.py +2 -2
- absfuyu/sort.py +2 -2
- absfuyu/tools/__init__.py +1 -1
- absfuyu/tools/checksum.py +1 -1
- absfuyu/tools/converter.py +1 -1
- absfuyu/tools/obfuscator.py +2 -2
- absfuyu/tools/passwordlib.py +2 -2
- absfuyu/tools/web.py +2 -2
- absfuyu/util/__init__.py +2 -2
- absfuyu/util/api.py +1 -1
- absfuyu/util/lunar.py +2 -2
- absfuyu/util/path.py +1 -1
- absfuyu/util/performance.py +1 -1
- absfuyu/util/shorten_number.py +1 -1
- absfuyu/util/zipped.py +2 -2
- absfuyu/version.py +59 -42
- {absfuyu-5.0.0.dist-info → absfuyu-5.0.1.dist-info}/METADATA +2 -2
- absfuyu-5.0.1.dist-info/RECORD +68 -0
- absfuyu-5.0.0.dist-info/RECORD +0 -68
- /absfuyu/{general → tools}/generator.py +0 -0
- {absfuyu-5.0.0.dist-info → absfuyu-5.0.1.dist-info}/WHEEL +0 -0
- {absfuyu-5.0.0.dist-info → absfuyu-5.0.1.dist-info}/entry_points.txt +0 -0
- {absfuyu-5.0.0.dist-info → absfuyu-5.0.1.dist-info}/licenses/LICENSE +0 -0
absfuyu/__init__.py
CHANGED
absfuyu/__main__.py
CHANGED
absfuyu/cli/__init__.py
CHANGED
absfuyu/cli/color.py
CHANGED
absfuyu/cli/config_group.py
CHANGED
absfuyu/cli/do_group.py
CHANGED
absfuyu/cli/game_group.py
CHANGED
absfuyu/cli/tool_group.py
CHANGED
absfuyu/config/__init__.py
CHANGED
absfuyu/core/__init__.py
CHANGED
absfuyu/core/baseclass.py
CHANGED
|
@@ -4,7 +4,7 @@ Absfuyu: Core
|
|
|
4
4
|
Bases for other features
|
|
5
5
|
|
|
6
6
|
Version: 5.0.0
|
|
7
|
-
Date updated:
|
|
7
|
+
Date updated: 25/02/2025 (dd/mm/yyyy)
|
|
8
8
|
"""
|
|
9
9
|
|
|
10
10
|
# Module Package
|
|
@@ -51,12 +51,12 @@ class ShowAllMethodsMixin:
|
|
|
51
51
|
@classmethod
|
|
52
52
|
def show_all_methods(
|
|
53
53
|
cls,
|
|
54
|
+
print_result: bool = False,
|
|
54
55
|
include_classmethod: bool = True,
|
|
55
56
|
classmethod_indicator: str = "<classmethod>",
|
|
56
57
|
include_staticmethod: bool = True,
|
|
57
58
|
staticmethod_indicator: str = "<staticmethod>",
|
|
58
59
|
include_private_method: bool = False,
|
|
59
|
-
print_result: bool = False,
|
|
60
60
|
) -> dict[str, list[str]]:
|
|
61
61
|
"""
|
|
62
62
|
Class method to display all methods of the class and its parent classes,
|
|
@@ -64,6 +64,9 @@ class ShowAllMethodsMixin:
|
|
|
64
64
|
|
|
65
65
|
Parameters
|
|
66
66
|
----------
|
|
67
|
+
print_result : bool, optional
|
|
68
|
+
Beautifully print the output, by default ``False``
|
|
69
|
+
|
|
67
70
|
include_classmethod : bool, optional
|
|
68
71
|
Whether to include classmethod in the output, by default ``True``
|
|
69
72
|
|
|
@@ -83,9 +86,6 @@ class ShowAllMethodsMixin:
|
|
|
83
86
|
include_private_method : bool, optional
|
|
84
87
|
Whether to include private method in the output, by default ``False``
|
|
85
88
|
|
|
86
|
-
print_result : bool, optional
|
|
87
|
-
Beautifully print the output, by default ``False``
|
|
88
|
-
|
|
89
89
|
Returns
|
|
90
90
|
-------
|
|
91
91
|
dict[str, list[str]]
|
absfuyu/core/baseclass2.py
CHANGED
absfuyu/core/docstring.py
CHANGED
|
@@ -4,7 +4,7 @@ Absfuyu: Core
|
|
|
4
4
|
Sphinx docstring decorator
|
|
5
5
|
|
|
6
6
|
Version: 5.0.0
|
|
7
|
-
Date updated:
|
|
7
|
+
Date updated: 23/02/2025 (dd/mm/yyyy)
|
|
8
8
|
"""
|
|
9
9
|
|
|
10
10
|
# Module Package
|
|
@@ -28,9 +28,9 @@ from typing import ClassVar, ParamSpec, TypeVar, overload
|
|
|
28
28
|
|
|
29
29
|
# Type
|
|
30
30
|
# ---------------------------------------------------------------------------
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
31
|
+
_P = ParamSpec("_P") # Parameter type
|
|
32
|
+
_R = TypeVar("_R") # Return type - Can be anything
|
|
33
|
+
_T = TypeVar("_T", bound=type) # Type type - Can be any subtype of `type`
|
|
34
34
|
|
|
35
35
|
_SPHINX_DOCS_TEMPLATE = Template("$line_break*$mode in version $version$reason*")
|
|
36
36
|
|
|
@@ -88,10 +88,13 @@ class SphinxDocstring:
|
|
|
88
88
|
self.mode = mode
|
|
89
89
|
|
|
90
90
|
@overload
|
|
91
|
-
def __call__(self, obj:
|
|
91
|
+
def __call__(self, obj: _T) -> _T: ... # Class overload
|
|
92
|
+
|
|
92
93
|
@overload
|
|
93
|
-
def __call__(
|
|
94
|
-
|
|
94
|
+
def __call__(
|
|
95
|
+
self, obj: Callable[_P, _R]
|
|
96
|
+
) -> Callable[_P, _R]: ... # Function overload
|
|
97
|
+
def __call__(self, obj: _T | Callable[_P, _R]) -> _T | Callable[_P, _R]:
|
|
95
98
|
# Class wrapper
|
|
96
99
|
if isinstance(obj, type): # if inspect.isclass(obj):
|
|
97
100
|
obj.__doc__ = (obj.__doc__ or "") + self._generate_version_note(
|
|
@@ -101,7 +104,7 @@ class SphinxDocstring:
|
|
|
101
104
|
|
|
102
105
|
# Function wrapper
|
|
103
106
|
@wraps(obj)
|
|
104
|
-
def wrapper(*args:
|
|
107
|
+
def wrapper(*args: _P.args, **kwargs: _P.kwargs) -> _R:
|
|
105
108
|
return obj(*args, **kwargs)
|
|
106
109
|
|
|
107
110
|
# Add docstring
|
|
@@ -127,19 +130,19 @@ class SphinxDocstring:
|
|
|
127
130
|
if docs is None:
|
|
128
131
|
return res
|
|
129
132
|
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
if
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
133
|
+
try:
|
|
134
|
+
# Replace tabs with space and split line
|
|
135
|
+
lines = docs.expandtabs(4).splitlines()
|
|
136
|
+
except UnicodeError:
|
|
137
|
+
return res
|
|
138
|
+
else:
|
|
139
|
+
# Get indentation of each line and unique it
|
|
140
|
+
indent_set = {len(line) - len(line.lstrip()) for line in lines[1:]}
|
|
141
|
+
# Drop 0
|
|
142
|
+
res_list = sorted([x for x in indent_set if x > 0])
|
|
143
|
+
|
|
144
|
+
if res_list:
|
|
145
|
+
return res_list[0]
|
|
143
146
|
return res
|
|
144
147
|
|
|
145
148
|
def _generate_version_note(self, num_of_white_spaces: int) -> str:
|
absfuyu/core/dummy_func.py
CHANGED
|
@@ -4,7 +4,7 @@ Absfuyu: Core
|
|
|
4
4
|
Dummy functions when other libraries are unvailable
|
|
5
5
|
|
|
6
6
|
Version: 5.0.0
|
|
7
|
-
Date updated:
|
|
7
|
+
Date updated: 22/02/2025 (dd/mm/yyyy)
|
|
8
8
|
"""
|
|
9
9
|
|
|
10
10
|
# Module Package
|
|
@@ -23,8 +23,9 @@ from importlib import import_module
|
|
|
23
23
|
# ---------------------------------------------------------------------------
|
|
24
24
|
# tqdm wrapper
|
|
25
25
|
try:
|
|
26
|
-
|
|
27
|
-
|
|
26
|
+
_tqdm = import_module("tqdm")
|
|
27
|
+
tqdm = getattr(_tqdm, "tqdm") # noqa
|
|
28
|
+
except (ModuleNotFoundError, AttributeError):
|
|
28
29
|
|
|
29
30
|
def tqdm(iterable, *args, **kwargs):
|
|
30
31
|
"""
|
|
@@ -36,8 +37,9 @@ except ModuleNotFoundError:
|
|
|
36
37
|
|
|
37
38
|
# unidecode wrapper
|
|
38
39
|
try:
|
|
39
|
-
|
|
40
|
-
|
|
40
|
+
_unidecode = import_module("unidecode")
|
|
41
|
+
unidecode = getattr(_unidecode, "unidecode") # noqa
|
|
42
|
+
except (ModuleNotFoundError, AttributeError):
|
|
41
43
|
|
|
42
44
|
def unidecode(*args, **kwargs):
|
|
43
45
|
"""
|
absfuyu/dxt/__init__.py
CHANGED
absfuyu/dxt/dictext.py
CHANGED
absfuyu/dxt/dxt_support.py
CHANGED
absfuyu/dxt/intext.py
CHANGED
absfuyu/dxt/listext.py
CHANGED
absfuyu/dxt/strext.py
CHANGED
|
@@ -4,7 +4,7 @@ Absfuyu: Data Extension
|
|
|
4
4
|
str extension
|
|
5
5
|
|
|
6
6
|
Version: 5.0.0
|
|
7
|
-
Date updated:
|
|
7
|
+
Date updated: 25/02/2025 (dd/mm/yyyy)
|
|
8
8
|
"""
|
|
9
9
|
|
|
10
10
|
# Module Package
|
|
@@ -18,8 +18,8 @@ import random
|
|
|
18
18
|
from typing import NotRequired, Self, TypedDict
|
|
19
19
|
|
|
20
20
|
from absfuyu.core import ShowAllMethodsMixin, deprecated, versionadded, versionchanged
|
|
21
|
-
from absfuyu.general.generator import Charset, Generator
|
|
22
21
|
from absfuyu.logger import logger
|
|
22
|
+
from absfuyu.tools.generator import Charset, Generator
|
|
23
23
|
from absfuyu.util import set_min_max
|
|
24
24
|
|
|
25
25
|
|
absfuyu/extra/__init__.py
CHANGED
absfuyu/extra/beautiful.py
CHANGED
|
@@ -4,7 +4,7 @@ Absfuyu: Beautiful
|
|
|
4
4
|
A decorator that makes output more beautiful
|
|
5
5
|
|
|
6
6
|
Version: 5.0.0
|
|
7
|
-
Date updated:
|
|
7
|
+
Date updated: 22/02/2025 (dd/mm/yyyy)
|
|
8
8
|
"""
|
|
9
9
|
|
|
10
10
|
# Module level
|
|
@@ -77,6 +77,7 @@ class PerformanceOutput(NamedTuple):
|
|
|
77
77
|
return out
|
|
78
78
|
|
|
79
79
|
|
|
80
|
+
# TODO: header and footer layout to 1,2,3 instead of true false
|
|
80
81
|
class BeautifulOutput:
|
|
81
82
|
"""A decorator that makes output more beautiful"""
|
|
82
83
|
|
absfuyu/extra/data_analysis.py
CHANGED
absfuyu/fun/__init__.py
CHANGED
absfuyu/fun/tarot.py
CHANGED
absfuyu/game/__init__.py
CHANGED
absfuyu/game/game_stat.py
CHANGED
absfuyu/game/sudoku.py
CHANGED
absfuyu/game/tictactoe.py
CHANGED
absfuyu/game/wordle.py
CHANGED
absfuyu/general/__init__.py
CHANGED
|
@@ -3,8 +3,8 @@ Absfuyu: General
|
|
|
3
3
|
----------------
|
|
4
4
|
Collection of useful classes
|
|
5
5
|
|
|
6
|
-
Version:
|
|
7
|
-
Date updated:
|
|
6
|
+
Version: 5.0.0
|
|
7
|
+
Date updated: 22/02/2025 (dd/mm/yyyy)
|
|
8
8
|
|
|
9
9
|
Features:
|
|
10
10
|
---------
|
|
@@ -15,9 +15,9 @@ Features:
|
|
|
15
15
|
|
|
16
16
|
# Module level
|
|
17
17
|
# ---------------------------------------------------------------------------
|
|
18
|
-
__all__ = ["content", "
|
|
18
|
+
__all__ = ["content", "shape", "human"]
|
|
19
19
|
|
|
20
20
|
|
|
21
21
|
# Libary
|
|
22
22
|
# ---------------------------------------------------------------------------
|
|
23
|
-
from absfuyu.general import content,
|
|
23
|
+
from absfuyu.general import content, human, shape
|
absfuyu/general/content.py
CHANGED
absfuyu/general/shape.py
CHANGED
absfuyu/logger.py
CHANGED
absfuyu/pkg_data/__init__.py
CHANGED
absfuyu/pkg_data/deprecated.py
CHANGED
absfuyu/sort.py
CHANGED
absfuyu/tools/__init__.py
CHANGED
absfuyu/tools/checksum.py
CHANGED
absfuyu/tools/converter.py
CHANGED
absfuyu/tools/obfuscator.py
CHANGED
|
@@ -4,7 +4,7 @@ Absfuyu: Obfuscator
|
|
|
4
4
|
Obfuscate code
|
|
5
5
|
|
|
6
6
|
Version: 5.0.0
|
|
7
|
-
Date updated:
|
|
7
|
+
Date updated: 25/02/2025 (dd/mm/yyyy)
|
|
8
8
|
"""
|
|
9
9
|
|
|
10
10
|
# Module level
|
|
@@ -24,8 +24,8 @@ from typing import ClassVar
|
|
|
24
24
|
|
|
25
25
|
from absfuyu.core import BaseClass, ShowAllMethodsMixin, versionadded
|
|
26
26
|
from absfuyu.dxt import Text
|
|
27
|
-
from absfuyu.general.generator import Charset, Generator
|
|
28
27
|
from absfuyu.logger import logger
|
|
28
|
+
from absfuyu.tools.generator import Charset, Generator
|
|
29
29
|
|
|
30
30
|
|
|
31
31
|
# Class
|
absfuyu/tools/passwordlib.py
CHANGED
|
@@ -4,7 +4,7 @@ Absfuyu: Passwordlib
|
|
|
4
4
|
Password library
|
|
5
5
|
|
|
6
6
|
Version: 5.0.0
|
|
7
|
-
Date updated:
|
|
7
|
+
Date updated: 22/02/2025 (dd/mm/yyyy)
|
|
8
8
|
"""
|
|
9
9
|
|
|
10
10
|
# Module level
|
|
@@ -23,9 +23,9 @@ from urllib.parse import quote, urlencode
|
|
|
23
23
|
|
|
24
24
|
from absfuyu.core import BaseClass, deprecated, versionadded
|
|
25
25
|
from absfuyu.dxt import DictExt, Text
|
|
26
|
-
from absfuyu.general.generator import Charset, Generator
|
|
27
26
|
from absfuyu.logger import logger
|
|
28
27
|
from absfuyu.pkg_data import DataList, DataLoader
|
|
28
|
+
from absfuyu.tools.generator import Charset, Generator
|
|
29
29
|
from absfuyu.util import set_min
|
|
30
30
|
|
|
31
31
|
|
absfuyu/tools/web.py
CHANGED
absfuyu/util/__init__.py
CHANGED
absfuyu/util/api.py
CHANGED
absfuyu/util/lunar.py
CHANGED
absfuyu/util/path.py
CHANGED
absfuyu/util/performance.py
CHANGED
absfuyu/util/shorten_number.py
CHANGED
absfuyu/util/zipped.py
CHANGED
|
@@ -3,8 +3,8 @@ Absfuyu: Zipped
|
|
|
3
3
|
---------------
|
|
4
4
|
Zipping stuff (deprecated soon, most features already in absfuyu.util.path.Directory)
|
|
5
5
|
|
|
6
|
-
Version:
|
|
7
|
-
Date updated:
|
|
6
|
+
Version: 5.0.0
|
|
7
|
+
Date updated: 22/02/2025 (dd/mm/yyyy)
|
|
8
8
|
"""
|
|
9
9
|
|
|
10
10
|
# Module level
|
absfuyu/version.py
CHANGED
|
@@ -3,10 +3,12 @@ Absfuyu: Version
|
|
|
3
3
|
----------------
|
|
4
4
|
Package versioning module
|
|
5
5
|
|
|
6
|
-
Version:
|
|
7
|
-
Date updated:
|
|
6
|
+
Version: 5.0.0
|
|
7
|
+
Date updated: 25/02/2025 (dd/mm/yyyy)
|
|
8
8
|
"""
|
|
9
9
|
|
|
10
|
+
# Module level
|
|
11
|
+
# ---------------------------------------------------------------------------
|
|
10
12
|
__all__ = [
|
|
11
13
|
# Options
|
|
12
14
|
"ReleaseOption",
|
|
@@ -18,42 +20,50 @@ __all__ = [
|
|
|
18
20
|
]
|
|
19
21
|
|
|
20
22
|
|
|
23
|
+
# Library
|
|
24
|
+
# ---------------------------------------------------------------------------
|
|
21
25
|
import json
|
|
22
26
|
import re
|
|
23
27
|
import subprocess
|
|
24
|
-
from
|
|
28
|
+
from enum import StrEnum
|
|
29
|
+
from typing import Self, TypedDict
|
|
25
30
|
from urllib.error import URLError
|
|
26
31
|
from urllib.request import Request, urlopen
|
|
27
32
|
|
|
33
|
+
from absfuyu.core import BaseClass
|
|
28
34
|
from absfuyu.logger import logger
|
|
29
35
|
|
|
30
36
|
|
|
31
|
-
|
|
37
|
+
# Class
|
|
38
|
+
# ---------------------------------------------------------------------------
|
|
39
|
+
class ReleaseOption(StrEnum):
|
|
32
40
|
"""
|
|
33
41
|
``MAJOR``, ``MINOR``, ``PATCH``
|
|
34
42
|
"""
|
|
35
43
|
|
|
36
|
-
MAJOR
|
|
37
|
-
MINOR
|
|
38
|
-
PATCH
|
|
44
|
+
MAJOR = "major"
|
|
45
|
+
MINOR = "minor"
|
|
46
|
+
PATCH = "patch"
|
|
39
47
|
|
|
40
|
-
|
|
48
|
+
@classmethod
|
|
49
|
+
def all_option(cls) -> list[str]:
|
|
41
50
|
"""Return a list of release options"""
|
|
42
|
-
return [
|
|
51
|
+
return [cls.MAJOR.value, cls.MINOR.value, cls.PATCH.value]
|
|
43
52
|
|
|
44
53
|
|
|
45
|
-
class ReleaseLevel:
|
|
54
|
+
class ReleaseLevel(StrEnum):
|
|
46
55
|
"""
|
|
47
56
|
``FINAL``, ``DEV``, ``RC``
|
|
48
57
|
"""
|
|
49
58
|
|
|
50
|
-
FINAL
|
|
51
|
-
DEV
|
|
52
|
-
RC
|
|
59
|
+
FINAL = "final"
|
|
60
|
+
DEV = "dev"
|
|
61
|
+
RC = "rc" # Release candidate
|
|
53
62
|
|
|
54
|
-
|
|
63
|
+
@classmethod
|
|
64
|
+
def all_level(cls) -> list[str]:
|
|
55
65
|
"""Return a list of release levels"""
|
|
56
|
-
return [
|
|
66
|
+
return [cls.FINAL.value, cls.DEV.value, cls.RC.value]
|
|
57
67
|
|
|
58
68
|
|
|
59
69
|
class VersionDictFormat(TypedDict):
|
|
@@ -74,30 +84,36 @@ class VersionDictFormat(TypedDict):
|
|
|
74
84
|
serial: int
|
|
75
85
|
|
|
76
86
|
|
|
77
|
-
class Version:
|
|
87
|
+
class Version(BaseClass):
|
|
78
88
|
"""Version"""
|
|
79
89
|
|
|
80
90
|
def __init__(
|
|
81
91
|
self,
|
|
82
|
-
major:
|
|
83
|
-
minor:
|
|
84
|
-
patch:
|
|
92
|
+
major: int | str,
|
|
93
|
+
minor: int | str,
|
|
94
|
+
patch: int | str,
|
|
85
95
|
release_level: str = ReleaseLevel.FINAL,
|
|
86
|
-
serial:
|
|
96
|
+
serial: int | str = 0,
|
|
87
97
|
) -> None:
|
|
88
98
|
"""
|
|
89
99
|
Create ``Version`` instance
|
|
90
100
|
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
+
Parameters
|
|
102
|
+
----------
|
|
103
|
+
major : int | str
|
|
104
|
+
Major change
|
|
105
|
+
|
|
106
|
+
minor : int | str
|
|
107
|
+
Minor change
|
|
108
|
+
|
|
109
|
+
patch : int | str
|
|
110
|
+
Patch
|
|
111
|
+
|
|
112
|
+
release_level : str, optional
|
|
113
|
+
Release level: ``final`` | ``rc`` | ``dev``, by default ``ReleaseLevel.FINAL``
|
|
114
|
+
|
|
115
|
+
serial : int | str, optional
|
|
116
|
+
Serial for release level ``rc`` | ``dev``, by default ``0``
|
|
101
117
|
"""
|
|
102
118
|
self.major: int = major if isinstance(major, int) else int(major)
|
|
103
119
|
self.minor: int = minor if isinstance(minor, int) else int(minor)
|
|
@@ -108,15 +124,16 @@ class Version:
|
|
|
108
124
|
def __str__(self) -> str:
|
|
109
125
|
return self.version
|
|
110
126
|
|
|
111
|
-
def __repr__(self) -> str:
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
127
|
+
# def __repr__(self) -> str:
|
|
128
|
+
# cls_name = self.__class__.__name__
|
|
129
|
+
# if self.release_level.startswith(ReleaseLevel.FINAL):
|
|
130
|
+
# return f"{cls_name}(major={self.major}, minor={self.minor}, patch={self.patch})"
|
|
131
|
+
# else:
|
|
132
|
+
# return (
|
|
133
|
+
# f"{cls_name}("
|
|
134
|
+
# f"major={self.major}, minor={self.minor}, patch={self.patch}, "
|
|
135
|
+
# f"release_level={self.release_level}, serial={self.serial})"
|
|
136
|
+
# )
|
|
120
137
|
|
|
121
138
|
def __format__(self, format_spec: str) -> str:
|
|
122
139
|
"""
|
|
@@ -166,8 +183,8 @@ class Version:
|
|
|
166
183
|
|
|
167
184
|
@classmethod
|
|
168
185
|
def from_tuple(
|
|
169
|
-
cls, iterable:
|
|
170
|
-
):
|
|
186
|
+
cls, iterable: tuple[int, int, int] | tuple[int, int, int, str, int]
|
|
187
|
+
) -> Self:
|
|
171
188
|
"""
|
|
172
189
|
Convert to ``Version`` from a ``tuple``
|
|
173
190
|
|
|
@@ -203,7 +220,7 @@ class Version:
|
|
|
203
220
|
raise ValueError("iterable must have len of 5 or 3")
|
|
204
221
|
|
|
205
222
|
@classmethod
|
|
206
|
-
def from_str(cls, version_string: str):
|
|
223
|
+
def from_str(cls, version_string: str) -> Self:
|
|
207
224
|
"""
|
|
208
225
|
Convert to ``Version`` from a ``str``
|
|
209
226
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: absfuyu
|
|
3
|
-
Version: 5.0.
|
|
3
|
+
Version: 5.0.1
|
|
4
4
|
Summary: A small collection of code
|
|
5
5
|
Project-URL: Homepage, https://github.com/AbsoluteWinter/absfuyu-public
|
|
6
6
|
Project-URL: Documentation, https://absolutewinter.github.io/absfuyu-docs/
|
|
@@ -110,7 +110,7 @@ There are many additional features available to explore.
|
|
|
110
110
|
|
|
111
111
|
For more detailed information about the project, please refer to the documentation available at the following link:
|
|
112
112
|
|
|
113
|
-
> [Project Documentation](https://absolutewinter.github.io/absfuyu/)
|
|
113
|
+
> [Project Documentation](https://absolutewinter.github.io/absfuyu-docs/)
|
|
114
114
|
|
|
115
115
|
## **DEVELOPMENT SETUP**
|
|
116
116
|
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
absfuyu/__init__.py,sha256=pDzdGzKO07dKGuByDoOGJGxanWFB9XKqTNY0BunlEyU,600
|
|
2
|
+
absfuyu/__main__.py,sha256=9bLz3WK0oG0jGTLE9pd3e3j3ldVaCfO2dsLFNneJ6fU,603
|
|
3
|
+
absfuyu/logger.py,sha256=zEu8Px0kCmdeMtawf8UWb_fwff1_ZG45U0iUjI6g9GU,13043
|
|
4
|
+
absfuyu/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
5
|
+
absfuyu/sort.py,sha256=BsXuDMuO-Q6hUZwmFspyLo5jc7rxgBFSdektIlVJ0BQ,3250
|
|
6
|
+
absfuyu/version.py,sha256=Smkc97D0lbfLcMFuMyfBqCmsKjgo7ws-NqbMmL9I4_Q,14489
|
|
7
|
+
absfuyu/cli/__init__.py,sha256=QQv0pYorucbEoeTydtHVPwMdpiiMK_eWTxinZgQviS8,1181
|
|
8
|
+
absfuyu/cli/color.py,sha256=S_y20gw4FEVtc_cCdRjxGW8HALi2vvRT8YurmwjMH54,774
|
|
9
|
+
absfuyu/cli/config_group.py,sha256=fvWkm70LnIiL6yc9Fn7Dlg32xsjiADyLAnS3_dx1VOE,1230
|
|
10
|
+
absfuyu/cli/do_group.py,sha256=8ZwtNEZ7nadPIr-KH-Dwj1y4trZsKOgUwiof52zbUYM,2131
|
|
11
|
+
absfuyu/cli/game_group.py,sha256=21U-8QCIZtdWf6fYBPip-sT0YvP4yoB9FmogW6NSCwA,2348
|
|
12
|
+
absfuyu/cli/tool_group.py,sha256=Sx3HJHJTtsEaagsCxykrkwgp3ft9aH6BRAqs1V4mI0Q,3164
|
|
13
|
+
absfuyu/config/__init__.py,sha256=4SrWqzP_PyIjMH9QT4JjSzJqtsOWmUFlEJeoCjGd_3g,8238
|
|
14
|
+
absfuyu/config/config.json,sha256=-ZQnmDuLq0aAFfsrQbSNR3tq5k9Eu9IVUQgYD9htIQM,646
|
|
15
|
+
absfuyu/core/__init__.py,sha256=vs2FCaiXoiG0v7nRMKMickfHbeC_quTtj6JiZpI7-iU,1186
|
|
16
|
+
absfuyu/core/baseclass.py,sha256=hNmqP8YIBuNUXGduNck31rXXuZ4smTUPbMKBV-Gj41Q,10204
|
|
17
|
+
absfuyu/core/baseclass2.py,sha256=4MZTUz8WSzJn-uGY5-lSHTzkDCsRDgLnntvMwQaF8_s,5366
|
|
18
|
+
absfuyu/core/decorator.py,sha256=MpmgAb1gsXgRDEyMJLvSxUWEG0WC4aTFYJAEwjdauAI,1901
|
|
19
|
+
absfuyu/core/docstring.py,sha256=1QaqnbQLVB9qjPz2a_oCFG04XxXmOM8yWUdEVmYzYCc,5287
|
|
20
|
+
absfuyu/core/dummy_cli.py,sha256=_-Gsmg2beO7fTSP-3nSGwqVmiVKpzTICIuHfGetQbw8,1884
|
|
21
|
+
absfuyu/core/dummy_func.py,sha256=msbauMSxlbbzLzgdJqeydhAF-R4WZiA5_h6h2_8809U,1221
|
|
22
|
+
absfuyu/dxt/__init__.py,sha256=XvvcsN9Ax9ywFEuvlq4JEY4Mto3_qhp56JgWwCiWUPY,986
|
|
23
|
+
absfuyu/dxt/dictext.py,sha256=aiCvNhdDQvuYteVKptLkpC0ni9rIbN26cYEPKpIbqps,5998
|
|
24
|
+
absfuyu/dxt/dxt_support.py,sha256=7xo2-gQWfgsqvLdh7pcyK1rx4XU1-G7nWx0VbKQ69tQ,2109
|
|
25
|
+
absfuyu/dxt/intext.py,sha256=h9p8OEzb0--8u7wq50BfGG1ExY7egV_Yh8CgP2hKsdw,16716
|
|
26
|
+
absfuyu/dxt/listext.py,sha256=_sCdbnKsEAR-V60wIZxyCtXIRA7HzTu6WvIgSb_TDjQ,13964
|
|
27
|
+
absfuyu/dxt/strext.py,sha256=5YWpDz-6lZH500KcQXyQRZ_7bsRWBROfTZi0Mkr5b00,14626
|
|
28
|
+
absfuyu/extra/__init__.py,sha256=fd7WZQYt_aRsTxih5n_DvXY-5PIGCawzia4uQ5Y3huc,182
|
|
29
|
+
absfuyu/extra/beautiful.py,sha256=Ae0zhieHIbMMIJUsxDmMEEw1X14CcoyAgr-Ic2YYR9I,8137
|
|
30
|
+
absfuyu/extra/data_analysis.py,sha256=fqJgmHv9KRP2SHFTUWGMPCB8zMgfXni1jMWwn1mPYRU,32005
|
|
31
|
+
absfuyu/fun/__init__.py,sha256=20kZpFoivJXhV9oHUHOuiPCbcGvQWFE9v62EUkj4cyU,5435
|
|
32
|
+
absfuyu/fun/tarot.py,sha256=xIJNKAxgDckE4UNn8lBaLMasOT1md04BaDI_h23AmsA,2401
|
|
33
|
+
absfuyu/game/__init__.py,sha256=iKrXSOFCFFCwQVHNIRJp1ItNqSOGRQHb-31_MamVE3U,4691
|
|
34
|
+
absfuyu/game/game_stat.py,sha256=OMMz4iyyMxvEHbhVEka2uEDtREyidcOO-HX5XZi5G88,1236
|
|
35
|
+
absfuyu/game/sudoku.py,sha256=yJt950Lwcbq-sxXw-lyi1bB1Ds0y9vqYfKNRzfXwRLY,10405
|
|
36
|
+
absfuyu/game/tictactoe.py,sha256=2VV0wM3pi1weVjTR0Yp0hiWqN09yPcHeUXoqa9YVI4U,9960
|
|
37
|
+
absfuyu/game/wordle.py,sha256=cD0AOhXp5uOnyEh6vtTODmJyXcjSmQz27Di3y6xB9JM,101576
|
|
38
|
+
absfuyu/general/__init__.py,sha256=OamzZUsVcaPcwA5wA5PYPv5xl-GHmAO9cL-vzX4TJy0,472
|
|
39
|
+
absfuyu/general/content.py,sha256=5wWYto6Na8SMyA6Lh5_C_cgKNok_JCDhQCQhsImNCBQ,17122
|
|
40
|
+
absfuyu/general/human.py,sha256=o1TswjgN8zRfCmkEgchS1HVq036twBB64u1Dt4KLI1I,8099
|
|
41
|
+
absfuyu/general/shape.py,sha256=GclEwdKtciPaGsZIDpmIDvC7UiHcRKRaxIi7yqBTnfs,38619
|
|
42
|
+
absfuyu/pkg_data/__init__.py,sha256=gWOdNVaisaMfn2XBYAammTytGwZK_iTKMgyirhNCN3I,5510
|
|
43
|
+
absfuyu/pkg_data/chemistry.pkl,sha256=kYWNa_PVffoDnzT8b9Jvimmf_GZshPe1D-SnEKERsLo,4655
|
|
44
|
+
absfuyu/pkg_data/deprecated.py,sha256=NG8aqVPrC08xPBZb1n1FwNTGi2ah03zzcrp8zieaf1k,4349
|
|
45
|
+
absfuyu/pkg_data/passwordlib_lzma.pkl,sha256=rT5lJT8t42BATU5Cp2qFwbnZkbx-QlUgodSvR0wFY6I,891877
|
|
46
|
+
absfuyu/pkg_data/tarot.pkl,sha256=ssXTCC_BQgslO5F-3a9HivbxFQ6BioIe2E1frPVi2m0,56195
|
|
47
|
+
absfuyu/tools/__init__.py,sha256=u5IvTdxpr1uEE9nPXmMaDzFHGZRja_CTwKYs505N8C8,118
|
|
48
|
+
absfuyu/tools/checksum.py,sha256=cA0jL7IX7CLMuunZfiaTVZNnfg0CEy8LXaxX_UnlNuo,5156
|
|
49
|
+
absfuyu/tools/converter.py,sha256=QxWPHSJtl-_i3q8LaKWeIcdUDkkhhO7jty1K-SgQYCY,11615
|
|
50
|
+
absfuyu/tools/generator.py,sha256=C54TJ3DZ5TXFYRI7_jLdtjTMcWxACX4Jmlo27Zh90Ew,8996
|
|
51
|
+
absfuyu/tools/keygen.py,sha256=JxhUiiaUHaGqVicXY46JjVrH3ke2QlnsRJqgIvlxUsg,7115
|
|
52
|
+
absfuyu/tools/obfuscator.py,sha256=c1tBG3nbGFi7ejjRbxgBMSYV8sBQCy9Ko6r9iBO3UwY,12685
|
|
53
|
+
absfuyu/tools/passwordlib.py,sha256=s_Z9EoHCnEpHwvei5Yigo9VKkDL3sNPUkDeg8cjfSWk,9630
|
|
54
|
+
absfuyu/tools/shutdownizer.py,sha256=z5z5ofdAtOBat1m7lz95FwXZI0fMarl2mChBMwUMi4I,8549
|
|
55
|
+
absfuyu/tools/web.py,sha256=JHeW9koW_5uRwE507_mtNJ8v0R7W2yvjDxJSClkWzLM,1240
|
|
56
|
+
absfuyu/util/__init__.py,sha256=h23kB8cx4-KLMiRPFnHlxTYVqt4ortI8wCc9vUc5UVg,3831
|
|
57
|
+
absfuyu/util/api.py,sha256=gd3QCuxRfOmiGhUpN3qqdWfD0o3VFOafbKplEwWpcz0,4288
|
|
58
|
+
absfuyu/util/json_method.py,sha256=a4xVabcw18HBLJthkmf5KNUcQya45-A8AFEpcGIDx3Q,2197
|
|
59
|
+
absfuyu/util/lunar.py,sha256=P6hF6H4BmJcY0S2Jq0_TkcaiLU5O-CnyfHYoLaWTx00,13630
|
|
60
|
+
absfuyu/util/path.py,sha256=ehKib-zSISx0XguRr-OlRnNlmR27rhVSfDGmjqh6CCg,16434
|
|
61
|
+
absfuyu/util/performance.py,sha256=kZbgC8CPEjzO8JWrTjT1NqAkQ3022M4zzp7G3caeUbk,8585
|
|
62
|
+
absfuyu/util/shorten_number.py,sha256=401H1k0wxc2W6qycH_gsEGtUmYdJt6KRzMNR4m94W38,7788
|
|
63
|
+
absfuyu/util/zipped.py,sha256=nJzKxLwle9wSiKL-615J40ARiK2y0mGCwNYJ0fOCHus,2979
|
|
64
|
+
absfuyu-5.0.1.dist-info/METADATA,sha256=ypxRsGR4WuBk9BMllZqqanH766SY5mUswgvVnHVUcpI,4844
|
|
65
|
+
absfuyu-5.0.1.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
66
|
+
absfuyu-5.0.1.dist-info/entry_points.txt,sha256=bW5CgJRTTWJ2Pywojo07sf-YucRPcnHzMmETh5avbX0,79
|
|
67
|
+
absfuyu-5.0.1.dist-info/licenses/LICENSE,sha256=pFCHBSNSzdXwYG1AHpq7VcofI1NMQ1Fc77RzZ4Ln2O4,1097
|
|
68
|
+
absfuyu-5.0.1.dist-info/RECORD,,
|
absfuyu-5.0.0.dist-info/RECORD
DELETED
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
absfuyu/__init__.py,sha256=0fFKIm3iQEyqB0IdZIIqBe5bF7CCRl7ZD4mxwa_GxF0,600
|
|
2
|
-
absfuyu/__main__.py,sha256=vUKjwcjMvynbeygRLuXWMKR2vR7CndZ496xx2Qzb6xk,603
|
|
3
|
-
absfuyu/logger.py,sha256=VP9-sXtGVyDkHUyRSaGUfCrl_wn8wOnmtCLcUNec-yg,13043
|
|
4
|
-
absfuyu/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
5
|
-
absfuyu/sort.py,sha256=WjH0asrvl02TMlAhG77X-wGcGHIIQd-jWU_Xv9Xv-qc,3250
|
|
6
|
-
absfuyu/version.py,sha256=KMaeXNl93L4VU2RnTySoFv23IDyTvHfy84nyatFcKaE,14128
|
|
7
|
-
absfuyu/cli/__init__.py,sha256=mYX6lVAat9UOI9qR-ZDFw_4WOLVA9r-jTtW8d2fBEKM,1181
|
|
8
|
-
absfuyu/cli/color.py,sha256=Cvpqwc5mb4-71OplswgfxmJ8D9jf9gkjM7l3qV902X0,774
|
|
9
|
-
absfuyu/cli/config_group.py,sha256=FsyYm2apSyAA2PAD12CpHAizenRds_QlLf8j0AlLuVo,1230
|
|
10
|
-
absfuyu/cli/do_group.py,sha256=QBOL3Z6E70-_kPOivaH160lmFyOL2Zl70Qjda_fV0Fc,2131
|
|
11
|
-
absfuyu/cli/game_group.py,sha256=ySpL2hm4VCplhNY0s22kBGI5eFCdJj9fm1T58yftU74,2348
|
|
12
|
-
absfuyu/cli/tool_group.py,sha256=ZruYcBLCjP2G0CgyE19WsRJ2kn2H1fKEZ0pa0KF6tyI,3164
|
|
13
|
-
absfuyu/config/__init__.py,sha256=yWN-TguDXcWJg5EiCGRnKLsTZQfIYvKVHhzASNp2S0s,8238
|
|
14
|
-
absfuyu/config/config.json,sha256=-ZQnmDuLq0aAFfsrQbSNR3tq5k9Eu9IVUQgYD9htIQM,646
|
|
15
|
-
absfuyu/core/__init__.py,sha256=oZpRrxIU66dN4UYO61TM72oE0Ijs_3wajdYCg12SJlw,1186
|
|
16
|
-
absfuyu/core/baseclass.py,sha256=t5oyfwBw5Mm5wLp2o_JnTNx0v9njEb_OeRlzOTbc5KM,10204
|
|
17
|
-
absfuyu/core/baseclass2.py,sha256=5meEqRk0pPoDlhA0_qti_-p-fHvxT6XqwitHLpFVl_Q,5366
|
|
18
|
-
absfuyu/core/decorator.py,sha256=MpmgAb1gsXgRDEyMJLvSxUWEG0WC4aTFYJAEwjdauAI,1901
|
|
19
|
-
absfuyu/core/docstring.py,sha256=2TmPXXtJKszfBPPHXDMPjrTCpVFwxmS8J5XhWb4myNc,5228
|
|
20
|
-
absfuyu/core/dummy_cli.py,sha256=_-Gsmg2beO7fTSP-3nSGwqVmiVKpzTICIuHfGetQbw8,1884
|
|
21
|
-
absfuyu/core/dummy_func.py,sha256=AS7kgMWeXZoYF94gocyydAfkyOM7W2v1F9wNQ40ta-Q,1097
|
|
22
|
-
absfuyu/dxt/__init__.py,sha256=IHTjk-GdeKp5s9mhH87WUrHVb9gY34WUzrjQEw0q9II,986
|
|
23
|
-
absfuyu/dxt/dictext.py,sha256=_q45v98x2sB38QBROg-Fbd6Aw63HO5hPIEJENI39d-E,5998
|
|
24
|
-
absfuyu/dxt/dxt_support.py,sha256=dWMbFYiRUhX9QHxChYo_YzwCywylUi1R5h28y13Wn4I,2109
|
|
25
|
-
absfuyu/dxt/intext.py,sha256=wMmjt24c-0Kk3gJx1ln0ULNdrxmgeDh3zUOUTD6cQBo,16716
|
|
26
|
-
absfuyu/dxt/listext.py,sha256=lqWVQ1uBZ3zm0d1S0oVz0qjTagbucZjQ3htcFzc24tg,13964
|
|
27
|
-
absfuyu/dxt/strext.py,sha256=UDS818z4Rv92gCgdlfz_ibr3vsip6Sgxp-yfI8JyPho,14628
|
|
28
|
-
absfuyu/extra/__init__.py,sha256=lyJwiRHvCL3qNYKK9mbjNrzIHGDPERyfwl8_V6g4PEE,182
|
|
29
|
-
absfuyu/extra/beautiful.py,sha256=llxgAYco5-bg6VC1kMwA7VyCSJgu4LdCHBG0pM1PWs8,8072
|
|
30
|
-
absfuyu/extra/data_analysis.py,sha256=0zfjWm3t1nyp0n0rsPKzWmcR0ZvF7BpQsjn9niGqhps,32005
|
|
31
|
-
absfuyu/fun/__init__.py,sha256=tDSDIDHrJPQ_hWV7ASpbAUCIQ6B1t1IPq4ahrZQqfWk,5435
|
|
32
|
-
absfuyu/fun/tarot.py,sha256=E9NKwhebU4EGOcbQkt4Ni7o6ZIYq8-h7_Fz3jk0Arpw,2401
|
|
33
|
-
absfuyu/game/__init__.py,sha256=tkNxTbdkPtAhGEdqXFQARHYApEhcD68CeDF_oHMzVeA,4691
|
|
34
|
-
absfuyu/game/game_stat.py,sha256=mOs6UOvNUmr-vNOomNJK0lY9o9m9Rs0b9GEMGeXaAdE,1236
|
|
35
|
-
absfuyu/game/sudoku.py,sha256=ascN8ey7SimldXT8ae3AWv4bxlfwT4X14JdmxY2o808,10405
|
|
36
|
-
absfuyu/game/tictactoe.py,sha256=_JLeIhxHEIDLRJay7i1kagxx8kCDhZNgTrXt7Rl0ntc,9960
|
|
37
|
-
absfuyu/game/wordle.py,sha256=izvV_lOZwPnslDdQ73PnwD5t5ECKVWGhpZvHAZH-2EY,101576
|
|
38
|
-
absfuyu/general/__init__.py,sha256=EITlDmPAp6lcAWR9Bq707j4FZ9jAD9PblftOK1XvGDA,480
|
|
39
|
-
absfuyu/general/content.py,sha256=wGzYufji8PmHy6ygGFclf_u6DZudnYaeHtR9d2of_1E,17122
|
|
40
|
-
absfuyu/general/generator.py,sha256=C54TJ3DZ5TXFYRI7_jLdtjTMcWxACX4Jmlo27Zh90Ew,8996
|
|
41
|
-
absfuyu/general/human.py,sha256=o1TswjgN8zRfCmkEgchS1HVq036twBB64u1Dt4KLI1I,8099
|
|
42
|
-
absfuyu/general/shape.py,sha256=dAYSihPnanax4jMPSvZMIzMbo9puvxIqdQxuSlDLl4I,38619
|
|
43
|
-
absfuyu/pkg_data/__init__.py,sha256=Jn8fHDsPCd8w4YoOo3EpoExxda5BRAjHQJRdYwwTYeA,5510
|
|
44
|
-
absfuyu/pkg_data/chemistry.pkl,sha256=kYWNa_PVffoDnzT8b9Jvimmf_GZshPe1D-SnEKERsLo,4655
|
|
45
|
-
absfuyu/pkg_data/deprecated.py,sha256=L1ju3m_P8DbqQ1l18XgneVixorWiLJ5HeKh_K3wovXM,4349
|
|
46
|
-
absfuyu/pkg_data/passwordlib_lzma.pkl,sha256=rT5lJT8t42BATU5Cp2qFwbnZkbx-QlUgodSvR0wFY6I,891877
|
|
47
|
-
absfuyu/pkg_data/tarot.pkl,sha256=ssXTCC_BQgslO5F-3a9HivbxFQ6BioIe2E1frPVi2m0,56195
|
|
48
|
-
absfuyu/tools/__init__.py,sha256=g6-2banBKxGfAbsVTd-OZhLujixXApsQmx2RlAB_aGE,118
|
|
49
|
-
absfuyu/tools/checksum.py,sha256=1WLC9GGmjehxhhV-BgdxJbA45QhN850u_znOgwoYDP0,5156
|
|
50
|
-
absfuyu/tools/converter.py,sha256=tdDQpdzbB9RdcZIlcV6LzldDkVEiwCFzRoWCfJVCpn4,11615
|
|
51
|
-
absfuyu/tools/keygen.py,sha256=JxhUiiaUHaGqVicXY46JjVrH3ke2QlnsRJqgIvlxUsg,7115
|
|
52
|
-
absfuyu/tools/obfuscator.py,sha256=vy_nIyQeDci6vHFbHL907Ha6RUZm9axsSZw_nKyyYBc,12687
|
|
53
|
-
absfuyu/tools/passwordlib.py,sha256=jEmKW63fTyGOtBPPVi44fMtcNu1W7m2Qkox-GHxTxH4,9632
|
|
54
|
-
absfuyu/tools/shutdownizer.py,sha256=z5z5ofdAtOBat1m7lz95FwXZI0fMarl2mChBMwUMi4I,8549
|
|
55
|
-
absfuyu/tools/web.py,sha256=rVF-60IT8J_RVxMPzz5bhgBq3i1WmwbR5ouzQ_CZwhQ,1240
|
|
56
|
-
absfuyu/util/__init__.py,sha256=3Ylck5HBHAhFd_B_v6Bh3C1qyI1M0Kk9sK9nNIBLHqU,3831
|
|
57
|
-
absfuyu/util/api.py,sha256=xXwffnpq1qxBIag_MOriKe3ueaCdsaq-WFRIH-8yFqI,4288
|
|
58
|
-
absfuyu/util/json_method.py,sha256=a4xVabcw18HBLJthkmf5KNUcQya45-A8AFEpcGIDx3Q,2197
|
|
59
|
-
absfuyu/util/lunar.py,sha256=8dxXdGU7V_5L9fOeq36oKDzs_DcLnIiFwIpHa1O22yc,13630
|
|
60
|
-
absfuyu/util/path.py,sha256=0hRzobegpblgCIluy9wXFNCwlDoovz_ccVCwaVqvgo8,16434
|
|
61
|
-
absfuyu/util/performance.py,sha256=aN_0WGJfupqh8FdgsEU4llkDpUNAlojlWXtlRGMFmJE,8585
|
|
62
|
-
absfuyu/util/shorten_number.py,sha256=7-uH4zwy594pVnqqGe75IoS7vqEXx3DIA9nRl8hrQpw,7788
|
|
63
|
-
absfuyu/util/zipped.py,sha256=fXLVt4hnIgN2hwhvbwxzYQC1r--RX2Hgb429r767WDI,2979
|
|
64
|
-
absfuyu-5.0.0.dist-info/METADATA,sha256=J29q7jABMmx_LkCQVw9aL9BYsGk3QdTBsA4W0WyeF2s,4839
|
|
65
|
-
absfuyu-5.0.0.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
66
|
-
absfuyu-5.0.0.dist-info/entry_points.txt,sha256=bW5CgJRTTWJ2Pywojo07sf-YucRPcnHzMmETh5avbX0,79
|
|
67
|
-
absfuyu-5.0.0.dist-info/licenses/LICENSE,sha256=pFCHBSNSzdXwYG1AHpq7VcofI1NMQ1Fc77RzZ4Ln2O4,1097
|
|
68
|
-
absfuyu-5.0.0.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|