httpdbg 0.24.0__tar.gz → 0.24.2__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.
Files changed (74) hide show
  1. {httpdbg-0.24.0 → httpdbg-0.24.2}/PKG-INFO +1 -1
  2. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/__init__.py +1 -1
  3. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/initiator.py +8 -3
  4. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/records.py +16 -11
  5. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg.egg-info/PKG-INFO +1 -1
  6. {httpdbg-0.24.0 → httpdbg-0.24.2}/LICENSE +0 -0
  7. {httpdbg-0.24.0 → httpdbg-0.24.2}/README.md +0 -0
  8. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/__main__.py +0 -0
  9. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/args.py +0 -0
  10. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/env.py +0 -0
  11. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/exception.py +0 -0
  12. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/hooks/__init__.py +0 -0
  13. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/hooks/aiohttp.py +0 -0
  14. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/hooks/all.py +0 -0
  15. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/hooks/external.py +0 -0
  16. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/hooks/generic.py +0 -0
  17. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/hooks/httpx.py +0 -0
  18. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/hooks/pytest.py +0 -0
  19. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/hooks/requests.py +0 -0
  20. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/hooks/socket.py +0 -0
  21. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/hooks/urllib3.py +0 -0
  22. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/hooks/utils.py +0 -0
  23. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/mode_console.py +0 -0
  24. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/mode_module.py +0 -0
  25. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/mode_script.py +0 -0
  26. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/preview.py +0 -0
  27. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/server.py +0 -0
  28. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/utils.py +0 -0
  29. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/webapp/__init__.py +0 -0
  30. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/webapp/api.py +0 -0
  31. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/webapp/app.py +0 -0
  32. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/webapp/static/api.js +0 -0
  33. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/webapp/static/column.css +0 -0
  34. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/webapp/static/configuration.js +0 -0
  35. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/webapp/static/detail.css +0 -0
  36. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/webapp/static/favicon.ico +0 -0
  37. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/webapp/static/filter.js +0 -0
  38. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/webapp/static/icons/chevron-direction-top-outline-icon.svg +0 -0
  39. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/webapp/static/icons/download-install-line-icon.svg +0 -0
  40. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/webapp/static/icons/engine-gears-icon.svg +0 -0
  41. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/webapp/static/icons/files-papers-outline-icon.svg +0 -0
  42. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/webapp/static/icons/filter-outline-icon.svg +0 -0
  43. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/webapp/static/icons/information-mark-circle-outline-icon.svg +0 -0
  44. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/webapp/static/icons/math-multiplication-icon.svg +0 -0
  45. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/webapp/static/icons/push-pin-green-icon.svg +0 -0
  46. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/webapp/static/icons/question-mark-round-line-icon.svg +0 -0
  47. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/webapp/static/icons/recycle-bin-line-icon.svg +0 -0
  48. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/webapp/static/icons/wait-sandclock-icon.svg +0 -0
  49. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/webapp/static/index.htm +0 -0
  50. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/webapp/static/main.js +0 -0
  51. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/webapp/static/mustache.min.js +0 -0
  52. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/webapp/static/render.js +0 -0
  53. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/webapp/static/style.css +0 -0
  54. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg/webapp/static/table.css +0 -0
  55. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg.egg-info/SOURCES.txt +0 -0
  56. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg.egg-info/dependency_links.txt +0 -0
  57. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg.egg-info/entry_points.txt +0 -0
  58. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg.egg-info/requires.txt +0 -0
  59. {httpdbg-0.24.0 → httpdbg-0.24.2}/httpdbg.egg-info/top_level.txt +0 -0
  60. {httpdbg-0.24.0 → httpdbg-0.24.2}/pyproject.toml +0 -0
  61. {httpdbg-0.24.0 → httpdbg-0.24.2}/setup.cfg +0 -0
  62. {httpdbg-0.24.0 → httpdbg-0.24.2}/tests/test_api.py +0 -0
  63. {httpdbg-0.24.0 → httpdbg-0.24.2}/tests/test_cli.py +0 -0
  64. {httpdbg-0.24.0 → httpdbg-0.24.2}/tests/test_context_manager.py +0 -0
  65. {httpdbg-0.24.0 → httpdbg-0.24.2}/tests/test_hook_aiohttp.py +0 -0
  66. {httpdbg-0.24.0 → httpdbg-0.24.2}/tests/test_hook_httpx.py +0 -0
  67. {httpdbg-0.24.0 → httpdbg-0.24.2}/tests/test_hook_requests.py +0 -0
  68. {httpdbg-0.24.0 → httpdbg-0.24.2}/tests/test_hook_urllib3.py +0 -0
  69. {httpdbg-0.24.0 → httpdbg-0.24.2}/tests/test_initiator.py +0 -0
  70. {httpdbg-0.24.0 → httpdbg-0.24.2}/tests/test_mode_console.py +0 -0
  71. {httpdbg-0.24.0 → httpdbg-0.24.2}/tests/test_mode_module_pytest.py +0 -0
  72. {httpdbg-0.24.0 → httpdbg-0.24.2}/tests/test_mode_script.py +0 -0
  73. {httpdbg-0.24.0 → httpdbg-0.24.2}/tests/test_preview.py +0 -0
  74. {httpdbg-0.24.0 → httpdbg-0.24.2}/tests/test_server.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: httpdbg
3
- Version: 0.24.0
3
+ Version: 0.24.2
4
4
  Summary: A very simple tool to debug HTTP(S) client requests
5
5
  Author-email: cle-b <cle@tictac.pm>
6
6
  License: Apache-2.0
@@ -3,6 +3,6 @@ from httpdbg.hooks.all import httprecord
3
3
  from httpdbg.records import HTTPRecords
4
4
 
5
5
 
6
- __version__ = "0.24.0"
6
+ __version__ = "0.24.2"
7
7
 
8
8
  __all__ = ["httprecord", "HTTPRecords"]
@@ -224,12 +224,17 @@ def httpdbg_initiator(
224
224
  @contextmanager
225
225
  def httpdbg_tag(tag: str) -> Generator[None, None, None]:
226
226
 
227
- os.environ[HTTPDBG_CURRENT_TAG] = tag
227
+ tag_already_set = HTTPDBG_CURRENT_TAG in os.environ
228
+
229
+ if not tag_already_set:
230
+ os.environ[HTTPDBG_CURRENT_TAG] = tag
228
231
 
229
232
  try:
230
233
  yield
231
234
  except Exception:
232
- del os.environ[HTTPDBG_CURRENT_TAG]
235
+ if (not tag_already_set) and (HTTPDBG_CURRENT_TAG in os.environ):
236
+ del os.environ[HTTPDBG_CURRENT_TAG]
233
237
  raise
234
238
 
235
- del os.environ[HTTPDBG_CURRENT_TAG]
239
+ if (not tag_already_set) and (HTTPDBG_CURRENT_TAG in os.environ):
240
+ del os.environ[HTTPDBG_CURRENT_TAG]
@@ -25,11 +25,11 @@ from httpdbg.utils import logger
25
25
 
26
26
  class SocketRawData(object):
27
27
  def __init__(self, id: int, address: Tuple[str, int], ssl: bool) -> None:
28
- self.id = id
29
- self.address = address
30
- self.ssl = ssl
31
- self._rawdata = bytes()
32
- self.record = None
28
+ self.id: int = id
29
+ self.address: Tuple[str, int] = address
30
+ self.ssl: bool = ssl
31
+ self._rawdata: bytes = bytes()
32
+ self.record: Union[HTTPRecord, None] = None
33
33
  self.tbegin: datetime.datetime = datetime.datetime.now(datetime.timezone.utc)
34
34
 
35
35
  @property
@@ -63,8 +63,8 @@ class SocketRawData(object):
63
63
 
64
64
  class HTTPRecordReqResp(object):
65
65
  def __init__(self) -> None:
66
- self.rawdata = bytes()
67
- self._rawheaders = bytes()
66
+ self._rawdata: bytes = bytes()
67
+ self._rawheaders: bytes = bytes()
68
68
  self._headers: List[HTTPDBGHeader] = []
69
69
  self.last_update: datetime.datetime = datetime.datetime.now(
70
70
  datetime.timezone.utc
@@ -119,10 +119,6 @@ class HTTPRecordReqResp(object):
119
119
 
120
120
  return rawdata
121
121
 
122
- def __setattr__(self, name, value):
123
- self.__dict__[name] = value
124
- self.__dict__["last_update"] = datetime.datetime.now(datetime.timezone.utc)
125
-
126
122
  @property
127
123
  def preview(self):
128
124
  return generate_preview(
@@ -131,6 +127,15 @@ class HTTPRecordReqResp(object):
131
127
  self.get_header("Content-Encoding"),
132
128
  )
133
129
 
130
+ @property
131
+ def rawdata(self) -> bytes:
132
+ return self._rawdata
133
+
134
+ @rawdata.setter
135
+ def rawdata(self, value: bytes):
136
+ self.last_update = datetime.datetime.now(datetime.timezone.utc)
137
+ self._rawdata = value
138
+
134
139
 
135
140
  class HTTPRecordRequest(HTTPRecordReqResp):
136
141
  def __init__(self) -> None:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: httpdbg
3
- Version: 0.24.0
3
+ Version: 0.24.2
4
4
  Summary: A very simple tool to debug HTTP(S) client requests
5
5
  Author-email: cle-b <cle@tictac.pm>
6
6
  License: Apache-2.0
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