httpdbg 0.17.2__tar.gz → 0.18.0__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 (69) hide show
  1. {httpdbg-0.17.2 → httpdbg-0.18.0}/PKG-INFO +4 -4
  2. {httpdbg-0.17.2 → httpdbg-0.18.0}/README.md +2 -2
  3. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/__init__.py +1 -1
  4. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/mode_script.py +1 -1
  5. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/webapp/static/column.css +8 -0
  6. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/webapp/static/configuration.js +20 -3
  7. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/webapp/static/index.htm +29 -9
  8. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/webapp/static/main.js +13 -1
  9. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/webapp/static/render.js +2 -0
  10. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg.egg-info/PKG-INFO +4 -4
  11. {httpdbg-0.17.2 → httpdbg-0.18.0}/pyproject.toml +1 -1
  12. {httpdbg-0.17.2 → httpdbg-0.18.0}/LICENSE +0 -0
  13. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/__main__.py +0 -0
  14. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/args.py +0 -0
  15. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/hooks/__init__.py +0 -0
  16. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/hooks/aiohttp.py +0 -0
  17. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/hooks/all.py +0 -0
  18. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/hooks/external.py +0 -0
  19. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/hooks/generic.py +0 -0
  20. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/hooks/httpx.py +0 -0
  21. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/hooks/requests.py +0 -0
  22. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/hooks/socket.py +0 -0
  23. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/hooks/urllib3.py +0 -0
  24. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/hooks/utils.py +0 -0
  25. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/initiator.py +0 -0
  26. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/mode_console.py +0 -0
  27. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/mode_module.py +0 -0
  28. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/preview.py +0 -0
  29. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/records.py +0 -0
  30. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/server.py +0 -0
  31. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/utils.py +0 -0
  32. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/webapp/__init__.py +0 -0
  33. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/webapp/api.py +0 -0
  34. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/webapp/app.py +0 -0
  35. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/webapp/static/api.js +0 -0
  36. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/webapp/static/detail.css +0 -0
  37. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/webapp/static/favicon.ico +0 -0
  38. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/webapp/static/filter.js +0 -0
  39. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/webapp/static/icons/download-install-line-icon.svg +0 -0
  40. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/webapp/static/icons/engine-gears-icon.svg +0 -0
  41. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/webapp/static/icons/files-papers-outline-icon.svg +0 -0
  42. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/webapp/static/icons/filter-outline-icon.svg +0 -0
  43. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/webapp/static/icons/information-mark-circle-outline-icon.svg +0 -0
  44. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/webapp/static/icons/math-multiplication-icon.svg +0 -0
  45. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/webapp/static/icons/push-pin-green-icon.svg +0 -0
  46. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/webapp/static/icons/question-mark-round-line-icon.svg +0 -0
  47. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/webapp/static/icons/recycle-bin-line-icon.svg +0 -0
  48. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/webapp/static/icons/wait-sandclock-icon.svg +0 -0
  49. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/webapp/static/mustache.min.js +0 -0
  50. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/webapp/static/style.css +0 -0
  51. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg/webapp/static/table.css +0 -0
  52. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg.egg-info/SOURCES.txt +0 -0
  53. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg.egg-info/dependency_links.txt +0 -0
  54. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg.egg-info/entry_points.txt +0 -0
  55. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg.egg-info/requires.txt +0 -0
  56. {httpdbg-0.17.2 → httpdbg-0.18.0}/httpdbg.egg-info/top_level.txt +0 -0
  57. {httpdbg-0.17.2 → httpdbg-0.18.0}/setup.cfg +0 -0
  58. {httpdbg-0.17.2 → httpdbg-0.18.0}/tests/test_api.py +0 -0
  59. {httpdbg-0.17.2 → httpdbg-0.18.0}/tests/test_cli.py +0 -0
  60. {httpdbg-0.17.2 → httpdbg-0.18.0}/tests/test_context_manager.py +0 -0
  61. {httpdbg-0.17.2 → httpdbg-0.18.0}/tests/test_hook_aiohttp.py +0 -0
  62. {httpdbg-0.17.2 → httpdbg-0.18.0}/tests/test_hook_httpx.py +0 -0
  63. {httpdbg-0.17.2 → httpdbg-0.18.0}/tests/test_hook_requests.py +0 -0
  64. {httpdbg-0.17.2 → httpdbg-0.18.0}/tests/test_hook_urllib3.py +0 -0
  65. {httpdbg-0.17.2 → httpdbg-0.18.0}/tests/test_initiator.py +0 -0
  66. {httpdbg-0.17.2 → httpdbg-0.18.0}/tests/test_mode_console.py +0 -0
  67. {httpdbg-0.17.2 → httpdbg-0.18.0}/tests/test_mode_module_pytest.py +0 -0
  68. {httpdbg-0.17.2 → httpdbg-0.18.0}/tests/test_mode_script.py +0 -0
  69. {httpdbg-0.17.2 → httpdbg-0.18.0}/tests/test_preview.py +0 -0
@@ -1,11 +1,11 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: httpdbg
3
- Version: 0.17.2
3
+ Version: 0.18.0
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
7
7
  Project-URL: Source, https://github.com/cle-b/httpdbg/
8
- Project-URL: Documentation, https://httpdbg-docs.readthedocs.io/
8
+ Project-URL: Documentation, https://httpdbg.readthedocs.io/
9
9
  Classifier: Development Status :: 4 - Beta
10
10
  Classifier: Environment :: Web Environment
11
11
  Classifier: Intended Audience :: Developers
@@ -29,7 +29,7 @@ To use it, execute your program using the `pyhttpdbg` command instead of `python
29
29
 
30
30
  ![](https://github.com/cle-b/httpdbg/blob/main/ui.png?raw=true)
31
31
 
32
- Full documentation => [https://httpdbg-docs.readthedocs.io/](https://httpdbg-docs.readthedocs.io/en/latest/)
32
+ Full documentation => [https://httpdbg.readthedocs.io/](https://httpdbg.readthedocs.io/en/latest/)
33
33
 
34
34
  ## installation
35
35
 
@@ -164,4 +164,4 @@ The requests:
164
164
 
165
165
  ## documentation
166
166
 
167
- https://httpdbg-docs.readthedocs.io
167
+ https://httpdbg.readthedocs.io
@@ -6,7 +6,7 @@ To use it, execute your program using the `pyhttpdbg` command instead of `python
6
6
 
7
7
  ![](https://github.com/cle-b/httpdbg/blob/main/ui.png?raw=true)
8
8
 
9
- Full documentation => [https://httpdbg-docs.readthedocs.io/](https://httpdbg-docs.readthedocs.io/en/latest/)
9
+ Full documentation => [https://httpdbg.readthedocs.io/](https://httpdbg.readthedocs.io/en/latest/)
10
10
 
11
11
  ## installation
12
12
 
@@ -141,4 +141,4 @@ The requests:
141
141
 
142
142
  ## documentation
143
143
 
144
- https://httpdbg-docs.readthedocs.io
144
+ https://httpdbg.readthedocs.io
@@ -3,6 +3,6 @@ from httpdbg.hooks.all import httprecord
3
3
  from httpdbg.records import HTTPRecords
4
4
 
5
5
 
6
- VERSION = "0.17.2"
6
+ VERSION = "0.18.0"
7
7
 
8
8
  __all__ = ["httprecord", "HTTPRecords"]
@@ -15,6 +15,6 @@ def run_script(argv: List[str]) -> None:
15
15
  except AttributeError:
16
16
  exit("script mode - error - the first argument shall be a python file")
17
17
  try:
18
- spec.loader.exec_module(module)
18
+ spec.loader.exec_module(module) # type: ignore
19
19
  except Exception:
20
20
  traceback.print_exc()
@@ -15,4 +15,12 @@
15
15
  min-width: 40vw;
16
16
  width: 50vw;
17
17
  resize: horizontal;
18
+ }
19
+
20
+
21
+ .grid-container-configuration {
22
+ display: grid;
23
+ grid-auto-flow: column;
24
+ grid-auto-columns: 1fr;
25
+
18
26
  }
@@ -8,13 +8,23 @@ function config() {
8
8
  }
9
9
  }
10
10
 
11
- function apply_config_rule(a_config, sheet) {
11
+ function apply_config_rule_css(a_config, sheet) {
12
12
  document.getElementById(a_config.checkbox).checked = a_config.value;
13
13
  if (a_config.value) {
14
14
  sheet.insertRule(a_config.css);
15
15
  }
16
16
  }
17
17
 
18
+ function apply_config_rule_click(a_config) {
19
+ document.getElementById(a_config.checkbox).checked = a_config.value;
20
+ document.getElementsByName(a_config.elt_name).forEach(element => {
21
+ if (element.checked != a_config.value) {
22
+ element.click();
23
+ }
24
+ });
25
+
26
+ }
27
+
18
28
  function apply_config() {
19
29
  var sheet = document.getElementById("configurationcss").sheet;
20
30
 
@@ -22,8 +32,11 @@ function apply_config() {
22
32
  sheet.deleteRule(0);
23
33
  }
24
34
 
25
- apply_config_rule(httpdbgApp.config.hide_netloc, sheet);
26
- apply_config_rule(httpdbgApp.config.hide_initiator, sheet);
35
+ apply_config_rule_css(httpdbgApp.config.hide_netloc, sheet);
36
+ apply_config_rule_css(httpdbgApp.config.hide_initiator, sheet);
37
+
38
+ apply_config_rule_click(httpdbgApp.config.details_wrap_default);
39
+ apply_config_rule_click(httpdbgApp.config.details_raw_default);
27
40
  }
28
41
 
29
42
  function load_config_rule_from_url(a_config, params) {
@@ -35,6 +48,8 @@ function load_config_from_url(apply) {
35
48
 
36
49
  load_config_rule_from_url(httpdbgApp.config.hide_netloc, params);
37
50
  load_config_rule_from_url(httpdbgApp.config.hide_initiator, params);
51
+ load_config_rule_from_url(httpdbgApp.config.details_wrap_default, params);
52
+ load_config_rule_from_url(httpdbgApp.config.details_raw_default, params);
38
53
 
39
54
  if (apply) {
40
55
  apply_config();
@@ -50,6 +65,8 @@ function load_config_from_form(apply) {
50
65
 
51
66
  load_config_rule_from_form(httpdbgApp.config.hide_netloc);
52
67
  load_config_rule_from_form(httpdbgApp.config.hide_initiator);
68
+ load_config_rule_from_form(httpdbgApp.config.details_wrap_default);
69
+ load_config_rule_from_form(httpdbgApp.config.details_raw_default);
53
70
 
54
71
  if (apply) {
55
72
  apply_config();
@@ -55,13 +55,33 @@
55
55
 
56
56
  <form id="configform" onsubmit="return false;">
57
57
 
58
- <input type="checkbox" id="curl" name="hn" onchange="load_config_from_form(true)">
59
- <label for="curl">Hide the netloc in the url</label>
60
-
61
- <br>
62
-
63
- <input type="checkbox" id="cinitiator" name="hi" onchange="load_config_from_form(true)">
64
- <label for="cinitiator">Hide the initiator rows</label>
58
+ <div class="grid-container-configuration">
59
+ <div>
60
+ <fieldset>
61
+ <legend>list of requests</legend>
62
+
63
+ <input type="checkbox" id="curl" name="hn" onchange="load_config_from_form(true)">
64
+ <label for="curl">Hide the netloc in the url</label>
65
+
66
+ <br>
67
+
68
+ <input type="checkbox" id="cinitiator" name="hi" onchange="load_config_from_form(true)">
69
+ <label for="cinitiator">Hide the initiator rows</label>
70
+ </fieldset>
71
+ </div>
72
+ <div>
73
+ <fieldset>
74
+ <legend>request's details</legend>
75
+ <input type="checkbox" id="cwrap" name="wl" onchange="load_config_from_form(true)">
76
+ <label for="cwrap">Wrap lines</label>
77
+
78
+ <br>
79
+
80
+ <input type="checkbox" id="craw" name="rd" onchange="load_config_from_form(true)">
81
+ <label for="craw">Raw data</label>
82
+ </fieldset>
83
+ </div>
84
+ </div>
65
85
 
66
86
  <br>
67
87
 
@@ -283,9 +303,9 @@
283
303
  <button title="copy to clipboard" onclick="navigator.clipboard.writeText({{body.raw_text}});"><img class="icon" src="static/icons/files-papers-outline-icon.svg-+-$**HTTPDBG_VERSION**$"/></button>
284
304
  {{/body.raw_text}}
285
305
 
286
- <label><input type="checkbox" onclick='show_wrap_lines(this.parentNode.parentNode.querySelector(".previewcode"));'>Wrap lines</label>
306
+ <label><input type="checkbox" name="ckwraptext" onclick='show_wrap_lines(this.parentNode.parentNode.querySelector(".previewcode"));'>Wrap lines</label>
287
307
  {{#body.parsed}}
288
- <label><input type="checkbox" onclick='show_raw_data(this.parentNode.parentNode.querySelector(".previewcode"), this.checked, {{body.raw_text}}, {{body.parsed_text}});'>Raw data</label>
308
+ <label><input type="checkbox" name="ckrawdata" onclick='show_raw_data(this.parentNode.parentNode.querySelector(".previewcode"), this.checked, {{body.raw_text}}, {{body.parsed_text}});'>Raw data</label>
289
309
  <pre class="previewcode">{{body.parsed}}</pre>
290
310
  {{/body.parsed}}
291
311
  {{^body.parsed}}
@@ -13,6 +13,18 @@ let httpdbgApp = {
13
13
  "param": "hn",
14
14
  "css": ".netloc {display: none;}",
15
15
  "value": false
16
+ },
17
+ "details_wrap_default": {
18
+ "checkbox": "cwrap",
19
+ "param": "wl",
20
+ "elt_name": "ckwraptext",
21
+ "value": false
22
+ },
23
+ "details_raw_default": {
24
+ "checkbox": "craw",
25
+ "param": "rd",
26
+ "elt_name": "ckrawdata",
27
+ "value": false
16
28
  }
17
29
  }
18
30
  }
@@ -71,7 +83,7 @@ window.addEventListener('keydown', (event) => {
71
83
  select_first_request();
72
84
  }
73
85
 
74
- if (keys_history.endsWith("ll")) {
86
+ if (keys_history.endsWith("ll")) {
75
87
  select_last_request();
76
88
  }
77
89
 
@@ -165,6 +165,8 @@ function fill_content(request_id, name) {
165
165
  update_with_template("template_exception", document.querySelector("#exception > div[name='" + name + "']"), req);
166
166
 
167
167
  update_with_template("template_stack", document.querySelector("#stack > div[name='" + name + "']"), req);
168
+
169
+ apply_config();
168
170
  }
169
171
 
170
172
 
@@ -1,11 +1,11 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: httpdbg
3
- Version: 0.17.2
3
+ Version: 0.18.0
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
7
7
  Project-URL: Source, https://github.com/cle-b/httpdbg/
8
- Project-URL: Documentation, https://httpdbg-docs.readthedocs.io/
8
+ Project-URL: Documentation, https://httpdbg.readthedocs.io/
9
9
  Classifier: Development Status :: 4 - Beta
10
10
  Classifier: Environment :: Web Environment
11
11
  Classifier: Intended Audience :: Developers
@@ -29,7 +29,7 @@ To use it, execute your program using the `pyhttpdbg` command instead of `python
29
29
 
30
30
  ![](https://github.com/cle-b/httpdbg/blob/main/ui.png?raw=true)
31
31
 
32
- Full documentation => [https://httpdbg-docs.readthedocs.io/](https://httpdbg-docs.readthedocs.io/en/latest/)
32
+ Full documentation => [https://httpdbg.readthedocs.io/](https://httpdbg.readthedocs.io/en/latest/)
33
33
 
34
34
  ## installation
35
35
 
@@ -164,4 +164,4 @@ The requests:
164
164
 
165
165
  ## documentation
166
166
 
167
- https://httpdbg-docs.readthedocs.io
167
+ https://httpdbg.readthedocs.io
@@ -46,4 +46,4 @@ pytest = ["pytest-httpdbg>=0.3.1"]
46
46
 
47
47
  [project.urls]
48
48
  Source = "https://github.com/cle-b/httpdbg/"
49
- Documentation = "https://httpdbg-docs.readthedocs.io/"
49
+ Documentation = "https://httpdbg.readthedocs.io/"
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