sfq 0.0.36__tar.gz → 0.0.37__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 (68) hide show
  1. {sfq-0.0.36 → sfq-0.0.37}/.github/workflows/publish.yml +1 -0
  2. {sfq-0.0.36 → sfq-0.0.37}/PKG-INFO +1 -1
  3. {sfq-0.0.36 → sfq-0.0.37}/pyproject.toml +1 -1
  4. {sfq-0.0.36 → sfq-0.0.37}/src/sfq/__init__.py +3 -3
  5. {sfq-0.0.36 → sfq-0.0.37}/src/sfq/http_client.py +1 -1
  6. {sfq-0.0.36 → sfq-0.0.37}/src/sfq/utils.py +3 -3
  7. {sfq-0.0.36 → sfq-0.0.37}/uv.lock +1 -1
  8. {sfq-0.0.36 → sfq-0.0.37}/.gitignore +0 -0
  9. {sfq-0.0.36 → sfq-0.0.37}/.python-version +0 -0
  10. {sfq-0.0.36 → sfq-0.0.37}/README.md +0 -0
  11. {sfq-0.0.36 → sfq-0.0.37}/src/sfq/_cometd.py +0 -0
  12. {sfq-0.0.36 → sfq-0.0.37}/src/sfq/auth.py +0 -0
  13. {sfq-0.0.36 → sfq-0.0.37}/src/sfq/crud.py +0 -0
  14. {sfq-0.0.36 → sfq-0.0.37}/src/sfq/debug_cleanup.py +0 -0
  15. {sfq-0.0.36 → sfq-0.0.37}/src/sfq/exceptions.py +0 -0
  16. {sfq-0.0.36 → sfq-0.0.37}/src/sfq/py.typed +0 -0
  17. {sfq-0.0.36 → sfq-0.0.37}/src/sfq/query.py +0 -0
  18. {sfq-0.0.36 → sfq-0.0.37}/src/sfq/soap.py +0 -0
  19. {sfq-0.0.36 → sfq-0.0.37}/tests/html/test_complex_nested.html +0 -0
  20. {sfq-0.0.36 → sfq-0.0.37}/tests/html/test_complex_nested_styled.html +0 -0
  21. {sfq-0.0.36 → sfq-0.0.37}/tests/html/test_empty_list.html +0 -0
  22. {sfq-0.0.36 → sfq-0.0.37}/tests/html/test_empty_list_styled.html +0 -0
  23. {sfq-0.0.36 → sfq-0.0.37}/tests/html/test_int_float_bool.html +0 -0
  24. {sfq-0.0.36 → sfq-0.0.37}/tests/html/test_int_float_bool_styled.html +0 -0
  25. {sfq-0.0.36 → sfq-0.0.37}/tests/html/test_list_value.html +0 -0
  26. {sfq-0.0.36 → sfq-0.0.37}/tests/html/test_list_value_styled.html +0 -0
  27. {sfq-0.0.36 → sfq-0.0.37}/tests/html/test_multiple_dicts.html +0 -0
  28. {sfq-0.0.36 → sfq-0.0.37}/tests/html/test_multiple_dicts_styled.html +0 -0
  29. {sfq-0.0.36 → sfq-0.0.37}/tests/html/test_nested_dict.html +0 -0
  30. {sfq-0.0.36 → sfq-0.0.37}/tests/html/test_nested_dict_styled.html +0 -0
  31. {sfq-0.0.36 → sfq-0.0.37}/tests/html/test_none_value.html +0 -0
  32. {sfq-0.0.36 → sfq-0.0.37}/tests/html/test_none_value_styled.html +0 -0
  33. {sfq-0.0.36 → sfq-0.0.37}/tests/html/test_other_types.html +0 -0
  34. {sfq-0.0.36 → sfq-0.0.37}/tests/html/test_other_types_styled.html +0 -0
  35. {sfq-0.0.36 → sfq-0.0.37}/tests/html/test_sample_report.html +0 -0
  36. {sfq-0.0.36 → sfq-0.0.37}/tests/html/test_sample_report_styled.html +0 -0
  37. {sfq-0.0.36 → sfq-0.0.37}/tests/html/test_single_flat_dict.html +0 -0
  38. {sfq-0.0.36 → sfq-0.0.37}/tests/html/test_single_flat_dict_styled.html +0 -0
  39. {sfq-0.0.36 → sfq-0.0.37}/tests/html/test_typecastable_keys_bool.html +0 -0
  40. {sfq-0.0.36 → sfq-0.0.37}/tests/html/test_typecastable_keys_bool_styled.html +0 -0
  41. {sfq-0.0.36 → sfq-0.0.37}/tests/html/test_typecastable_keys_float.html +0 -0
  42. {sfq-0.0.36 → sfq-0.0.37}/tests/html/test_typecastable_keys_float_styled.html +0 -0
  43. {sfq-0.0.36 → sfq-0.0.37}/tests/html/test_typecastable_keys_int.html +0 -0
  44. {sfq-0.0.36 → sfq-0.0.37}/tests/html/test_typecastable_keys_int_styled.html +0 -0
  45. {sfq-0.0.36 → sfq-0.0.37}/tests/test_auth.py +0 -0
  46. {sfq-0.0.36 → sfq-0.0.37}/tests/test_cdelete.py +0 -0
  47. {sfq-0.0.36 → sfq-0.0.37}/tests/test_compatibility.py +0 -0
  48. {sfq-0.0.36 → sfq-0.0.37}/tests/test_cquery.py +0 -0
  49. {sfq-0.0.36 → sfq-0.0.37}/tests/test_create.py +0 -0
  50. {sfq-0.0.36 → sfq-0.0.37}/tests/test_crud.py +0 -0
  51. {sfq-0.0.36 → sfq-0.0.37}/tests/test_crud_e2e.py +0 -0
  52. {sfq-0.0.36 → sfq-0.0.37}/tests/test_cupdate.py +0 -0
  53. {sfq-0.0.36 → sfq-0.0.37}/tests/test_debug_cleanup_e2e.py +0 -0
  54. {sfq-0.0.36 → sfq-0.0.37}/tests/test_debug_cleanup_unit.py +0 -0
  55. {sfq-0.0.36 → sfq-0.0.37}/tests/test_http_client.py +0 -0
  56. {sfq-0.0.36 → sfq-0.0.37}/tests/test_limits_api.py +0 -0
  57. {sfq-0.0.36 → sfq-0.0.37}/tests/test_log_trace_redact.py +0 -0
  58. {sfq-0.0.36 → sfq-0.0.37}/tests/test_open_frontdoor.py +0 -0
  59. {sfq-0.0.36 → sfq-0.0.37}/tests/test_query.py +0 -0
  60. {sfq-0.0.36 → sfq-0.0.37}/tests/test_query_client.py +0 -0
  61. {sfq-0.0.36 → sfq-0.0.37}/tests/test_query_e2e.py +0 -0
  62. {sfq-0.0.36 → sfq-0.0.37}/tests/test_query_integration.py +0 -0
  63. {sfq-0.0.36 → sfq-0.0.37}/tests/test_records_to_html.py +0 -0
  64. {sfq-0.0.36 → sfq-0.0.37}/tests/test_soap.py +0 -0
  65. {sfq-0.0.36 → sfq-0.0.37}/tests/test_soap_batch_operation.py +0 -0
  66. {sfq-0.0.36 → sfq-0.0.37}/tests/test_static_resources.py +0 -0
  67. {sfq-0.0.36 → sfq-0.0.37}/tests/test_utils.py +0 -0
  68. {sfq-0.0.36 → sfq-0.0.37}/tests/test_utils_html_table.py +0 -0
@@ -85,6 +85,7 @@ jobs:
85
85
 
86
86
  echo "Updating src/sfq/http_client.py user_agent to $VERSION"
87
87
  sed -i -E "s/(user_agent: str = \"sfq\/)[0-9]+\.[0-9]+\.[0-9]+(\")/\1$VERSION\2/" src/sfq/http_client.py
88
+ sed -i -E "s/(user_agent: str = \"sfq\/)[0-9]+\.[0-9]+\.[0-9]+(\",)/\1$VERSION\2/" src/sfq/http_client.py
88
89
 
89
90
  - name: Run tests
90
91
  run: pytest --verbose --strict-config
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sfq
3
- Version: 0.0.36
3
+ Version: 0.0.37
4
4
  Summary: Python wrapper for the Salesforce's Query API.
5
5
  Author-email: David Moruzzi <sfq.pypi@dmoruzi.com>
6
6
  Keywords: salesforce,salesforce query
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "sfq"
3
- version = "0.0.36"
3
+ version = "0.0.37"
4
4
  description = "Python wrapper for the Salesforce's Query API."
5
5
  readme = "README.md"
6
6
  authors = [{ name = "David Moruzzi", email = "sfq.pypi@dmoruzi.com" }]
@@ -43,7 +43,7 @@ __all__ = [
43
43
  "__version__",
44
44
  ]
45
45
 
46
- __version__ = "0.0.36"
46
+ __version__ = "0.0.37"
47
47
  """
48
48
  ### `__version__`
49
49
 
@@ -67,7 +67,7 @@ class SFAuth:
67
67
  access_token: Optional[str] = None,
68
68
  token_expiration_time: Optional[float] = None,
69
69
  token_lifetime: int = 15 * 60,
70
- user_agent: str = "sfq/0.0.36",
70
+ user_agent: str = "sfq/0.0.37",
71
71
  sforce_client: str = "_auto",
72
72
  proxy: str = "_auto",
73
73
  ) -> None:
@@ -132,7 +132,7 @@ class SFAuth:
132
132
  self._debug_cleanup = DebugCleanup(sf_auth=self)
133
133
 
134
134
  # Store version information
135
- self.__version__ = "0.0.36"
135
+ self.__version__ = "0.0.37"
136
136
  """
137
137
  ### `__version__`
138
138
 
@@ -28,7 +28,7 @@ class HTTPClient:
28
28
  def __init__(
29
29
  self,
30
30
  auth_manager: AuthManager,
31
- user_agent: str = "sfq/0.0.36",
31
+ user_agent: str = "sfq/0.0.37",
32
32
  sforce_client: str = "_auto",
33
33
  high_api_usage_threshold: int = 80,
34
34
  ) -> None:
@@ -215,7 +215,7 @@ def dicts_to_html_table(
215
215
  if val is None:
216
216
  return ""
217
217
  if isinstance(val, (int, float, str, bool)):
218
- return escape(str(val))
218
+ return str(val)
219
219
  if isinstance(val, list):
220
220
  return (
221
221
  "<ul>"
@@ -277,7 +277,7 @@ def dicts_to_html_table(
277
277
  )
278
278
  if columns:
279
279
  html = [f'<table style="{table_style}"><thead><tr>']
280
- html.extend(f'<th style="{th_style}">{escape(col)}</th>' for col in columns)
280
+ html.extend(f'<th style="{th_style}">{col}</th>' for col in columns)
281
281
  html.append("</tr></thead><tbody>")
282
282
  for d in items:
283
283
  html.append("<tr>")
@@ -294,7 +294,7 @@ def dicts_to_html_table(
294
294
  else:
295
295
  if columns:
296
296
  html = ["<table><thead><tr>"]
297
- html.extend(f"<th>{escape(col)}</th>" for col in columns)
297
+ html.extend(f"<th>{col}</th>" for col in columns)
298
298
  html.append("</tr></thead><tbody>")
299
299
  for d in items:
300
300
  html.append("<tr>")
@@ -3,5 +3,5 @@ requires-python = ">=3.9"
3
3
 
4
4
  [[package]]
5
5
  name = "sfq"
6
- version = "0.0.36"
6
+ version = "0.0.37"
7
7
  source = { editable = "." }
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
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