weave-python 0.28.1__tar.gz → 0.30.3__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 (227) hide show
  1. weave_python-0.30.3/.github/runs-on.yml +1 -0
  2. {weave_python-0.28.1 → weave_python-0.30.3}/.github/workflows/generate.yaml +52 -15
  3. {weave_python-0.28.1 → weave_python-0.30.3}/.github/workflows/release.yaml +9 -5
  4. {weave_python-0.28.1 → weave_python-0.30.3}/.gitignore +2 -1
  5. weave_python-0.30.3/LICENSE +120 -0
  6. weave_python-0.30.3/PKG-INFO +52 -0
  7. weave_python-0.30.3/README.md +41 -0
  8. weave_python-0.30.3/Taskfile.yaml +20 -0
  9. {weave_python-0.28.1 → weave_python-0.30.3}/buf.gen.yaml +2 -2
  10. {weave_python-0.28.1 → weave_python-0.30.3}/pyproject.toml +6 -1
  11. {weave_python-0.28.1 → weave_python-0.30.3}/tools/sqlcgen/README.md +5 -2
  12. {weave_python-0.28.1 → weave_python-0.30.3}/tools/sqlcgen/sqlcgen.py +23 -2
  13. {weave_python-0.28.1 → weave_python-0.30.3}/tools/sqlcgen/test_sqlcgen.py +18 -3
  14. weave_python-0.30.3/uv.lock +151 -0
  15. weave_python-0.30.3/weave/weaveapi/auth/v1/service_pb2.py +324 -0
  16. weave_python-0.30.3/weave/weaveapi/auth/v1/service_pb2.pyi +1560 -0
  17. weave_python-0.30.3/weave/weaveapi/auth/v1/service_pb2_grpc.pyi +519 -0
  18. weave_python-0.30.3/weave/weaveapi/auth/v1/session_pb2.py +46 -0
  19. weave_python-0.30.3/weave/weaveapi/auth/v1/session_pb2.pyi +131 -0
  20. weave_python-0.30.3/weave/weaveapi/auth/v1/session_pb2_grpc.pyi +21 -0
  21. weave_python-0.30.3/weave/weaveapi/auth/v1/usage_pb2.py +56 -0
  22. weave_python-0.30.3/weave/weaveapi/auth/v1/usage_pb2.pyi +295 -0
  23. weave_python-0.30.3/weave/weaveapi/auth/v1/usage_pb2_grpc.pyi +21 -0
  24. weave_python-0.30.3/weave/weaveapi/auth/v1/user_pb2.py +94 -0
  25. weave_python-0.30.3/weave/weaveapi/auth/v1/user_pb2.pyi +677 -0
  26. weave_python-0.30.3/weave/weaveapi/auth/v1/user_pb2_grpc.pyi +21 -0
  27. weave_python-0.30.3/weave/weaveapi/generate/v1/configuration_pb2.py +69 -0
  28. weave_python-0.30.3/weave/weaveapi/generate/v1/configuration_pb2.pyi +406 -0
  29. weave_python-0.30.3/weave/weaveapi/generate/v1/configuration_pb2_grpc.pyi +21 -0
  30. weave_python-0.30.3/weave/weaveapi/generate/v1/generate_pb2.py +64 -0
  31. weave_python-0.30.3/weave/weaveapi/generate/v1/generate_pb2.pyi +150 -0
  32. weave_python-0.30.3/weave/weaveapi/generate/v1/generate_pb2_grpc.pyi +21 -0
  33. weave_python-0.30.3/weave/weaveapi/generate/v1/service_pb2.py +114 -0
  34. weave_python-0.30.3/weave/weaveapi/generate/v1/service_pb2.pyi +330 -0
  35. {weave_python-0.28.1 → weave_python-0.30.3}/weave/weaveapi/generate/v1/service_pb2_grpc.py +47 -0
  36. weave_python-0.30.3/weave/weaveapi/generate/v1/service_pb2_grpc.pyi +127 -0
  37. weave_python-0.30.3/weave/weaveapi/llmx/v1/architecture_pb2.py +74 -0
  38. {weave_python-0.28.1 → weave_python-0.30.3}/weave/weaveapi/llmx/v1/architecture_pb2.pyi +664 -555
  39. weave_python-0.30.3/weave/weaveapi/llmx/v1/architecture_pb2_grpc.pyi +21 -0
  40. weave_python-0.30.3/weave/weaveapi/llmx/v1/capabilities_pb2.py +120 -0
  41. weave_python-0.30.3/weave/weaveapi/llmx/v1/capabilities_pb2.pyi +1728 -0
  42. weave_python-0.30.3/weave/weaveapi/llmx/v1/capabilities_pb2_grpc.pyi +21 -0
  43. weave_python-0.30.3/weave/weaveapi/llmx/v1/model_pb2.py +90 -0
  44. weave_python-0.30.3/weave/weaveapi/llmx/v1/model_pb2.pyi +825 -0
  45. weave_python-0.30.3/weave/weaveapi/llmx/v1/model_pb2_grpc.pyi +21 -0
  46. weave_python-0.30.3/weave/weaveapi/llmx/v1/pricing_pb2.py +58 -0
  47. {weave_python-0.28.1 → weave_python-0.30.3}/weave/weaveapi/llmx/v1/pricing_pb2.pyi +194 -172
  48. weave_python-0.30.3/weave/weaveapi/llmx/v1/pricing_pb2_grpc.pyi +21 -0
  49. {weave_python-0.28.1 → weave_python-0.30.3}/weave/weaveapi/llmx/v1/provider_pb2.py +6 -6
  50. weave_python-0.30.3/weave/weaveapi/llmx/v1/provider_pb2.pyi +128 -0
  51. weave_python-0.30.3/weave/weaveapi/llmx/v1/provider_pb2_grpc.pyi +21 -0
  52. weave_python-0.30.3/weave/weaveapi/llmx/v1/service_pb2.py +318 -0
  53. weave_python-0.30.3/weave/weaveapi/llmx/v1/service_pb2.pyi +2019 -0
  54. weave_python-0.30.3/weave/weaveapi/llmx/v1/service_pb2_grpc.pyi +223 -0
  55. weave_python-0.30.3/weave/weaveapi/mcpregistry/v1/server_pb2.py +48 -0
  56. weave_python-0.30.3/weave/weaveapi/mcpregistry/v1/server_pb2.pyi +185 -0
  57. weave_python-0.30.3/weave/weaveapi/mcpregistry/v1/server_pb2_grpc.pyi +21 -0
  58. weave_python-0.30.3/weave/weaveapi/mcpregistry/v1/service_pb2.py +119 -0
  59. weave_python-0.30.3/weave/weaveapi/mcpregistry/v1/service_pb2.pyi +221 -0
  60. weave_python-0.30.3/weave/weaveapi/mcpregistry/v1/service_pb2_grpc.pyi +133 -0
  61. weave_python-0.30.3/weave/weaveapi/payment/v1/invoice_pb2.py +72 -0
  62. weave_python-0.30.3/weave/weaveapi/payment/v1/invoice_pb2.pyi +410 -0
  63. weave_python-0.30.3/weave/weaveapi/payment/v1/invoice_pb2_grpc.pyi +21 -0
  64. weave_python-0.30.3/weave/weaveapi/payment/v1/service_pb2.py +410 -0
  65. weave_python-0.30.3/weave/weaveapi/payment/v1/service_pb2.pyi +1631 -0
  66. weave_python-0.30.3/weave/weaveapi/payment/v1/service_pb2_grpc.pyi +482 -0
  67. weave_python-0.30.3/weave/weaveapi/payment/v1/subscription_pb2.py +135 -0
  68. weave_python-0.30.3/weave/weaveapi/payment/v1/subscription_pb2.pyi +811 -0
  69. weave_python-0.30.3/weave/weaveapi/payment/v1/subscription_pb2_grpc.pyi +21 -0
  70. {weave_python-0.28.1 → weave_python-0.30.3}/weave/weaveapi/storage/v1/auth_pb2.py +6 -6
  71. weave_python-0.30.3/weave/weaveapi/storage/v1/auth_pb2.pyi +55 -0
  72. weave_python-0.30.3/weave/weaveapi/storage/v1/auth_pb2_grpc.pyi +21 -0
  73. weave_python-0.30.3/weave/weaveapi/storage/v1/nosql_database_pb2.py +83 -0
  74. weave_python-0.30.3/weave/weaveapi/storage/v1/nosql_database_pb2.pyi +509 -0
  75. weave_python-0.30.3/weave/weaveapi/storage/v1/nosql_database_pb2_grpc.pyi +21 -0
  76. weave_python-0.30.3/weave/weaveapi/storage/v1/object_store_pb2.py +63 -0
  77. weave_python-0.30.3/weave/weaveapi/storage/v1/object_store_pb2.pyi +241 -0
  78. weave_python-0.30.3/weave/weaveapi/storage/v1/object_store_pb2_grpc.pyi +21 -0
  79. weave_python-0.30.3/weave/weaveapi/storage/v1/service_pb2.py +128 -0
  80. weave_python-0.30.3/weave/weaveapi/storage/v1/service_pb2.pyi +583 -0
  81. weave_python-0.30.3/weave/weaveapi/storage/v1/service_pb2_grpc.pyi +164 -0
  82. weave_python-0.30.3/weave/weaveapi/storage/v1/sql_database_pb2.py +75 -0
  83. weave_python-0.30.3/weave/weaveapi/storage/v1/sql_database_pb2.pyi +552 -0
  84. weave_python-0.30.3/weave/weaveapi/storage/v1/sql_database_pb2_grpc.pyi +21 -0
  85. weave_python-0.30.3/weave/weaveapi/storage/v1/storage_pb2.py +52 -0
  86. weave_python-0.30.3/weave/weaveapi/storage/v1/storage_pb2.pyi +93 -0
  87. weave_python-0.30.3/weave/weaveapi/storage/v1/storage_pb2_grpc.pyi +21 -0
  88. weave_python-0.30.3/weave/weaveapi/synthesize/v1/dataset_pb2.py +46 -0
  89. weave_python-0.30.3/weave/weaveapi/synthesize/v1/dataset_pb2.pyi +222 -0
  90. weave_python-0.30.3/weave/weaveapi/synthesize/v1/dataset_pb2_grpc.pyi +21 -0
  91. {weave_python-0.28.1 → weave_python-0.30.3}/weave/weaveapi/synthesize/v1/inline_data_pb2.py +9 -9
  92. weave_python-0.30.3/weave/weaveapi/synthesize/v1/inline_data_pb2.pyi +76 -0
  93. weave_python-0.30.3/weave/weaveapi/synthesize/v1/inline_data_pb2_grpc.pyi +21 -0
  94. {weave_python-0.28.1 → weave_python-0.30.3}/weave/weaveapi/synthesize/v1/relationship_pb2.py +19 -11
  95. weave_python-0.30.3/weave/weaveapi/synthesize/v1/relationship_pb2.pyi +134 -0
  96. weave_python-0.30.3/weave/weaveapi/synthesize/v1/relationship_pb2_grpc.pyi +21 -0
  97. weave_python-0.30.3/weave/weaveapi/synthesize/v1/service_pb2.py +92 -0
  98. weave_python-0.30.3/weave/weaveapi/synthesize/v1/service_pb2.pyi +271 -0
  99. weave_python-0.30.3/weave/weaveapi/synthesize/v1/service_pb2_grpc.pyi +104 -0
  100. weave_python-0.30.3/weave/weaveapi/synthesize/v1/training_pb2.py +55 -0
  101. weave_python-0.30.3/weave/weaveapi/synthesize/v1/training_pb2.pyi +173 -0
  102. weave_python-0.30.3/weave/weaveapi/synthesize/v1/training_pb2_grpc.pyi +21 -0
  103. weave_python-0.30.3/weave/weavesql/llmxdb/capabilities.py +487 -0
  104. weave_python-0.30.3/weave/weavesql/llmxdb/changes.py +297 -0
  105. weave_python-0.30.3/weave/weavesql/llmxdb/models.py +594 -0
  106. weave_python-0.30.3/weave/weavesql/llmxdb/providers.py +348 -0
  107. weave_python-0.30.3/weave/weavesql/llmxdb/scraper_runs.py +287 -0
  108. weave_python-0.30.3/weave/weavesql/llmxdb/search.py +721 -0
  109. weave_python-0.30.3/weave/weavesql/weavedb/dataset.py +75 -0
  110. weave_python-0.30.3/weave/weavesql/weavedb/models.py +135 -0
  111. weave_python-0.30.3/weave/weavesql/weavedb/relationships.py +72 -0
  112. weave_python-0.30.3/weave/weavesql/weavedb/storage.py +113 -0
  113. weave_python-0.30.3/weave/weavesql/weavedb/synthesizer.py +107 -0
  114. weave_python-0.28.1/PKG-INFO +0 -6
  115. weave_python-0.28.1/uv.lock +0 -136
  116. weave_python-0.28.1/weave/weaveapi/auth/v1/service_pb2.py +0 -228
  117. weave_python-0.28.1/weave/weaveapi/auth/v1/service_pb2.pyi +0 -1406
  118. weave_python-0.28.1/weave/weaveapi/auth/v1/service_pb2_grpc.pyi +0 -606
  119. weave_python-0.28.1/weave/weaveapi/auth/v1/session_pb2.py +0 -38
  120. weave_python-0.28.1/weave/weaveapi/auth/v1/session_pb2.pyi +0 -111
  121. weave_python-0.28.1/weave/weaveapi/auth/v1/session_pb2_grpc.pyi +0 -20
  122. weave_python-0.28.1/weave/weaveapi/auth/v1/usage_pb2.py +0 -52
  123. weave_python-0.28.1/weave/weaveapi/auth/v1/usage_pb2.pyi +0 -241
  124. weave_python-0.28.1/weave/weaveapi/auth/v1/usage_pb2_grpc.pyi +0 -20
  125. weave_python-0.28.1/weave/weaveapi/auth/v1/user_pb2.py +0 -52
  126. weave_python-0.28.1/weave/weaveapi/auth/v1/user_pb2.pyi +0 -594
  127. weave_python-0.28.1/weave/weaveapi/auth/v1/user_pb2_grpc.pyi +0 -20
  128. weave_python-0.28.1/weave/weaveapi/generate/v1/configuration_pb2.py +0 -57
  129. weave_python-0.28.1/weave/weaveapi/generate/v1/configuration_pb2.pyi +0 -370
  130. weave_python-0.28.1/weave/weaveapi/generate/v1/configuration_pb2_grpc.pyi +0 -20
  131. weave_python-0.28.1/weave/weaveapi/generate/v1/generate_pb2.py +0 -38
  132. weave_python-0.28.1/weave/weaveapi/generate/v1/generate_pb2.pyi +0 -52
  133. weave_python-0.28.1/weave/weaveapi/generate/v1/generate_pb2_grpc.pyi +0 -20
  134. weave_python-0.28.1/weave/weaveapi/generate/v1/service_pb2.py +0 -84
  135. weave_python-0.28.1/weave/weaveapi/generate/v1/service_pb2.pyi +0 -201
  136. weave_python-0.28.1/weave/weaveapi/generate/v1/service_pb2_grpc.pyi +0 -116
  137. weave_python-0.28.1/weave/weaveapi/llmx/v1/architecture_pb2.py +0 -74
  138. weave_python-0.28.1/weave/weaveapi/llmx/v1/architecture_pb2_grpc.pyi +0 -20
  139. weave_python-0.28.1/weave/weaveapi/llmx/v1/capabilities_pb2.py +0 -88
  140. weave_python-0.28.1/weave/weaveapi/llmx/v1/capabilities_pb2.pyi +0 -1613
  141. weave_python-0.28.1/weave/weaveapi/llmx/v1/capabilities_pb2_grpc.pyi +0 -20
  142. weave_python-0.28.1/weave/weaveapi/llmx/v1/model_pb2.py +0 -54
  143. weave_python-0.28.1/weave/weaveapi/llmx/v1/model_pb2.pyi +0 -747
  144. weave_python-0.28.1/weave/weaveapi/llmx/v1/model_pb2_grpc.pyi +0 -20
  145. weave_python-0.28.1/weave/weaveapi/llmx/v1/pricing_pb2.py +0 -54
  146. weave_python-0.28.1/weave/weaveapi/llmx/v1/pricing_pb2_grpc.pyi +0 -20
  147. weave_python-0.28.1/weave/weaveapi/llmx/v1/provider_pb2.pyi +0 -103
  148. weave_python-0.28.1/weave/weaveapi/llmx/v1/provider_pb2_grpc.pyi +0 -20
  149. weave_python-0.28.1/weave/weaveapi/llmx/v1/service_pb2.py +0 -180
  150. weave_python-0.28.1/weave/weaveapi/llmx/v1/service_pb2.pyi +0 -1771
  151. weave_python-0.28.1/weave/weaveapi/llmx/v1/service_pb2_grpc.pyi +0 -266
  152. weave_python-0.28.1/weave/weaveapi/mcpregistry/v1/server_pb2.py +0 -42
  153. weave_python-0.28.1/weave/weaveapi/mcpregistry/v1/server_pb2.pyi +0 -163
  154. weave_python-0.28.1/weave/weaveapi/mcpregistry/v1/server_pb2_grpc.pyi +0 -20
  155. weave_python-0.28.1/weave/weaveapi/mcpregistry/v1/service_pb2.py +0 -99
  156. weave_python-0.28.1/weave/weaveapi/mcpregistry/v1/service_pb2.pyi +0 -211
  157. weave_python-0.28.1/weave/weaveapi/mcpregistry/v1/service_pb2_grpc.pyi +0 -158
  158. weave_python-0.28.1/weave/weaveapi/payment/v1/invoice_pb2.py +0 -46
  159. weave_python-0.28.1/weave/weaveapi/payment/v1/invoice_pb2.pyi +0 -349
  160. weave_python-0.28.1/weave/weaveapi/payment/v1/invoice_pb2_grpc.pyi +0 -20
  161. weave_python-0.28.1/weave/weaveapi/payment/v1/service_pb2.py +0 -244
  162. weave_python-0.28.1/weave/weaveapi/payment/v1/service_pb2.pyi +0 -1492
  163. weave_python-0.28.1/weave/weaveapi/payment/v1/service_pb2_grpc.pyi +0 -572
  164. weave_python-0.28.1/weave/weaveapi/payment/v1/subscription_pb2.py +0 -59
  165. weave_python-0.28.1/weave/weaveapi/payment/v1/subscription_pb2.pyi +0 -695
  166. weave_python-0.28.1/weave/weaveapi/payment/v1/subscription_pb2_grpc.pyi +0 -20
  167. weave_python-0.28.1/weave/weaveapi/storage/v1/auth_pb2.pyi +0 -42
  168. weave_python-0.28.1/weave/weaveapi/storage/v1/auth_pb2_grpc.pyi +0 -20
  169. weave_python-0.28.1/weave/weaveapi/storage/v1/nosql_database_pb2.py +0 -59
  170. weave_python-0.28.1/weave/weaveapi/storage/v1/nosql_database_pb2.pyi +0 -443
  171. weave_python-0.28.1/weave/weaveapi/storage/v1/nosql_database_pb2_grpc.pyi +0 -20
  172. weave_python-0.28.1/weave/weaveapi/storage/v1/object_store_pb2.py +0 -49
  173. weave_python-0.28.1/weave/weaveapi/storage/v1/object_store_pb2.pyi +0 -225
  174. weave_python-0.28.1/weave/weaveapi/storage/v1/object_store_pb2_grpc.pyi +0 -20
  175. weave_python-0.28.1/weave/weaveapi/storage/v1/service_pb2.py +0 -68
  176. weave_python-0.28.1/weave/weaveapi/storage/v1/service_pb2.pyi +0 -526
  177. weave_python-0.28.1/weave/weaveapi/storage/v1/service_pb2_grpc.pyi +0 -183
  178. weave_python-0.28.1/weave/weaveapi/storage/v1/sql_database_pb2.py +0 -59
  179. weave_python-0.28.1/weave/weaveapi/storage/v1/sql_database_pb2.pyi +0 -471
  180. weave_python-0.28.1/weave/weaveapi/storage/v1/sql_database_pb2_grpc.pyi +0 -20
  181. weave_python-0.28.1/weave/weaveapi/storage/v1/storage_pb2.py +0 -38
  182. weave_python-0.28.1/weave/weaveapi/storage/v1/storage_pb2.pyi +0 -84
  183. weave_python-0.28.1/weave/weaveapi/storage/v1/storage_pb2_grpc.pyi +0 -20
  184. weave_python-0.28.1/weave/weaveapi/synthesize/v1/dataset_pb2.py +0 -44
  185. weave_python-0.28.1/weave/weaveapi/synthesize/v1/dataset_pb2.pyi +0 -192
  186. weave_python-0.28.1/weave/weaveapi/synthesize/v1/dataset_pb2_grpc.pyi +0 -20
  187. weave_python-0.28.1/weave/weaveapi/synthesize/v1/inline_data_pb2.pyi +0 -72
  188. weave_python-0.28.1/weave/weaveapi/synthesize/v1/inline_data_pb2_grpc.pyi +0 -20
  189. weave_python-0.28.1/weave/weaveapi/synthesize/v1/relationship_pb2.pyi +0 -131
  190. weave_python-0.28.1/weave/weaveapi/synthesize/v1/relationship_pb2_grpc.pyi +0 -20
  191. weave_python-0.28.1/weave/weaveapi/synthesize/v1/service_pb2.py +0 -74
  192. weave_python-0.28.1/weave/weaveapi/synthesize/v1/service_pb2.pyi +0 -237
  193. weave_python-0.28.1/weave/weaveapi/synthesize/v1/service_pb2_grpc.pyi +0 -116
  194. weave_python-0.28.1/weave/weaveapi/synthesize/v1/training_pb2.py +0 -49
  195. weave_python-0.28.1/weave/weaveapi/synthesize/v1/training_pb2.pyi +0 -160
  196. weave_python-0.28.1/weave/weaveapi/synthesize/v1/training_pb2_grpc.pyi +0 -20
  197. {weave_python-0.28.1 → weave_python-0.30.3}/.github/workflows/format-lint.yaml +0 -0
  198. {weave_python-0.28.1 → weave_python-0.30.3}/.python-version +0 -0
  199. {weave_python-0.28.1 → weave_python-0.30.3}/renovate.json +0 -0
  200. {weave_python-0.28.1 → weave_python-0.30.3}/weave/weaveapi/auth/v1/service_pb2_grpc.py +0 -0
  201. {weave_python-0.28.1 → weave_python-0.30.3}/weave/weaveapi/auth/v1/session_pb2_grpc.py +0 -0
  202. {weave_python-0.28.1 → weave_python-0.30.3}/weave/weaveapi/auth/v1/usage_pb2_grpc.py +0 -0
  203. {weave_python-0.28.1 → weave_python-0.30.3}/weave/weaveapi/auth/v1/user_pb2_grpc.py +0 -0
  204. {weave_python-0.28.1 → weave_python-0.30.3}/weave/weaveapi/generate/v1/configuration_pb2_grpc.py +0 -0
  205. {weave_python-0.28.1 → weave_python-0.30.3}/weave/weaveapi/generate/v1/generate_pb2_grpc.py +0 -0
  206. {weave_python-0.28.1 → weave_python-0.30.3}/weave/weaveapi/llmx/v1/architecture_pb2_grpc.py +0 -0
  207. {weave_python-0.28.1 → weave_python-0.30.3}/weave/weaveapi/llmx/v1/capabilities_pb2_grpc.py +0 -0
  208. {weave_python-0.28.1 → weave_python-0.30.3}/weave/weaveapi/llmx/v1/model_pb2_grpc.py +0 -0
  209. {weave_python-0.28.1 → weave_python-0.30.3}/weave/weaveapi/llmx/v1/pricing_pb2_grpc.py +0 -0
  210. {weave_python-0.28.1 → weave_python-0.30.3}/weave/weaveapi/llmx/v1/provider_pb2_grpc.py +0 -0
  211. {weave_python-0.28.1 → weave_python-0.30.3}/weave/weaveapi/llmx/v1/service_pb2_grpc.py +0 -0
  212. {weave_python-0.28.1 → weave_python-0.30.3}/weave/weaveapi/mcpregistry/v1/server_pb2_grpc.py +0 -0
  213. {weave_python-0.28.1 → weave_python-0.30.3}/weave/weaveapi/mcpregistry/v1/service_pb2_grpc.py +0 -0
  214. {weave_python-0.28.1 → weave_python-0.30.3}/weave/weaveapi/payment/v1/invoice_pb2_grpc.py +0 -0
  215. {weave_python-0.28.1 → weave_python-0.30.3}/weave/weaveapi/payment/v1/service_pb2_grpc.py +0 -0
  216. {weave_python-0.28.1 → weave_python-0.30.3}/weave/weaveapi/payment/v1/subscription_pb2_grpc.py +0 -0
  217. {weave_python-0.28.1 → weave_python-0.30.3}/weave/weaveapi/storage/v1/auth_pb2_grpc.py +0 -0
  218. {weave_python-0.28.1 → weave_python-0.30.3}/weave/weaveapi/storage/v1/nosql_database_pb2_grpc.py +0 -0
  219. {weave_python-0.28.1 → weave_python-0.30.3}/weave/weaveapi/storage/v1/object_store_pb2_grpc.py +0 -0
  220. {weave_python-0.28.1 → weave_python-0.30.3}/weave/weaveapi/storage/v1/service_pb2_grpc.py +0 -0
  221. {weave_python-0.28.1 → weave_python-0.30.3}/weave/weaveapi/storage/v1/sql_database_pb2_grpc.py +0 -0
  222. {weave_python-0.28.1 → weave_python-0.30.3}/weave/weaveapi/storage/v1/storage_pb2_grpc.py +0 -0
  223. {weave_python-0.28.1 → weave_python-0.30.3}/weave/weaveapi/synthesize/v1/dataset_pb2_grpc.py +0 -0
  224. {weave_python-0.28.1 → weave_python-0.30.3}/weave/weaveapi/synthesize/v1/inline_data_pb2_grpc.py +0 -0
  225. {weave_python-0.28.1 → weave_python-0.30.3}/weave/weaveapi/synthesize/v1/relationship_pb2_grpc.py +0 -0
  226. {weave_python-0.28.1 → weave_python-0.30.3}/weave/weaveapi/synthesize/v1/service_pb2_grpc.py +0 -0
  227. {weave_python-0.28.1 → weave_python-0.30.3}/weave/weaveapi/synthesize/v1/training_pb2_grpc.py +0 -0
@@ -0,0 +1 @@
1
+ _extends: .github-private
@@ -11,8 +11,11 @@ permissions:
11
11
 
12
12
  jobs:
13
13
  generate:
14
- runs-on: ubuntu-latest
14
+ runs-on: runs-on=${{ github.run_id }}/runner=linux-default
15
15
  steps:
16
+ - name: Configure RunsOn features
17
+ uses: runs-on/action@v2
18
+
16
19
  - id: app_token
17
20
  uses: actions/create-github-app-token@v2
18
21
  with:
@@ -20,12 +23,12 @@ jobs:
20
23
  private-key: ${{ secrets.STITCH_PRIVATE_KEY }}
21
24
  owner: weave-labs
22
25
 
23
- - uses: actions/checkout@v5
26
+ - uses: actions/checkout@v6
24
27
  with:
25
28
  persist-credentials: 'false'
26
29
 
27
30
  - name: Checkout schema
28
- uses: actions/checkout@v5
31
+ uses: actions/checkout@v6
29
32
  with:
30
33
  path: schema
31
34
  persist-credentials: 'false'
@@ -38,6 +41,33 @@ jobs:
38
41
  with:
39
42
  sqlc-version: '1.28.0'
40
43
 
44
+ - name: Checkout sqlc-gen-python (PR 92)
45
+ uses: actions/checkout@v6
46
+ with:
47
+ path: sqlc-gen-python
48
+ persist-credentials: 'false'
49
+ repository: sqlc-dev/sqlc-gen-python
50
+ ref: refs/pull/92/head
51
+
52
+ - name: Setup Go
53
+ uses: actions/setup-go@v6
54
+ with:
55
+ go-version: "stable"
56
+ cache: true
57
+ cache-dependency-path: sqlc-gen-python/go.sum
58
+
59
+ - name: Cache sqlc-gen-python wasm
60
+ id: cache_sqlc_py_wasm
61
+ uses: actions/cache@v5
62
+ with:
63
+ path: sqlc-gen-python/bin/sqlc-gen-python.wasm
64
+ key: sqlc-gen-python-pr-92-${{ hashFiles('sqlc-gen-python/go.sum', 'sqlc-gen-python/**/*.go') }}
65
+
66
+ - name: Build sqlc-gen-python wasm
67
+ if: steps.cache_sqlc_py_wasm.outputs.cache-hit != 'true'
68
+ run: make bin/sqlc-gen-python.wasm
69
+ working-directory: sqlc-gen-python
70
+
41
71
  - name: Setup buf
42
72
  uses: bufbuild/buf-action@v1
43
73
  with:
@@ -49,11 +79,19 @@ jobs:
49
79
  repo-token: ${{ secrets.GITHUB_TOKEN }}
50
80
 
51
81
  - name: Setup uv
52
- uses: astral-sh/setup-uv@v6
82
+ uses: astral-sh/setup-uv@v7
53
83
  with:
54
84
  cache-dependency-glob: "uv.lock"
55
85
  enable-cache: true
56
86
 
87
+ - name: Create uv venv
88
+ run: uv venv
89
+
90
+ - name: Install mypy-protobuf plugins (main)
91
+ run: |
92
+ uv pip install git+https://github.com/nipunn1313/mypy-protobuf.git@main
93
+ echo "${{ github.workspace }}/.venv/bin" >> $GITHUB_PATH
94
+
57
95
  - name: Clear out gen previous api gen files
58
96
  uses: weave-labs/ci/.github/actions/clean-generated-output-dir@main
59
97
  with:
@@ -64,14 +102,13 @@ jobs:
64
102
  with:
65
103
  working-directory: "weave/weavesql"
66
104
 
67
- # disabled until sqlc supports copyfrom command for python
68
- # https://github.com/sqlc-dev/sqlc-gen-python/pull/92
69
- #
70
- # - name: Generate sqlc configuration
71
- # run: python3 tools/sqlcgen/sqlcgen.py --schema schema/weavesql
72
- #
73
- # - name: Generate sql schema
74
- # run: sqlc generate
105
+ - name: Generate sqlc configuration
106
+ env:
107
+ SQLC_PY_WASM_URL: file://${{ github.workspace }}/sqlc-gen-python/bin/sqlc-gen-python.wasm
108
+ run: python3 tools/sqlcgen/sqlcgen.py --schema schema/weavesql
109
+
110
+ - name: Generate sql schema
111
+ run: sqlc generate
75
112
 
76
113
  - name: Generate proto schema
77
114
  run: buf generate
@@ -99,7 +136,7 @@ jobs:
99
136
 
100
137
  - name: Create Pull Request
101
138
  if: steps.check_changes.outputs.has_changes == 'true'
102
- uses: peter-evans/create-pull-request@v7
139
+ uses: peter-evans/create-pull-request@v8
103
140
  with:
104
141
  base: 'main'
105
142
  delete-branch: 'true'
@@ -107,6 +144,6 @@ jobs:
107
144
  This PR updates the generated code from schema version ${{ github.event.client_payload.schema_version }}.
108
145
  Automated changes by GitHub Actions workflow.
109
146
  branch: "update-schema-${{ github.event.client_payload.schema_version }}"
110
- commit-message: "feat: update generated code from schema ${{ github.event.client_payload.schema_version }}"
111
- title: "Update generated code from schema ${{ github.event.client_payload.schema_version }}"
147
+ commit-message: "schema(codegen): update generated code from schema ${{ github.event.client_payload.schema_version }}"
148
+ title: "schema(codegen): update generated code from schema ${{ github.event.client_payload.schema_version }}"
112
149
  token: ${{ steps.app_token.outputs.token }}
@@ -8,10 +8,12 @@ on:
8
8
  - weave/**
9
9
  - pyproject.toml
10
10
  - .python-version
11
+ - .github/workflows/release.yaml
11
12
 
12
13
  permissions:
13
14
  contents: write
14
15
  id-token: write
16
+ actions: read
15
17
 
16
18
  jobs:
17
19
  tag-and-release:
@@ -24,17 +26,19 @@ jobs:
24
26
 
25
27
  package:
26
28
  needs: tag-and-release
27
- uses: weave-labs/ci/.github/workflows/publish-python.yaml@main
29
+ uses: weave-labs/ci/.github/workflows/python-build.yaml@main
30
+
28
31
  publish:
29
32
  needs: package
30
- runs-on: ubuntu-latest
31
- permissions:
32
- id-token: write
33
+ runs-on: runs-on=${{ github.run_id }}/runner=linux-default
33
34
  environment:
34
35
  name: pypi
35
36
  url: https://pypi.org/p/weave-python
36
37
  steps:
37
- - uses: actions/download-artifact@v5
38
+ - name: Configure RunsOn features
39
+ uses: runs-on/action@v2
40
+
41
+ - uses: actions/download-artifact@v7
38
42
  with:
39
43
  name: dist
40
44
  path: dist/
@@ -331,4 +331,5 @@ cython_debug/
331
331
  ### Custom
332
332
 
333
333
  schema/
334
- sqlc.yaml
334
+ sqlc.yaml
335
+ sqlc-gen-python
@@ -0,0 +1,120 @@
1
+ # Fair Core License, Version 1.0, ALv2 Future License
2
+
3
+ ## Abbreviation
4
+
5
+ FCL-1.0-ALv2
6
+
7
+ ## Notice
8
+
9
+ Copyright 2025-Present Weave Labs
10
+
11
+ ## Terms and Conditions
12
+
13
+ ### Licensor ("We")
14
+
15
+ The party offering the Software under these Terms and Conditions.
16
+
17
+ ### The Software
18
+
19
+ The "Software" is each version of the software that we make available under
20
+ these Terms and Conditions, as indicated by our inclusion of these Terms and
21
+ Conditions with the Software.
22
+
23
+ ### License Grant
24
+
25
+ Subject to your compliance with this License Grant and the Limitations,
26
+ Patents, Redistribution and Trademark clauses below, we hereby grant you the
27
+ right to use, copy, modify, create derivative works, publicly perform, publicly
28
+ display and redistribute the Software for any Permitted Purpose identified
29
+ below.
30
+
31
+ ### Permitted Purpose
32
+
33
+ A Permitted Purpose is any purpose other than a Competing Use. A Competing Use
34
+ means making the Software available to others in a commercial product or
35
+ service that:
36
+
37
+ 1. substitutes for the Software;
38
+
39
+ 2. substitutes for any other product or service we offer using the Software
40
+ that exists as of the date we make the Software available; or
41
+
42
+ 3. offers the same or substantially similar functionality as the Software.
43
+
44
+ Permitted Purposes specifically include using the Software:
45
+
46
+ 1. for your internal use and access;
47
+
48
+ 2. for non-commercial education;
49
+
50
+ 3. for non-commercial research; and
51
+
52
+ 4. in connection with professional services that you provide to a licensee
53
+ using the Software in accordance with these Terms and Conditions.
54
+
55
+ ### Limitations
56
+
57
+ You must not move, change, disable, or circumvent the license key functionality
58
+ in the Software; or modify any portion of the Software protected by the license
59
+ key to:
60
+
61
+ 1. enable access to the protected functionality without a valid license key; or
62
+
63
+ 2. remove the protected functionality.
64
+
65
+ ### Patents
66
+
67
+ To the extent your use for a Permitted Purpose would necessarily infringe our
68
+ patents, the license grant above includes a license under our patents. If you
69
+ make a claim against any party that the Software infringes or contributes to
70
+ the infringement of any patent, then your patent license to the Software ends
71
+ immediately.
72
+
73
+ ### Redistribution
74
+
75
+ The Terms and Conditions apply to all copies, modifications and derivatives of
76
+ the Software.
77
+
78
+ If you redistribute any copies, modifications or derivatives of the Software,
79
+ you must include a copy of or a link to these Terms and Conditions and not
80
+ remove any copyright or other proprietary notices provided in or with the
81
+ Software.
82
+
83
+ ### Disclaimer
84
+
85
+ THE SOFTWARE IS PROVIDED "AS IS" AND WITHOUT WARRANTIES OF ANY KIND, EXPRESS OR
86
+ IMPLIED, INCLUDING WITHOUT LIMITATION WARRANTIES OF FITNESS FOR A PARTICULAR
87
+ PURPOSE, MERCHANTABILITY, TITLE OR NON-INFRINGEMENT.
88
+
89
+ IN NO EVENT WILL WE HAVE ANY LIABILITY TO YOU ARISING OUT OF OR RELATED TO THE
90
+ SOFTWARE, INCLUDING INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES,
91
+ EVEN IF WE HAVE BEEN INFORMED OF THEIR POSSIBILITY IN ADVANCE.
92
+
93
+ In the event the provision of this Disclaimer section is unenforceable under
94
+ applicable law, the licenses granted herein are void.
95
+
96
+ ### Trademarks
97
+
98
+ Except for displaying the License Details and identifying us as the origin of
99
+ the Software, you have no right under these Terms and Conditions to use our
100
+ trademarks, trade names, service marks or product names.
101
+
102
+ ## Grant of Future License
103
+
104
+ We hereby irrevocably grant you an additional license to use the Software,
105
+ under the Apache License, Version 2.0, that is effective on the second
106
+ anniversary of the date we make the Software available. On or after that date,
107
+ you may use the Software under the Apache License, Version 2.0, in which case
108
+ the following will apply:
109
+
110
+ Licensed under the Apache License, Version 2.0 (the "License"); you may not use
111
+ this file except in compliance with the License.
112
+
113
+ You may obtain a copy of the License at
114
+
115
+ http://www.apache.org/licenses/LICENSE-2.0
116
+
117
+ Unless required by applicable law or agreed to in writing, software distributed
118
+ under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
119
+ CONDITIONS OF ANY KIND, either express or implied. See the License for the
120
+ specific language governing permissions and limitations under the License.
@@ -0,0 +1,52 @@
1
+ Metadata-Version: 2.4
2
+ Name: weave-python
3
+ Version: 0.30.3
4
+ Author: Weave Labs
5
+ License: FCL-1.0-ALv2
6
+ License-File: LICENSE
7
+ Requires-Python: >=3.10
8
+ Requires-Dist: protobuf>=6.30.2
9
+ Requires-Dist: sqlalchemy>=2.0.40
10
+ Description-Content-Type: text/markdown
11
+
12
+ # Weave Python SDK
13
+
14
+ Weave Python provides client utilities for integrating with Weave platform services,
15
+ covering authentication, generation, synthesis, storage, and more. It is intended
16
+ for Python applications that need to orchestrate Weave workflows without managing
17
+ low-level HTTP plumbing.
18
+
19
+ ## Installation
20
+
21
+ ```bash
22
+ pip install weave-python
23
+ ```
24
+
25
+ The package requires Python 3.10 or newer.
26
+
27
+ ## Quick Start
28
+
29
+ ```python
30
+ from weave.weaveapi import auth, generate
31
+
32
+ # Authenticate with your Weave credentials
33
+ session = auth.login_with_api_key("your-api-key")
34
+
35
+ # Send a generation request
36
+ result = generate.text(session=session, prompt="Hello Weave!")
37
+ print(result.text)
38
+ ```
39
+
40
+ Refer to the individual subpackages under `weave.weaveapi` (for example `auth`,
41
+ `synthesize`, `storage`, and `payment`) for domain-specific helpers.
42
+
43
+ ## Contributing
44
+
45
+ 1. Create a virtual environment and install dev dependencies with `uv pip sync uv.lock`.
46
+ 2. Run formatting and linting via `task format` and `task lint`.
47
+ 3. Open a pull request with context on the workflow or service you changed.
48
+
49
+ ## License
50
+
51
+ Distributed under the Apache Software License and MIT License. See `LICENSE` for
52
+ additional licensing details.
@@ -0,0 +1,41 @@
1
+ # Weave Python SDK
2
+
3
+ Weave Python provides client utilities for integrating with Weave platform services,
4
+ covering authentication, generation, synthesis, storage, and more. It is intended
5
+ for Python applications that need to orchestrate Weave workflows without managing
6
+ low-level HTTP plumbing.
7
+
8
+ ## Installation
9
+
10
+ ```bash
11
+ pip install weave-python
12
+ ```
13
+
14
+ The package requires Python 3.10 or newer.
15
+
16
+ ## Quick Start
17
+
18
+ ```python
19
+ from weave.weaveapi import auth, generate
20
+
21
+ # Authenticate with your Weave credentials
22
+ session = auth.login_with_api_key("your-api-key")
23
+
24
+ # Send a generation request
25
+ result = generate.text(session=session, prompt="Hello Weave!")
26
+ print(result.text)
27
+ ```
28
+
29
+ Refer to the individual subpackages under `weave.weaveapi` (for example `auth`,
30
+ `synthesize`, `storage`, and `payment`) for domain-specific helpers.
31
+
32
+ ## Contributing
33
+
34
+ 1. Create a virtual environment and install dev dependencies with `uv pip sync uv.lock`.
35
+ 2. Run formatting and linting via `task format` and `task lint`.
36
+ 3. Open a pull request with context on the workflow or service you changed.
37
+
38
+ ## License
39
+
40
+ Distributed under the Apache Software License and MIT License. See `LICENSE` for
41
+ additional licensing details.
@@ -0,0 +1,20 @@
1
+ version: '3'
2
+
3
+ tasks:
4
+ check:
5
+ cmds:
6
+ - task: fmt
7
+ - task: lint
8
+ - task: test
9
+
10
+ lint:
11
+ cmds:
12
+ - uv run ruff check --fix
13
+
14
+ fmt:
15
+ cmds:
16
+ - uv run ruff format
17
+
18
+ test:
19
+ cmds:
20
+ - python3 tools/sqlcgen/test_sqlcgen.py
@@ -10,8 +10,8 @@ plugins:
10
10
  - remote: "buf.build/grpc/python"
11
11
  out: "weave"
12
12
 
13
- - remote: "buf.build/community/nipunn1313-mypy"
13
+ - local: "protoc-gen-mypy"
14
14
  out: "weave"
15
15
 
16
- - remote: "buf.build/community/nipunn1313-mypy-grpc"
16
+ - local: "protoc-gen-mypy_grpc"
17
17
  out: "weave"
@@ -2,6 +2,11 @@
2
2
  name = "weave-python"
3
3
  dynamic = ["version"]
4
4
  requires-python = ">=3.10"
5
+ readme = "README.md"
6
+ license = { text = "FCL-1.0-ALv2" }
7
+ authors = [
8
+ { name = "Weave Labs" },
9
+ ]
5
10
  dependencies = [
6
11
  "protobuf>=6.30.2",
7
12
  "sqlalchemy>=2.0.40",
@@ -18,4 +23,4 @@ packages = ["weave"]
18
23
  source = "vcs"
19
24
 
20
25
  [tool.hatch.version.raw-options]
21
- version_scheme = "only-version"
26
+ version_scheme = "only-version"
@@ -62,11 +62,14 @@ The tool will generate configurations for:
62
62
 
63
63
  The tool generates sqlc.yaml with:
64
64
 
65
- - The sqlc Python plugin (sqlc-gen-python_1.3.0)
65
+ - A local sqlc-gen-python wasm (default: `file://<repo>/sqlc-gen-python/bin/sqlc-gen-python.wasm`)
66
66
  - Both sync and async querier generation
67
67
  - String enum support
68
68
  - Query parameter limit of 2
69
69
 
70
+ To override the wasm location, set `SQLC_PY_WASM_URL` before running the tool.
71
+ Use a `file://` URL for local paths (or a fully-qualified URL if hosted elsewhere).
72
+
70
73
  ## Integration with CI/CD
71
74
 
72
75
  This tool is used in the GitHub Actions workflow to dynamically generate sqlc.yaml before running `sqlc generate`:
@@ -103,4 +106,4 @@ task --list
103
106
  ## Requirements
104
107
 
105
108
  - Python 3.7+
106
- - No external dependencies (uses only Python standard library)
109
+ - No external dependencies (uses only Python standard library)
@@ -7,6 +7,7 @@ found in the schema/weavesql directory.
7
7
  """
8
8
 
9
9
  import argparse
10
+ import os
10
11
  import sys
11
12
  from pathlib import Path
12
13
  from typing import List, NamedTuple
@@ -19,6 +20,23 @@ class Database(NamedTuple):
19
20
  package: str # e.g., "weavedb", "llmxdb"
20
21
 
21
22
 
23
+ WASM_URL_ENV = "SQLC_PY_WASM_URL"
24
+ REPO_ROOT = Path(__file__).resolve().parents[3]
25
+ DEFAULT_WASM_PATH = REPO_ROOT / "sqlc-gen-python/bin/sqlc-gen-python.wasm"
26
+
27
+
28
+ def resolve_wasm_url() -> str:
29
+ wasm_url = os.environ.get(WASM_URL_ENV)
30
+ if wasm_url:
31
+ if "://" in wasm_url:
32
+ return wasm_url
33
+
34
+ wasm_path = Path(wasm_url).expanduser().resolve()
35
+ return f"file://{wasm_path.as_posix()}"
36
+
37
+ return f"file://{DEFAULT_WASM_PATH.as_posix()}"
38
+
39
+
22
40
  def find_databases(schema_dir: Path) -> List[Database]:
23
41
  """
24
42
  Find all valid database directories in the schema directory.
@@ -73,14 +91,17 @@ def generate_sqlc_config(
73
91
  output_file: Path where the generated config should be written
74
92
  schema_prefix: Prefix path to schema directory
75
93
  """
94
+ wasm_url = resolve_wasm_url()
95
+
76
96
  # Start with version and plugin configuration
77
97
  config_lines = [
78
98
  'version: "2"',
79
99
  "plugins:",
80
100
  " - name: py",
81
101
  " wasm:",
82
- " url: https://downloads.sqlc.dev/plugin/sqlc-gen-python_1.3.0.wasm",
83
- " sha256: fbedae96b5ecae2380a70fb5b925fd4bff58a6cfb1f3140375d098fbab7b3a3c",
102
+ f" url: {wasm_url}", # Using a local wasm build from sqlc-gen-python PR #92 until COPY FROM is released.
103
+ # " url: https://downloads.sqlc.dev/plugin/sqlc-gen-python_1.3.0.wasm",
104
+ # " sha256: fbedae96b5ecae2380a70fb5b925fd4bff58a6cfb1f3140375d098fbab7b3a3c",
84
105
  "sql:",
85
106
  ]
86
107
 
@@ -3,12 +3,12 @@
3
3
  Tests for the sqlcgen tool.
4
4
  """
5
5
 
6
+ import os
7
+ import sys
6
8
  import tempfile
7
9
  import unittest
8
10
  from pathlib import Path
9
11
  from unittest.mock import patch
10
- import sys
11
- import os
12
12
 
13
13
  # Add the parent directory to the path so we can import sqlcgen
14
14
  sys.path.insert(0, os.path.dirname(os.path.abspath(__file__)))
@@ -112,7 +112,8 @@ class TestSQLCGen(unittest.TestCase):
112
112
  self.assertIn('version: "2"', content)
113
113
  self.assertIn("plugins:", content)
114
114
  self.assertIn("name: py", content)
115
- self.assertIn("sqlc-gen-python_1.3.0.wasm", content)
115
+ self.assertIn("file://", content)
116
+ self.assertIn(sqlcgen.DEFAULT_WASM_PATH.as_posix(), content)
116
117
 
117
118
  # Check for database configurations
118
119
  self.assertIn('schema: "schema/weavesql/weave/migrations"', content)
@@ -146,6 +147,20 @@ class TestSQLCGen(unittest.TestCase):
146
147
  self.assertIn('schema: "custom/path/test/migrations"', content)
147
148
  self.assertIn('queries: "custom/path/test/queries"', content)
148
149
 
150
+ def test_generate_sqlc_config_with_custom_wasm_url(self):
151
+ """Test generation with custom wasm url override."""
152
+ databases = [
153
+ sqlcgen.Database("test", "testdb"),
154
+ ]
155
+ output_file = self.test_path / "sqlc.yaml"
156
+ custom_path = self.test_path / "custom/sqlc-gen-python.wasm"
157
+
158
+ with patch.dict(os.environ, {sqlcgen.WASM_URL_ENV: str(custom_path)}):
159
+ sqlcgen.generate_sqlc_config(databases, output_file)
160
+
161
+ content = output_file.read_text()
162
+ self.assertIn(f"file://{custom_path.as_posix()}", content)
163
+
149
164
  def test_main_integration(self):
150
165
  """Test the main function with real directory structure."""
151
166
  schema_dir = self.create_test_schema(["db1", "db2"])