paid-python 0.2.1__tar.gz → 0.3.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 (105) hide show
  1. {paid_python-0.2.1 → paid_python-0.3.0}/PKG-INFO +2 -1
  2. {paid_python-0.2.1 → paid_python-0.3.0}/pyproject.toml +2 -1
  3. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/tracing/autoinstrumentation.py +24 -1
  4. {paid_python-0.2.1 → paid_python-0.3.0}/LICENSE +0 -0
  5. {paid_python-0.2.1 → paid_python-0.3.0}/README.md +0 -0
  6. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/__init__.py +0 -0
  7. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/agents/__init__.py +0 -0
  8. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/agents/client.py +0 -0
  9. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/agents/raw_client.py +0 -0
  10. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/client.py +0 -0
  11. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/contacts/__init__.py +0 -0
  12. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/contacts/client.py +0 -0
  13. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/contacts/raw_client.py +0 -0
  14. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/core/__init__.py +0 -0
  15. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/core/api_error.py +0 -0
  16. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/core/client_wrapper.py +0 -0
  17. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/core/datetime_utils.py +0 -0
  18. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/core/file.py +0 -0
  19. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/core/force_multipart.py +0 -0
  20. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/core/http_client.py +0 -0
  21. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/core/http_response.py +0 -0
  22. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/core/jsonable_encoder.py +0 -0
  23. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/core/pydantic_utilities.py +0 -0
  24. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/core/query_encoder.py +0 -0
  25. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/core/remove_none_from_dict.py +0 -0
  26. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/core/request_options.py +0 -0
  27. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/core/serialization.py +0 -0
  28. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/customers/__init__.py +0 -0
  29. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/customers/client.py +0 -0
  30. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/customers/raw_client.py +0 -0
  31. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/environment.py +0 -0
  32. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/errors/__init__.py +0 -0
  33. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/errors/bad_request_error.py +0 -0
  34. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/errors/forbidden_error.py +0 -0
  35. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/errors/not_found_error.py +0 -0
  36. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/logger.py +0 -0
  37. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/orders/__init__.py +0 -0
  38. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/orders/client.py +0 -0
  39. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/orders/lines/__init__.py +0 -0
  40. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/orders/lines/client.py +0 -0
  41. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/orders/lines/raw_client.py +0 -0
  42. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/orders/raw_client.py +0 -0
  43. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/py.typed +0 -0
  44. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/tracing/__init__.py +0 -0
  45. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/tracing/context_data.py +0 -0
  46. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/tracing/context_manager.py +0 -0
  47. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/tracing/distributed_tracing.py +0 -0
  48. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/tracing/signal.py +0 -0
  49. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/tracing/tracing.py +0 -0
  50. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/tracing/wrappers/__init__.py +0 -0
  51. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/tracing/wrappers/anthropic/__init__.py +0 -0
  52. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/tracing/wrappers/anthropic/anthropicWrapper.py +0 -0
  53. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/tracing/wrappers/bedrock/__init__.py +0 -0
  54. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/tracing/wrappers/bedrock/bedrockWrapper.py +0 -0
  55. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/tracing/wrappers/gemini/__init__.py +0 -0
  56. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/tracing/wrappers/gemini/geminiWrapper.py +0 -0
  57. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/tracing/wrappers/langchain/__init__.py +0 -0
  58. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/tracing/wrappers/langchain/paidLangChainCallback.py +0 -0
  59. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/tracing/wrappers/llamaindex/__init__.py +0 -0
  60. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/tracing/wrappers/llamaindex/llamaIndexWrapper.py +0 -0
  61. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/tracing/wrappers/mistral/__init__.py +0 -0
  62. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/tracing/wrappers/mistral/mistralWrapper.py +0 -0
  63. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/tracing/wrappers/openai/__init__.py +0 -0
  64. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/tracing/wrappers/openai/openAiWrapper.py +0 -0
  65. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/tracing/wrappers/openai_agents/__init__.py +0 -0
  66. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/tracing/wrappers/openai_agents/openaiAgentsHook.py +0 -0
  67. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/tracing/wrappers/utils.py +0 -0
  68. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/types/__init__.py +0 -0
  69. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/types/address.py +0 -0
  70. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/types/agent.py +0 -0
  71. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/types/agent_attribute.py +0 -0
  72. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/types/agent_price_point.py +0 -0
  73. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/types/agent_price_point_tiers.py +0 -0
  74. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/types/agent_update.py +0 -0
  75. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/types/api_error.py +0 -0
  76. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/types/billing_frequency.py +0 -0
  77. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/types/charge_type.py +0 -0
  78. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/types/contact.py +0 -0
  79. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/types/cost_amount.py +0 -0
  80. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/types/cost_trace.py +0 -0
  81. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/types/cost_traces_response.py +0 -0
  82. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/types/creation_source.py +0 -0
  83. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/types/creation_state.py +0 -0
  84. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/types/customer.py +0 -0
  85. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/types/customer_update.py +0 -0
  86. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/types/entitlement_usage.py +0 -0
  87. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/types/error.py +0 -0
  88. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/types/order.py +0 -0
  89. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/types/order_line.py +0 -0
  90. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/types/order_line_attribute.py +0 -0
  91. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/types/order_line_attribute_create.py +0 -0
  92. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/types/order_line_attribute_pricing.py +0 -0
  93. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/types/order_line_create.py +0 -0
  94. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/types/pagination_meta.py +0 -0
  95. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/types/price_point.py +0 -0
  96. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/types/pricing.py +0 -0
  97. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/types/pricing_model_type.py +0 -0
  98. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/types/salutation.py +0 -0
  99. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/types/signal.py +0 -0
  100. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/types/tax_exempt_status.py +0 -0
  101. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/types/tier.py +0 -0
  102. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/usage/__init__.py +0 -0
  103. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/usage/client.py +0 -0
  104. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/usage/raw_client.py +0 -0
  105. {paid_python-0.2.1 → paid_python-0.3.0}/src/paid/version.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: paid-python
3
- Version: 0.2.1
3
+ Version: 0.3.0
4
4
  Summary:
5
5
  Requires-Python: >=3.9,<3.14
6
6
  Classifier: Intended Audience :: Developers
@@ -20,6 +20,7 @@ Classifier: Typing :: Typed
20
20
  Requires-Dist: httpx (>=0.21.0)
21
21
  Requires-Dist: mutagen (>=1.47.0)
22
22
  Requires-Dist: openinference-instrumentation-bedrock (>=0.1.0)
23
+ Requires-Dist: openinference-instrumentation-google-genai (>=0.1.8)
23
24
  Requires-Dist: openinference-instrumentation-openai-agents (>=1.0.0)
24
25
  Requires-Dist: opentelemetry-api (>=1.23.0)
25
26
  Requires-Dist: opentelemetry-exporter-otlp-proto-http (>=1.23.0)
@@ -3,7 +3,7 @@ name = "paid-python"
3
3
 
4
4
  [tool.poetry]
5
5
  name = "paid-python"
6
- version = "0.2.1"
6
+ version = "0.3.0"
7
7
  description = ""
8
8
  readme = "README.md"
9
9
  authors = []
@@ -49,6 +49,7 @@ opentelemetry-instrumentation-openai = ">=0.47.0"
49
49
  opentelemetry-instrumentation-langchain = ">=0.47.0"
50
50
  openinference-instrumentation-openai-agents = ">=1.0.0"
51
51
  openinference-instrumentation-bedrock = ">=0.1.0"
52
+ openinference-instrumentation-google-genai = ">=0.1.8"
52
53
 
53
54
  [tool.poetry.group.dev.dependencies]
54
55
  mypy = "==1.13.0"
@@ -56,6 +56,13 @@ try:
56
56
  except ImportError:
57
57
  LANGCHAIN_AVAILABLE = False
58
58
 
59
+ try:
60
+ from openinference.instrumentation.google_genai import GoogleGenAIInstrumentor
61
+
62
+ GOOGLE_GENAI_AVAILABLE = True
63
+ except ImportError:
64
+ GOOGLE_GENAI_AVAILABLE = False
65
+
59
66
 
60
67
  # Track which instrumentors have been initialized
61
68
  _initialized_instrumentors: List[str] = []
@@ -77,6 +84,7 @@ def paid_autoinstrument(libraries: Optional[List[str]] = None) -> None:
77
84
  - "openai-agents": OpenAI Agents SDK
78
85
  - "bedrock": AWS Bedrock
79
86
  - "langchain": LangChain library
87
+ - "google-genai": Google GenAI library
80
88
  If None, all supported libraries that are installed will be instrumented.
81
89
 
82
90
  Note:
@@ -106,7 +114,7 @@ def paid_autoinstrument(libraries: Optional[List[str]] = None) -> None:
106
114
 
107
115
  # Default to all supported libraries if none specified
108
116
  if libraries is None:
109
- libraries = ["anthropic", "gemini", "openai", "openai-agents", "bedrock", "langchain"]
117
+ libraries = ["anthropic", "gemini", "openai", "openai-agents", "bedrock", "langchain", "google-genai"]
110
118
 
111
119
  for library in libraries:
112
120
  if library in _initialized_instrumentors:
@@ -125,6 +133,8 @@ def paid_autoinstrument(libraries: Optional[List[str]] = None) -> None:
125
133
  _instrument_bedrock()
126
134
  elif library == "langchain":
127
135
  _instrument_langchain()
136
+ elif library == "google-genai":
137
+ _instrument_google_genai()
128
138
  else:
129
139
  logger.warning(
130
140
  f"Unknown library '{library}' - supported libraries: anthropic, gemini, openai, openai-agents, bedrock, langchain"
@@ -222,3 +232,16 @@ def _instrument_langchain() -> None:
222
232
 
223
233
  _initialized_instrumentors.append("langchain")
224
234
  logger.info("LangChain auto-instrumentation enabled")
235
+
236
+ def _instrument_google_genai() -> None:
237
+ """
238
+ Instrument Google GenAI using openinference-instrumentation-google-genai.
239
+ """
240
+ if not GOOGLE_GENAI_AVAILABLE:
241
+ logger.warning("Google GenAI instrumentation library not available, skipping instrumentation")
242
+ return
243
+
244
+
245
+ GoogleGenAIInstrumentor().instrument(tracer_provider=tracing.paid_tracer_provider)
246
+ _initialized_instrumentors.append("google-genai")
247
+ logger.info("Google GenAI auto-instrumentation enabled")
File without changes
File without changes