t-bug-catcher 0.4.5__tar.gz → 0.4.7__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.
- {t_bug_catcher-0.4.5 → t_bug_catcher-0.4.7}/PKG-INFO +1 -1
- {t_bug_catcher-0.4.5 → t_bug_catcher-0.4.7}/setup.cfg +1 -1
- {t_bug_catcher-0.4.5 → t_bug_catcher-0.4.7}/setup.py +1 -1
- {t_bug_catcher-0.4.5 → t_bug_catcher-0.4.7}/t_bug_catcher/__init__.py +1 -1
- {t_bug_catcher-0.4.5 → t_bug_catcher-0.4.7}/t_bug_catcher/jira.py +2 -2
- {t_bug_catcher-0.4.5 → t_bug_catcher-0.4.7}/t_bug_catcher/utils/common.py +17 -10
- {t_bug_catcher-0.4.5 → t_bug_catcher-0.4.7}/t_bug_catcher.egg-info/PKG-INFO +1 -1
- {t_bug_catcher-0.4.5 → t_bug_catcher-0.4.7}/MANIFEST.in +0 -0
- {t_bug_catcher-0.4.5 → t_bug_catcher-0.4.7}/README.rst +0 -0
- {t_bug_catcher-0.4.5 → t_bug_catcher-0.4.7}/pyproject.toml +0 -0
- {t_bug_catcher-0.4.5 → t_bug_catcher-0.4.7}/requirements.txt +0 -0
- {t_bug_catcher-0.4.5 → t_bug_catcher-0.4.7}/t_bug_catcher/bug_catcher.py +0 -0
- {t_bug_catcher-0.4.5 → t_bug_catcher-0.4.7}/t_bug_catcher/bug_snag.py +0 -0
- {t_bug_catcher-0.4.5 → t_bug_catcher-0.4.7}/t_bug_catcher/config.py +0 -0
- {t_bug_catcher-0.4.5 → t_bug_catcher-0.4.7}/t_bug_catcher/exceptions.py +0 -0
- {t_bug_catcher-0.4.5 → t_bug_catcher-0.4.7}/t_bug_catcher/resources/whispers_config.yml +0 -0
- {t_bug_catcher-0.4.5 → t_bug_catcher-0.4.7}/t_bug_catcher/stack_saver.py +0 -0
- {t_bug_catcher-0.4.5 → t_bug_catcher-0.4.7}/t_bug_catcher/utils/__init__.py +0 -0
- {t_bug_catcher-0.4.5 → t_bug_catcher-0.4.7}/t_bug_catcher/utils/logger.py +0 -0
- {t_bug_catcher-0.4.5 → t_bug_catcher-0.4.7}/t_bug_catcher/workitems.py +0 -0
- {t_bug_catcher-0.4.5 → t_bug_catcher-0.4.7}/t_bug_catcher.egg-info/SOURCES.txt +0 -0
- {t_bug_catcher-0.4.5 → t_bug_catcher-0.4.7}/t_bug_catcher.egg-info/dependency_links.txt +0 -0
- {t_bug_catcher-0.4.5 → t_bug_catcher-0.4.7}/t_bug_catcher.egg-info/not-zip-safe +0 -0
- {t_bug_catcher-0.4.5 → t_bug_catcher-0.4.7}/t_bug_catcher.egg-info/requires.txt +0 -0
- {t_bug_catcher-0.4.5 → t_bug_catcher-0.4.7}/t_bug_catcher.egg-info/top_level.txt +0 -0
- {t_bug_catcher-0.4.5 → t_bug_catcher-0.4.7}/tests/test_t_bug_catcher.py +0 -0
|
@@ -26,7 +26,7 @@ setup(
|
|
|
26
26
|
packages=find_packages(include=["t_bug_catcher", "t_bug_catcher.*"]),
|
|
27
27
|
test_suite="tests",
|
|
28
28
|
url="https://www.thoughtful.ai/",
|
|
29
|
-
version="0.4.
|
|
29
|
+
version="0.4.7",
|
|
30
30
|
zip_safe=False,
|
|
31
31
|
install_requires=install_requirements,
|
|
32
32
|
include_package_data=True,
|
|
@@ -914,7 +914,7 @@ class Jira:
|
|
|
914
914
|
if issue_status.lower() not in ["to do", "open"]:
|
|
915
915
|
self.issue_transition(
|
|
916
916
|
ticket_id=existing_ticket["id"],
|
|
917
|
-
transition_id=self._transition_types.get("to do"
|
|
917
|
+
transition_id=self._transition_types.get("to do") or self._transition_types.get("open"),
|
|
918
918
|
)
|
|
919
919
|
self.update_comment(
|
|
920
920
|
ticket_id=existing_ticket["id"],
|
|
@@ -1165,7 +1165,7 @@ class Jira:
|
|
|
1165
1165
|
labels=["bug_catcher"],
|
|
1166
1166
|
priority=priority,
|
|
1167
1167
|
)
|
|
1168
|
-
if os.path.exists(stack_trace):
|
|
1168
|
+
if stack_trace and os.path.exists(stack_trace):
|
|
1169
1169
|
os.remove(stack_trace)
|
|
1170
1170
|
return response
|
|
1171
1171
|
except Exception as ex:
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import copy
|
|
1
2
|
import traceback
|
|
2
3
|
from datetime import date, datetime
|
|
3
4
|
from json import JSONEncoder
|
|
@@ -21,20 +22,26 @@ class Encoder(JSONEncoder):
|
|
|
21
22
|
str: The json string.
|
|
22
23
|
"""
|
|
23
24
|
try:
|
|
24
|
-
|
|
25
|
+
object_copy = copy.deepcopy(o)
|
|
26
|
+
except TypeError:
|
|
27
|
+
return str(o)
|
|
28
|
+
try:
|
|
29
|
+
if hasattr(object_copy, "__dict__"):
|
|
25
30
|
keys_to_remove = [
|
|
26
|
-
key
|
|
31
|
+
key
|
|
32
|
+
for key in object_copy.__dict__.keys()
|
|
33
|
+
if any(s in str(key).lower() for s in CONFIG.KEYS_TO_REMOVE)
|
|
27
34
|
]
|
|
28
35
|
for key in keys_to_remove:
|
|
29
|
-
del
|
|
30
|
-
return {str(key): str(value) for key, value in
|
|
31
|
-
if isinstance(
|
|
32
|
-
return
|
|
33
|
-
if isinstance(
|
|
34
|
-
return str(
|
|
35
|
-
return super().default(self,
|
|
36
|
+
del object_copy.__dict__[key]
|
|
37
|
+
return {str(key): str(value) for key, value in object_copy.__dict__.items()}
|
|
38
|
+
if isinstance(object_copy, (datetime, date)):
|
|
39
|
+
return object_copy.isoformat()
|
|
40
|
+
if isinstance(object_copy, Path):
|
|
41
|
+
return str(object_copy)
|
|
42
|
+
return super().default(self, object_copy)
|
|
36
43
|
except TypeError:
|
|
37
|
-
return str(
|
|
44
|
+
return str(object_copy)
|
|
38
45
|
|
|
39
46
|
|
|
40
47
|
def get_frames(exc_traceback: TracebackType) -> List:
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|