payi 0.1.0a117__tar.gz → 0.1.0a119__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.

Potentially problematic release.


This version of payi might be problematic. Click here for more details.

Files changed (204) hide show
  1. payi-0.1.0a119/.release-please-manifest.json +3 -0
  2. {payi-0.1.0a117 → payi-0.1.0a119}/CHANGELOG.md +16 -0
  3. {payi-0.1.0a117 → payi-0.1.0a119}/PKG-INFO +1 -1
  4. {payi-0.1.0a117 → payi-0.1.0a119}/pyproject.toml +1 -1
  5. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/_version.py +1 -1
  6. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/lib/BedrockInstrumentor.py +2 -0
  7. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/lib/instrument.py +21 -11
  8. payi-0.1.0a117/.release-please-manifest.json +0 -3
  9. {payi-0.1.0a117 → payi-0.1.0a119}/.gitignore +0 -0
  10. {payi-0.1.0a117 → payi-0.1.0a119}/CONTRIBUTING.md +0 -0
  11. {payi-0.1.0a117 → payi-0.1.0a119}/LICENSE +0 -0
  12. {payi-0.1.0a117 → payi-0.1.0a119}/README.md +0 -0
  13. {payi-0.1.0a117 → payi-0.1.0a119}/SECURITY.md +0 -0
  14. {payi-0.1.0a117 → payi-0.1.0a119}/api.md +0 -0
  15. {payi-0.1.0a117 → payi-0.1.0a119}/bin/check-release-environment +0 -0
  16. {payi-0.1.0a117 → payi-0.1.0a119}/bin/publish-pypi +0 -0
  17. {payi-0.1.0a117 → payi-0.1.0a119}/examples/.keep +0 -0
  18. {payi-0.1.0a117 → payi-0.1.0a119}/noxfile.py +0 -0
  19. {payi-0.1.0a117 → payi-0.1.0a119}/release-please-config.json +0 -0
  20. {payi-0.1.0a117 → payi-0.1.0a119}/requirements-dev.lock +0 -0
  21. {payi-0.1.0a117 → payi-0.1.0a119}/requirements.lock +0 -0
  22. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/__init__.py +0 -0
  23. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/_base_client.py +0 -0
  24. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/_client.py +0 -0
  25. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/_compat.py +0 -0
  26. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/_constants.py +0 -0
  27. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/_exceptions.py +0 -0
  28. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/_files.py +0 -0
  29. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/_models.py +0 -0
  30. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/_qs.py +0 -0
  31. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/_resource.py +0 -0
  32. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/_response.py +0 -0
  33. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/_streaming.py +0 -0
  34. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/_types.py +0 -0
  35. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/_utils/__init__.py +0 -0
  36. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/_utils/_compat.py +0 -0
  37. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/_utils/_datetime_parse.py +0 -0
  38. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/_utils/_logs.py +0 -0
  39. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/_utils/_proxy.py +0 -0
  40. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/_utils/_reflection.py +0 -0
  41. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/_utils/_resources_proxy.py +0 -0
  42. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/_utils/_streams.py +0 -0
  43. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/_utils/_sync.py +0 -0
  44. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/_utils/_transform.py +0 -0
  45. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/_utils/_typing.py +0 -0
  46. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/_utils/_utils.py +0 -0
  47. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/lib/.keep +0 -0
  48. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/lib/AnthropicInstrumentor.py +0 -0
  49. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/lib/GoogleGenAiInstrumentor.py +0 -0
  50. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/lib/OpenAIInstrumentor.py +0 -0
  51. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/lib/Stopwatch.py +0 -0
  52. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/lib/VertexInstrumentor.py +0 -0
  53. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/lib/VertexRequest.py +0 -0
  54. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/lib/data/cohere_embed_english_v3.json +0 -0
  55. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/lib/helpers.py +0 -0
  56. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/lib/version_helper.py +0 -0
  57. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/pagination.py +0 -0
  58. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/py.typed +0 -0
  59. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/resources/__init__.py +0 -0
  60. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/resources/categories/__init__.py +0 -0
  61. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/resources/categories/categories.py +0 -0
  62. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/resources/categories/fixed_cost_resources.py +0 -0
  63. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/resources/categories/resources.py +0 -0
  64. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/resources/ingest.py +0 -0
  65. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/resources/limits/__init__.py +0 -0
  66. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/resources/limits/limits.py +0 -0
  67. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/resources/limits/tags.py +0 -0
  68. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/resources/requests/__init__.py +0 -0
  69. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/resources/requests/request_id/__init__.py +0 -0
  70. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/resources/requests/request_id/properties.py +0 -0
  71. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/resources/requests/request_id/request_id.py +0 -0
  72. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/resources/requests/request_id/result.py +0 -0
  73. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/resources/requests/requests.py +0 -0
  74. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/resources/requests/response_id/__init__.py +0 -0
  75. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/resources/requests/response_id/properties.py +0 -0
  76. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/resources/requests/response_id/response_id.py +0 -0
  77. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/resources/requests/response_id/result.py +0 -0
  78. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/resources/use_cases/__init__.py +0 -0
  79. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/resources/use_cases/definitions/__init__.py +0 -0
  80. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/resources/use_cases/definitions/definitions.py +0 -0
  81. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/resources/use_cases/definitions/kpis.py +0 -0
  82. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/resources/use_cases/definitions/limit_config.py +0 -0
  83. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/resources/use_cases/definitions/version.py +0 -0
  84. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/resources/use_cases/kpis.py +0 -0
  85. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/resources/use_cases/properties.py +0 -0
  86. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/resources/use_cases/use_cases.py +0 -0
  87. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/__init__.py +0 -0
  88. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/bulk_ingest_response.py +0 -0
  89. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/categories/__init__.py +0 -0
  90. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/categories/fixed_cost_resource_create_params.py +0 -0
  91. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/categories/resource_create_params.py +0 -0
  92. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/categories/resource_list_params.py +0 -0
  93. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/category_delete_resource_response.py +0 -0
  94. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/category_delete_response.py +0 -0
  95. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/category_list_params.py +0 -0
  96. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/category_list_resources_params.py +0 -0
  97. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/category_resource_response.py +0 -0
  98. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/category_response.py +0 -0
  99. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/cost_data.py +0 -0
  100. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/cost_details.py +0 -0
  101. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/default_response.py +0 -0
  102. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/ingest_bulk_params.py +0 -0
  103. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/ingest_event_param.py +0 -0
  104. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/ingest_response.py +0 -0
  105. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/ingest_units_params.py +0 -0
  106. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/limit_create_params.py +0 -0
  107. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/limit_history_response.py +0 -0
  108. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/limit_list_params.py +0 -0
  109. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/limit_list_response.py +0 -0
  110. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/limit_reset_params.py +0 -0
  111. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/limit_response.py +0 -0
  112. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/limit_update_params.py +0 -0
  113. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/limits/__init__.py +0 -0
  114. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/limits/limit_tags.py +0 -0
  115. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/limits/tag_create_params.py +0 -0
  116. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/limits/tag_create_response.py +0 -0
  117. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/limits/tag_delete_response.py +0 -0
  118. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/limits/tag_list_response.py +0 -0
  119. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/limits/tag_remove_params.py +0 -0
  120. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/limits/tag_remove_response.py +0 -0
  121. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/limits/tag_update_params.py +0 -0
  122. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/limits/tag_update_response.py +0 -0
  123. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/pay_i_common_models_api_router_header_info_param.py +0 -0
  124. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/request_result.py +0 -0
  125. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/requests/__init__.py +0 -0
  126. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/requests/request_id/__init__.py +0 -0
  127. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/requests/request_id/property_update_params.py +0 -0
  128. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/requests/response_id/__init__.py +0 -0
  129. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/requests/response_id/property_update_params.py +0 -0
  130. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/requests_data.py +0 -0
  131. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/shared/__init__.py +0 -0
  132. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/shared/evaluation_response.py +0 -0
  133. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/shared/ingest_units.py +0 -0
  134. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/shared/pay_i_common_models_budget_management_cost_details_base.py +0 -0
  135. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/shared/pay_i_common_models_budget_management_create_limit_base.py +0 -0
  136. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/shared/properties_response.py +0 -0
  137. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/shared/xproxy_error.py +0 -0
  138. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/shared/xproxy_result.py +0 -0
  139. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/shared_params/__init__.py +0 -0
  140. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/shared_params/ingest_units.py +0 -0
  141. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/shared_params/pay_i_common_models_budget_management_create_limit_base.py +0 -0
  142. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/total_cost_data.py +0 -0
  143. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/use_case_instance_response.py +0 -0
  144. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/use_cases/__init__.py +0 -0
  145. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/use_cases/definition_create_params.py +0 -0
  146. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/use_cases/definition_list_params.py +0 -0
  147. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/use_cases/definition_update_params.py +0 -0
  148. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/use_cases/definitions/__init__.py +0 -0
  149. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/use_cases/definitions/kpi_create_params.py +0 -0
  150. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/use_cases/definitions/kpi_create_response.py +0 -0
  151. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/use_cases/definitions/kpi_delete_response.py +0 -0
  152. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/use_cases/definitions/kpi_list_params.py +0 -0
  153. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/use_cases/definitions/kpi_list_response.py +0 -0
  154. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/use_cases/definitions/kpi_retrieve_response.py +0 -0
  155. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/use_cases/definitions/kpi_update_params.py +0 -0
  156. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/use_cases/definitions/kpi_update_response.py +0 -0
  157. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/use_cases/definitions/limit_config_create_params.py +0 -0
  158. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/use_cases/kpi_list_params.py +0 -0
  159. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/use_cases/kpi_list_response.py +0 -0
  160. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/use_cases/kpi_update_params.py +0 -0
  161. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/use_cases/property_update_params.py +0 -0
  162. {payi-0.1.0a117 → payi-0.1.0a119}/src/payi/types/use_cases/use_case_definition.py +0 -0
  163. {payi-0.1.0a117 → payi-0.1.0a119}/tests/__init__.py +0 -0
  164. {payi-0.1.0a117 → payi-0.1.0a119}/tests/api_resources/__init__.py +0 -0
  165. {payi-0.1.0a117 → payi-0.1.0a119}/tests/api_resources/categories/__init__.py +0 -0
  166. {payi-0.1.0a117 → payi-0.1.0a119}/tests/api_resources/categories/test_fixed_cost_resources.py +0 -0
  167. {payi-0.1.0a117 → payi-0.1.0a119}/tests/api_resources/categories/test_resources.py +0 -0
  168. {payi-0.1.0a117 → payi-0.1.0a119}/tests/api_resources/limits/__init__.py +0 -0
  169. {payi-0.1.0a117 → payi-0.1.0a119}/tests/api_resources/limits/test_tags.py +0 -0
  170. {payi-0.1.0a117 → payi-0.1.0a119}/tests/api_resources/requests/__init__.py +0 -0
  171. {payi-0.1.0a117 → payi-0.1.0a119}/tests/api_resources/requests/request_id/__init__.py +0 -0
  172. {payi-0.1.0a117 → payi-0.1.0a119}/tests/api_resources/requests/request_id/test_properties.py +0 -0
  173. {payi-0.1.0a117 → payi-0.1.0a119}/tests/api_resources/requests/request_id/test_result.py +0 -0
  174. {payi-0.1.0a117 → payi-0.1.0a119}/tests/api_resources/requests/response_id/__init__.py +0 -0
  175. {payi-0.1.0a117 → payi-0.1.0a119}/tests/api_resources/requests/response_id/test_properties.py +0 -0
  176. {payi-0.1.0a117 → payi-0.1.0a119}/tests/api_resources/requests/response_id/test_result.py +0 -0
  177. {payi-0.1.0a117 → payi-0.1.0a119}/tests/api_resources/test_categories.py +0 -0
  178. {payi-0.1.0a117 → payi-0.1.0a119}/tests/api_resources/test_ingest.py +0 -0
  179. {payi-0.1.0a117 → payi-0.1.0a119}/tests/api_resources/test_limits.py +0 -0
  180. {payi-0.1.0a117 → payi-0.1.0a119}/tests/api_resources/test_use_cases.py +0 -0
  181. {payi-0.1.0a117 → payi-0.1.0a119}/tests/api_resources/use_cases/__init__.py +0 -0
  182. {payi-0.1.0a117 → payi-0.1.0a119}/tests/api_resources/use_cases/definitions/__init__.py +0 -0
  183. {payi-0.1.0a117 → payi-0.1.0a119}/tests/api_resources/use_cases/definitions/test_kpis.py +0 -0
  184. {payi-0.1.0a117 → payi-0.1.0a119}/tests/api_resources/use_cases/definitions/test_limit_config.py +0 -0
  185. {payi-0.1.0a117 → payi-0.1.0a119}/tests/api_resources/use_cases/definitions/test_version.py +0 -0
  186. {payi-0.1.0a117 → payi-0.1.0a119}/tests/api_resources/use_cases/test_definitions.py +0 -0
  187. {payi-0.1.0a117 → payi-0.1.0a119}/tests/api_resources/use_cases/test_kpis.py +0 -0
  188. {payi-0.1.0a117 → payi-0.1.0a119}/tests/api_resources/use_cases/test_properties.py +0 -0
  189. {payi-0.1.0a117 → payi-0.1.0a119}/tests/conftest.py +0 -0
  190. {payi-0.1.0a117 → payi-0.1.0a119}/tests/sample_file.txt +0 -0
  191. {payi-0.1.0a117 → payi-0.1.0a119}/tests/test_client.py +0 -0
  192. {payi-0.1.0a117 → payi-0.1.0a119}/tests/test_deepcopy.py +0 -0
  193. {payi-0.1.0a117 → payi-0.1.0a119}/tests/test_extract_files.py +0 -0
  194. {payi-0.1.0a117 → payi-0.1.0a119}/tests/test_files.py +0 -0
  195. {payi-0.1.0a117 → payi-0.1.0a119}/tests/test_models.py +0 -0
  196. {payi-0.1.0a117 → payi-0.1.0a119}/tests/test_qs.py +0 -0
  197. {payi-0.1.0a117 → payi-0.1.0a119}/tests/test_required_args.py +0 -0
  198. {payi-0.1.0a117 → payi-0.1.0a119}/tests/test_response.py +0 -0
  199. {payi-0.1.0a117 → payi-0.1.0a119}/tests/test_streaming.py +0 -0
  200. {payi-0.1.0a117 → payi-0.1.0a119}/tests/test_transform.py +0 -0
  201. {payi-0.1.0a117 → payi-0.1.0a119}/tests/test_utils/test_datetime_parse.py +0 -0
  202. {payi-0.1.0a117 → payi-0.1.0a119}/tests/test_utils/test_proxy.py +0 -0
  203. {payi-0.1.0a117 → payi-0.1.0a119}/tests/test_utils/test_typing.py +0 -0
  204. {payi-0.1.0a117 → payi-0.1.0a119}/tests/utils.py +0 -0
@@ -0,0 +1,3 @@
1
+ {
2
+ ".": "0.1.0-alpha.119"
3
+ }
@@ -1,5 +1,21 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.1.0-alpha.119 (2025-09-16)
4
+
5
+ Full Changelog: [v0.1.0-alpha.118...v0.1.0-alpha.119](https://github.com/Pay-i/pay-i-python/compare/v0.1.0-alpha.118...v0.1.0-alpha.119)
6
+
7
+ ### Bug Fixes
8
+
9
+ * log APIStatusError exception processing as warning ([64aca26](https://github.com/Pay-i/pay-i-python/commit/64aca26e4139d9aebb02a0ab386e4a11978005a6))
10
+
11
+ ## 0.1.0-alpha.118 (2025-09-16)
12
+
13
+ Full Changelog: [v0.1.0-alpha.117...v0.1.0-alpha.118](https://github.com/Pay-i/pay-i-python/compare/v0.1.0-alpha.117...v0.1.0-alpha.118)
14
+
15
+ ### Bug Fixes
16
+
17
+ * bedrock resource, copy extra_headers ([#366](https://github.com/Pay-i/pay-i-python/issues/366)) ([8e0d188](https://github.com/Pay-i/pay-i-python/commit/8e0d1889bd48b398f27c5ea69b3cab5db23e31fa))
18
+
3
19
  ## 0.1.0-alpha.117 (2025-09-16)
4
20
 
5
21
  Full Changelog: [v0.1.0-alpha.116...v0.1.0-alpha.117](https://github.com/Pay-i/pay-i-python/compare/v0.1.0-alpha.116...v0.1.0-alpha.117)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: payi
3
- Version: 0.1.0a117
3
+ Version: 0.1.0a119
4
4
  Summary: The official Python library for the payi API
5
5
  Project-URL: Homepage, https://github.com/Pay-i/pay-i-python
6
6
  Project-URL: Repository, https://github.com/Pay-i/pay-i-python
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "payi"
3
- version = "0.1.0-alpha.117"
3
+ version = "0.1.0-alpha.119"
4
4
  description = "The official Python library for the payi API"
5
5
  dynamic = ["readme"]
6
6
  license = "Apache-2.0"
@@ -1,4 +1,4 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
3
  __title__ = "payi"
4
- __version__ = "0.1.0-alpha.117" # x-release-please-version
4
+ __version__ = "0.1.0-alpha.119" # x-release-please-version
@@ -513,6 +513,8 @@ class _BedrockInvokeProviderRequest(_BedrockProviderRequest):
513
513
  class _BedrockConverseProviderRequest(_BedrockProviderRequest):
514
514
  @override
515
515
  def process_request(self, instance: Any, extra_headers: 'dict[str, str]', args: Sequence[Any], kwargs: Any) -> bool:
516
+ super().process_request(instance, extra_headers, args, kwargs)
517
+
516
518
  guardrail_config = kwargs.get("guardrailConfig", {})
517
519
  if guardrail_config:
518
520
  guardrailIdentifier = guardrail_config.get("guardrailIdentifier", "")
@@ -571,7 +571,7 @@ class _PayiInstrumentor:
571
571
  # Try to get the response body as JSON
572
572
  body = e.body
573
573
  if body is None:
574
- self._logger.error("APIStatusError response has no body attribute")
574
+ self._logger.warning(f"Pay-i connection exception {e} has no body")
575
575
  return XproxyError(code="unknown_error", message=str(e))
576
576
 
577
577
  # If body is bytes, decode to string
@@ -585,8 +585,9 @@ class _PayiInstrumentor:
585
585
  if not body_dict:
586
586
  try:
587
587
  body_dict = json.loads(body) # type: ignore
588
- except Exception as json_ex:
589
- self._logger.error(f"Failed to parse response body as JSON: {json_ex}")
588
+ except Exception:
589
+ body_type = type(body).__name__ # type: ignore
590
+ self._logger.warning(f"Pay-i connection exception {e} cannot parse response JSON body for body type {body_type}")
590
591
  return XproxyError(code="invalid_json", message=str(e))
591
592
 
592
593
  xproxy_error = body_dict.get("xproxy_error", {})
@@ -595,7 +596,7 @@ class _PayiInstrumentor:
595
596
  return XproxyError(code=code, message=message)
596
597
 
597
598
  except Exception as ex:
598
- self._logger.error(f"Exception in _process_api_status_error: {ex}")
599
+ self._logger.warning(f"Pay-i connection exception {e} _process_api_status_error handled exception {ex}")
599
600
  return XproxyError(code="exception", message=str(ex))
600
601
 
601
602
  def _ingest_units_worker(self, request: _ProviderRequest) -> Optional[Union[XproxyResult, XproxyError]]:
@@ -989,12 +990,14 @@ class _PayiInstrumentor:
989
990
 
990
991
  # after _udpate_headers, all metadata to add to ingest is in extra_headers, keyed by the xproxy-xxx header name
991
992
  extra_headers: Optional[dict[str, str]] = kwargs.get("extra_headers")
992
- if extra_headers is None:
993
- extra_headers = {}
993
+ extra_headers = (extra_headers or {}).copy()
994
994
  self._update_extra_headers(context, extra_headers)
995
995
 
996
996
  if context.get("proxy", self._proxy_default):
997
- if "extra_headers" not in kwargs and extra_headers:
997
+ if not request.supports_extra_headers:
998
+ kwargs.pop("extra_headers", None)
999
+ elif extra_headers:
1000
+ # Pass the copy to the wrapped function. Assumes anthropic and openai clients
998
1001
  kwargs["extra_headers"] = extra_headers
999
1002
 
1000
1003
  self._logger.debug(f"async_invoke_wrapper: sending proxy request")
@@ -1025,6 +1028,10 @@ class _PayiInstrumentor:
1025
1028
  self._prepare_ingest(request, context, extra_headers, args, kwargs)
1026
1029
  self._logger.debug(f"async_invoke_wrapper: calling wrapped instance (stream={stream})")
1027
1030
 
1031
+ if "extra_headers" in kwargs:
1032
+ # replace the original extra_headers with the updated copy which has all of the Pay-i headers removed
1033
+ kwargs["extra_headers"] = extra_headers
1034
+
1028
1035
  sw.start()
1029
1036
  response = await wrapped(*args, **kwargs)
1030
1037
 
@@ -1109,15 +1116,14 @@ class _PayiInstrumentor:
1109
1116
 
1110
1117
  # after _udpate_headers, all metadata to add to ingest is in extra_headers, keyed by the xproxy-xxx header name
1111
1118
  extra_headers: Optional[dict[str, str]] = kwargs.get("extra_headers")
1112
- if extra_headers is None:
1113
- extra_headers = {}
1119
+ extra_headers = (extra_headers or {}).copy()
1114
1120
  self._update_extra_headers(context, extra_headers)
1115
1121
 
1116
1122
  if context.get("proxy", self._proxy_default):
1117
1123
  if not request.supports_extra_headers:
1118
1124
  kwargs.pop("extra_headers", None)
1119
- elif "extra_headers" not in kwargs and extra_headers:
1120
- # assumes anthropic and openai clients
1125
+ elif extra_headers:
1126
+ # Pass the copy to the wrapped function. Assumes anthropic and openai clients
1121
1127
  kwargs["extra_headers"] = extra_headers
1122
1128
 
1123
1129
  self._logger.debug(f"invoke_wrapper: sending proxy request")
@@ -1148,6 +1154,10 @@ class _PayiInstrumentor:
1148
1154
  self._prepare_ingest(request, context, extra_headers, args, kwargs)
1149
1155
  self._logger.debug(f"invoke_wrapper: calling wrapped instance (stream={stream})")
1150
1156
 
1157
+ if "extra_headers" in kwargs:
1158
+ # replace the original extra_headers with the updated copy which has all of the Pay-i headers removed
1159
+ kwargs["extra_headers"] = extra_headers
1160
+
1151
1161
  sw.start()
1152
1162
  response = wrapped(*args, **kwargs)
1153
1163
 
@@ -1,3 +0,0 @@
1
- {
2
- ".": "0.1.0-alpha.117"
3
- }
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
File without changes
File without changes