cocoindex 0.1.31__tar.gz → 0.1.32__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 (192) hide show
  1. {cocoindex-0.1.31 → cocoindex-0.1.32}/Cargo.lock +7 -140
  2. {cocoindex-0.1.31 → cocoindex-0.1.32}/Cargo.toml +1 -2
  3. {cocoindex-0.1.31 → cocoindex-0.1.32}/PKG-INFO +1 -1
  4. {cocoindex-0.1.31 → cocoindex-0.1.32}/python/cocoindex/setting.py +1 -1
  5. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/lib_context.rs +0 -1
  6. cocoindex-0.1.32/src/server.rs +90 -0
  7. cocoindex-0.1.31/src/server.rs +0 -80
  8. {cocoindex-0.1.31 → cocoindex-0.1.32}/.cargo/config.toml +0 -0
  9. {cocoindex-0.1.31 → cocoindex-0.1.32}/.env.lib_debug +0 -0
  10. {cocoindex-0.1.31 → cocoindex-0.1.32}/.github/ISSUE_TEMPLATE//360/237/220/233-bug-report.md" +0 -0
  11. {cocoindex-0.1.31 → cocoindex-0.1.32}/.github/ISSUE_TEMPLATE//360/237/222/241-feature-request.md" +0 -0
  12. {cocoindex-0.1.31 → cocoindex-0.1.32}/.github/scripts/update_version.sh +0 -0
  13. {cocoindex-0.1.31 → cocoindex-0.1.32}/.github/workflows/CI.yml +0 -0
  14. {cocoindex-0.1.31 → cocoindex-0.1.32}/.github/workflows/_test.yml +0 -0
  15. {cocoindex-0.1.31 → cocoindex-0.1.32}/.github/workflows/docs.yml +0 -0
  16. {cocoindex-0.1.31 → cocoindex-0.1.32}/.github/workflows/release.yml +0 -0
  17. {cocoindex-0.1.31 → cocoindex-0.1.32}/.gitignore +0 -0
  18. {cocoindex-0.1.31 → cocoindex-0.1.32}/.vscode/settings.json +0 -0
  19. {cocoindex-0.1.31 → cocoindex-0.1.32}/CODE_OF_CONDUCT.md +0 -0
  20. {cocoindex-0.1.31 → cocoindex-0.1.32}/CONTRIBUTING.md +0 -0
  21. {cocoindex-0.1.31 → cocoindex-0.1.32}/LICENSE +0 -0
  22. {cocoindex-0.1.31 → cocoindex-0.1.32}/README.md +0 -0
  23. {cocoindex-0.1.31 → cocoindex-0.1.32}/dev/neo4j.yaml +0 -0
  24. {cocoindex-0.1.31 → cocoindex-0.1.32}/dev/postgres.yaml +0 -0
  25. {cocoindex-0.1.31 → cocoindex-0.1.32}/docs/.gitignore +0 -0
  26. {cocoindex-0.1.31 → cocoindex-0.1.32}/docs/README.md +0 -0
  27. {cocoindex-0.1.31 → cocoindex-0.1.32}/docs/docs/about/community.md +0 -0
  28. {cocoindex-0.1.31 → cocoindex-0.1.32}/docs/docs/about/contributing.md +0 -0
  29. {cocoindex-0.1.31 → cocoindex-0.1.32}/docs/docs/ai/llm.mdx +0 -0
  30. {cocoindex-0.1.31 → cocoindex-0.1.32}/docs/docs/core/basics.md +0 -0
  31. {cocoindex-0.1.31 → cocoindex-0.1.32}/docs/docs/core/cli.mdx +0 -0
  32. {cocoindex-0.1.31 → cocoindex-0.1.32}/docs/docs/core/custom_function.mdx +0 -0
  33. {cocoindex-0.1.31 → cocoindex-0.1.32}/docs/docs/core/data_example.svg +0 -0
  34. {cocoindex-0.1.31 → cocoindex-0.1.32}/docs/docs/core/data_types.mdx +0 -0
  35. {cocoindex-0.1.31 → cocoindex-0.1.32}/docs/docs/core/flow_def.mdx +0 -0
  36. {cocoindex-0.1.31 → cocoindex-0.1.32}/docs/docs/core/flow_example.svg +0 -0
  37. {cocoindex-0.1.31 → cocoindex-0.1.32}/docs/docs/core/flow_methods.mdx +0 -0
  38. {cocoindex-0.1.31 → cocoindex-0.1.32}/docs/docs/core/initialization.mdx +0 -0
  39. {cocoindex-0.1.31 → cocoindex-0.1.32}/docs/docs/getting_started/installation.md +0 -0
  40. {cocoindex-0.1.31 → cocoindex-0.1.32}/docs/docs/getting_started/markdown_files.zip +0 -0
  41. {cocoindex-0.1.31 → cocoindex-0.1.32}/docs/docs/getting_started/overview.md +0 -0
  42. {cocoindex-0.1.31 → cocoindex-0.1.32}/docs/docs/getting_started/quickstart.md +0 -0
  43. {cocoindex-0.1.31 → cocoindex-0.1.32}/docs/docs/ops/functions.md +0 -0
  44. {cocoindex-0.1.31 → cocoindex-0.1.32}/docs/docs/ops/sources.md +0 -0
  45. {cocoindex-0.1.31 → cocoindex-0.1.32}/docs/docs/ops/storages.md +0 -0
  46. {cocoindex-0.1.31 → cocoindex-0.1.32}/docs/docusaurus.config.ts +0 -0
  47. {cocoindex-0.1.31 → cocoindex-0.1.32}/docs/package.json +0 -0
  48. {cocoindex-0.1.31 → cocoindex-0.1.32}/docs/sidebars.ts +0 -0
  49. {cocoindex-0.1.31 → cocoindex-0.1.32}/docs/src/components/HomepageFeatures/index.tsx +0 -0
  50. {cocoindex-0.1.31 → cocoindex-0.1.32}/docs/src/components/HomepageFeatures/styles.module.css +0 -0
  51. {cocoindex-0.1.31 → cocoindex-0.1.32}/docs/src/css/custom.css +0 -0
  52. {cocoindex-0.1.31 → cocoindex-0.1.32}/docs/src/theme/Root.js +0 -0
  53. {cocoindex-0.1.31 → cocoindex-0.1.32}/docs/static/.nojekyll +0 -0
  54. {cocoindex-0.1.31 → cocoindex-0.1.32}/docs/static/img/docusaurus.png +0 -0
  55. {cocoindex-0.1.31 → cocoindex-0.1.32}/docs/static/img/favicon.ico +0 -0
  56. {cocoindex-0.1.31 → cocoindex-0.1.32}/docs/static/img/icon.svg +0 -0
  57. {cocoindex-0.1.31 → cocoindex-0.1.32}/docs/static/robots.txt +0 -0
  58. {cocoindex-0.1.31 → cocoindex-0.1.32}/docs/tsconfig.json +0 -0
  59. {cocoindex-0.1.31 → cocoindex-0.1.32}/docs/yarn.lock +0 -0
  60. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/code_embedding/.env +0 -0
  61. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/code_embedding/README.md +0 -0
  62. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/code_embedding/main.py +0 -0
  63. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/code_embedding/pyproject.toml +0 -0
  64. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/docs_to_knowledge_graph/.env +0 -0
  65. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/docs_to_knowledge_graph/README.md +0 -0
  66. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/docs_to_knowledge_graph/main.py +0 -0
  67. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/docs_to_knowledge_graph/markdown_files/1706.03762v7.md +0 -0
  68. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/docs_to_knowledge_graph/markdown_files/1810.04805v2.md +0 -0
  69. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/docs_to_knowledge_graph/markdown_files/rfc8259.md +0 -0
  70. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/docs_to_knowledge_graph/pyproject.toml +0 -0
  71. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/gdrive_text_embedding/.env.example +0 -0
  72. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/gdrive_text_embedding/.gitignore +0 -0
  73. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/gdrive_text_embedding/README.md +0 -0
  74. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/gdrive_text_embedding/data/1706.03762v7.docx +0 -0
  75. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/gdrive_text_embedding/data/1810.04805v2.docx +0 -0
  76. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/gdrive_text_embedding/main.py +0 -0
  77. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/gdrive_text_embedding/pyproject.toml +0 -0
  78. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/manuals_llm_extraction/.env +0 -0
  79. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/manuals_llm_extraction/README.md +0 -0
  80. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/manuals_llm_extraction/main.py +0 -0
  81. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/manuals_llm_extraction/manuals/array.pdf +0 -0
  82. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/manuals_llm_extraction/manuals/base64.pdf +0 -0
  83. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/manuals_llm_extraction/manuals/copy.pdf +0 -0
  84. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/manuals_llm_extraction/manuals/glob.pdf +0 -0
  85. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/manuals_llm_extraction/pyproject.toml +0 -0
  86. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/pdf_embedding/.env +0 -0
  87. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/pdf_embedding/README.md +0 -0
  88. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/pdf_embedding/main.py +0 -0
  89. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/pdf_embedding/pdf_files/1706.03762v7.pdf +0 -0
  90. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/pdf_embedding/pdf_files/1810.04805v2.pdf +0 -0
  91. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/pdf_embedding/pdf_files/rfc8259.pdf +0 -0
  92. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/pdf_embedding/pyproject.toml +0 -0
  93. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/text_embedding/.env +0 -0
  94. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/text_embedding/README.md +0 -0
  95. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/text_embedding/Text_Embedding.ipynb +0 -0
  96. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/text_embedding/main.py +0 -0
  97. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/text_embedding/markdown_files/1706.03762v7.md +0 -0
  98. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/text_embedding/markdown_files/1810.04805v2.md +0 -0
  99. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/text_embedding/markdown_files/rfc8259.md +0 -0
  100. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/text_embedding/pyproject.toml +0 -0
  101. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/text_embedding_qdrant/.env +0 -0
  102. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/text_embedding_qdrant/README.md +0 -0
  103. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/text_embedding_qdrant/main.py +0 -0
  104. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/text_embedding_qdrant/markdown_files/rfc8259.md +0 -0
  105. {cocoindex-0.1.31 → cocoindex-0.1.32}/examples/text_embedding_qdrant/pyproject.toml +0 -0
  106. {cocoindex-0.1.31 → cocoindex-0.1.32}/pyproject.toml +0 -0
  107. {cocoindex-0.1.31 → cocoindex-0.1.32}/python/cocoindex/__init__.py +0 -0
  108. {cocoindex-0.1.31 → cocoindex-0.1.32}/python/cocoindex/auth_registry.py +0 -0
  109. {cocoindex-0.1.31 → cocoindex-0.1.32}/python/cocoindex/cli.py +0 -0
  110. {cocoindex-0.1.31 → cocoindex-0.1.32}/python/cocoindex/convert.py +0 -0
  111. {cocoindex-0.1.31 → cocoindex-0.1.32}/python/cocoindex/flow.py +0 -0
  112. {cocoindex-0.1.31 → cocoindex-0.1.32}/python/cocoindex/functions.py +0 -0
  113. {cocoindex-0.1.31 → cocoindex-0.1.32}/python/cocoindex/index.py +0 -0
  114. {cocoindex-0.1.31 → cocoindex-0.1.32}/python/cocoindex/lib.py +0 -0
  115. {cocoindex-0.1.31 → cocoindex-0.1.32}/python/cocoindex/llm.py +0 -0
  116. {cocoindex-0.1.31 → cocoindex-0.1.32}/python/cocoindex/op.py +0 -0
  117. {cocoindex-0.1.31 → cocoindex-0.1.32}/python/cocoindex/py.typed +0 -0
  118. {cocoindex-0.1.31 → cocoindex-0.1.32}/python/cocoindex/query.py +0 -0
  119. {cocoindex-0.1.31 → cocoindex-0.1.32}/python/cocoindex/runtime.py +0 -0
  120. {cocoindex-0.1.31 → cocoindex-0.1.32}/python/cocoindex/setup.py +0 -0
  121. {cocoindex-0.1.31 → cocoindex-0.1.32}/python/cocoindex/sources.py +0 -0
  122. {cocoindex-0.1.31 → cocoindex-0.1.32}/python/cocoindex/storages.py +0 -0
  123. {cocoindex-0.1.31 → cocoindex-0.1.32}/python/cocoindex/tests/__init__.py +0 -0
  124. {cocoindex-0.1.31 → cocoindex-0.1.32}/python/cocoindex/tests/test_convert.py +0 -0
  125. {cocoindex-0.1.31 → cocoindex-0.1.32}/python/cocoindex/typing.py +0 -0
  126. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/base/field_attrs.rs +0 -0
  127. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/base/json_schema.rs +0 -0
  128. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/base/mod.rs +0 -0
  129. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/base/schema.rs +0 -0
  130. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/base/spec.rs +0 -0
  131. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/base/value.rs +0 -0
  132. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/builder/analyzed_flow.rs +0 -0
  133. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/builder/analyzer.rs +0 -0
  134. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/builder/flow_builder.rs +0 -0
  135. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/builder/mod.rs +0 -0
  136. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/builder/plan.rs +0 -0
  137. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/execution/db_tracking.rs +0 -0
  138. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/execution/db_tracking_setup.rs +0 -0
  139. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/execution/dumper.rs +0 -0
  140. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/execution/evaluator.rs +0 -0
  141. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/execution/live_updater.rs +0 -0
  142. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/execution/memoization.rs +0 -0
  143. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/execution/mod.rs +0 -0
  144. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/execution/query.rs +0 -0
  145. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/execution/row_indexer.rs +0 -0
  146. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/execution/source_indexer.rs +0 -0
  147. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/execution/stats.rs +0 -0
  148. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/lib.rs +0 -0
  149. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/llm/anthropic.rs +0 -0
  150. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/llm/gemini.rs +0 -0
  151. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/llm/mod.rs +0 -0
  152. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/llm/ollama.rs +0 -0
  153. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/llm/openai.rs +0 -0
  154. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/ops/factory_bases.rs +0 -0
  155. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/ops/functions/extract_by_llm.rs +0 -0
  156. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/ops/functions/mod.rs +0 -0
  157. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/ops/functions/parse_json.rs +0 -0
  158. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/ops/functions/split_recursively.rs +0 -0
  159. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/ops/interface.rs +0 -0
  160. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/ops/mod.rs +0 -0
  161. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/ops/py_factory.rs +0 -0
  162. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/ops/registration.rs +0 -0
  163. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/ops/registry.rs +0 -0
  164. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/ops/sdk.rs +0 -0
  165. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/ops/sources/google_drive.rs +0 -0
  166. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/ops/sources/local_file.rs +0 -0
  167. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/ops/sources/mod.rs +0 -0
  168. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/ops/storages/mod.rs +0 -0
  169. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/ops/storages/neo4j.rs +0 -0
  170. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/ops/storages/postgres.rs +0 -0
  171. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/ops/storages/qdrant.rs +0 -0
  172. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/ops/storages/spec.rs +0 -0
  173. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/prelude.rs +0 -0
  174. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/py/convert.rs +0 -0
  175. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/py/mod.rs +0 -0
  176. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/service/error.rs +0 -0
  177. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/service/flows.rs +0 -0
  178. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/service/mod.rs +0 -0
  179. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/service/search.rs +0 -0
  180. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/settings.rs +0 -0
  181. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/setup/auth_registry.rs +0 -0
  182. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/setup/components.rs +0 -0
  183. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/setup/db_metadata.rs +0 -0
  184. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/setup/driver.rs +0 -0
  185. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/setup/mod.rs +0 -0
  186. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/setup/states.rs +0 -0
  187. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/utils/db.rs +0 -0
  188. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/utils/fingerprint.rs +0 -0
  189. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/utils/immutable.rs +0 -0
  190. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/utils/mod.rs +0 -0
  191. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/utils/retriable.rs +0 -0
  192. {cocoindex-0.1.31 → cocoindex-0.1.32}/src/utils/yaml_ser.rs +0 -0
@@ -533,7 +533,7 @@ dependencies = [
533
533
 
534
534
  [[package]]
535
535
  name = "cocoindex"
536
- version = "0.1.31"
536
+ version = "0.1.32"
537
537
  dependencies = [
538
538
  "anyhow",
539
539
  "async-openai",
@@ -546,7 +546,6 @@ dependencies = [
546
546
  "bytes",
547
547
  "chrono",
548
548
  "config",
549
- "console-subscriber",
550
549
  "const_format",
551
550
  "derivative",
552
551
  "env_logger",
@@ -649,45 +648,6 @@ dependencies = [
649
648
  "yaml-rust2 0.8.1",
650
649
  ]
651
650
 
652
- [[package]]
653
- name = "console-api"
654
- version = "0.8.1"
655
- source = "registry+https://github.com/rust-lang/crates.io-index"
656
- checksum = "8030735ecb0d128428b64cd379809817e620a40e5001c54465b99ec5feec2857"
657
- dependencies = [
658
- "futures-core",
659
- "prost",
660
- "prost-types",
661
- "tonic",
662
- "tracing-core",
663
- ]
664
-
665
- [[package]]
666
- name = "console-subscriber"
667
- version = "0.4.1"
668
- source = "registry+https://github.com/rust-lang/crates.io-index"
669
- checksum = "6539aa9c6a4cd31f4b1c040f860a1eac9aa80e7df6b05d506a6e7179936d6a01"
670
- dependencies = [
671
- "console-api",
672
- "crossbeam-channel",
673
- "crossbeam-utils",
674
- "futures-task",
675
- "hdrhistogram",
676
- "humantime",
677
- "hyper-util",
678
- "prost",
679
- "prost-types",
680
- "serde",
681
- "serde_json",
682
- "thread_local",
683
- "tokio",
684
- "tokio-stream",
685
- "tonic",
686
- "tracing",
687
- "tracing-core",
688
- "tracing-subscriber",
689
- ]
690
-
691
651
  [[package]]
692
652
  name = "const-oid"
693
653
  version = "0.9.6"
@@ -802,15 +762,6 @@ dependencies = [
802
762
  "cfg-if",
803
763
  ]
804
764
 
805
- [[package]]
806
- name = "crossbeam-channel"
807
- version = "0.5.15"
808
- source = "registry+https://github.com/rust-lang/crates.io-index"
809
- checksum = "82b8f8f868b36967f9606790d1903570de9ceaf870a7bf9fbbd3016d636a2cb2"
810
- dependencies = [
811
- "crossbeam-utils",
812
- ]
813
-
814
765
  [[package]]
815
766
  name = "crossbeam-queue"
816
767
  version = "0.3.12"
@@ -1328,8 +1279,8 @@ dependencies = [
1328
1279
  "aho-corasick",
1329
1280
  "bstr",
1330
1281
  "log",
1331
- "regex-automata 0.4.9",
1332
- "regex-syntax 0.8.5",
1282
+ "regex-automata",
1283
+ "regex-syntax",
1333
1284
  ]
1334
1285
 
1335
1286
  [[package]]
@@ -1439,19 +1390,6 @@ dependencies = [
1439
1390
  "hashbrown 0.15.2",
1440
1391
  ]
1441
1392
 
1442
- [[package]]
1443
- name = "hdrhistogram"
1444
- version = "7.5.4"
1445
- source = "registry+https://github.com/rust-lang/crates.io-index"
1446
- checksum = "765c9198f173dd59ce26ff9f95ef0aafd0a0fe01fb9d72841bc5066a4c06511d"
1447
- dependencies = [
1448
- "base64 0.21.7",
1449
- "byteorder",
1450
- "flate2",
1451
- "nom",
1452
- "num-traits",
1453
- ]
1454
-
1455
1393
  [[package]]
1456
1394
  name = "heck"
1457
1395
  version = "0.5.0"
@@ -1543,12 +1481,6 @@ version = "1.0.3"
1543
1481
  source = "registry+https://github.com/rust-lang/crates.io-index"
1544
1482
  checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9"
1545
1483
 
1546
- [[package]]
1547
- name = "humantime"
1548
- version = "2.2.0"
1549
- source = "registry+https://github.com/rust-lang/crates.io-index"
1550
- checksum = "9b112acc8b3adf4b107a8ec20977da0273a8c386765a3ec0229bd500a1443f9f"
1551
-
1552
1484
  [[package]]
1553
1485
  name = "hyper"
1554
1486
  version = "1.6.0"
@@ -2016,15 +1948,6 @@ version = "0.4.27"
2016
1948
  source = "registry+https://github.com/rust-lang/crates.io-index"
2017
1949
  checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94"
2018
1950
 
2019
- [[package]]
2020
- name = "matchers"
2021
- version = "0.1.0"
2022
- source = "registry+https://github.com/rust-lang/crates.io-index"
2023
- checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558"
2024
- dependencies = [
2025
- "regex-automata 0.1.10",
2026
- ]
2027
-
2028
1951
  [[package]]
2029
1952
  name = "matchit"
2030
1953
  version = "0.7.3"
@@ -2822,17 +2745,8 @@ checksum = "b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191"
2822
2745
  dependencies = [
2823
2746
  "aho-corasick",
2824
2747
  "memchr",
2825
- "regex-automata 0.4.9",
2826
- "regex-syntax 0.8.5",
2827
- ]
2828
-
2829
- [[package]]
2830
- name = "regex-automata"
2831
- version = "0.1.10"
2832
- source = "registry+https://github.com/rust-lang/crates.io-index"
2833
- checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132"
2834
- dependencies = [
2835
- "regex-syntax 0.6.29",
2748
+ "regex-automata",
2749
+ "regex-syntax",
2836
2750
  ]
2837
2751
 
2838
2752
  [[package]]
@@ -2843,15 +2757,9 @@ checksum = "809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908"
2843
2757
  dependencies = [
2844
2758
  "aho-corasick",
2845
2759
  "memchr",
2846
- "regex-syntax 0.8.5",
2760
+ "regex-syntax",
2847
2761
  ]
2848
2762
 
2849
- [[package]]
2850
- name = "regex-syntax"
2851
- version = "0.6.29"
2852
- source = "registry+https://github.com/rust-lang/crates.io-index"
2853
- checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1"
2854
-
2855
2763
  [[package]]
2856
2764
  name = "regex-syntax"
2857
2765
  version = "0.8.5"
@@ -3348,15 +3256,6 @@ dependencies = [
3348
3256
  "digest",
3349
3257
  ]
3350
3258
 
3351
- [[package]]
3352
- name = "sharded-slab"
3353
- version = "0.1.7"
3354
- source = "registry+https://github.com/rust-lang/crates.io-index"
3355
- checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6"
3356
- dependencies = [
3357
- "lazy_static",
3358
- ]
3359
-
3360
3259
  [[package]]
3361
3260
  name = "shlex"
3362
3261
  version = "1.3.0"
@@ -3768,16 +3667,6 @@ dependencies = [
3768
3667
  "syn 2.0.101",
3769
3668
  ]
3770
3669
 
3771
- [[package]]
3772
- name = "thread_local"
3773
- version = "1.1.8"
3774
- source = "registry+https://github.com/rust-lang/crates.io-index"
3775
- checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c"
3776
- dependencies = [
3777
- "cfg-if",
3778
- "once_cell",
3779
- ]
3780
-
3781
3670
  [[package]]
3782
3671
  name = "time"
3783
3672
  version = "0.3.41"
@@ -4078,22 +3967,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
4078
3967
  checksum = "e672c95779cf947c5311f83787af4fa8fffd12fb27e4993211a84bdfd9610f9c"
4079
3968
  dependencies = [
4080
3969
  "once_cell",
4081
- "valuable",
4082
- ]
4083
-
4084
- [[package]]
4085
- name = "tracing-subscriber"
4086
- version = "0.3.19"
4087
- source = "registry+https://github.com/rust-lang/crates.io-index"
4088
- checksum = "e8189decb5ac0fa7bc8b96b7cb9b2701d60d48805aca84a238004d665fcc4008"
4089
- dependencies = [
4090
- "matchers",
4091
- "once_cell",
4092
- "regex",
4093
- "sharded-slab",
4094
- "thread_local",
4095
- "tracing",
4096
- "tracing-core",
4097
3970
  ]
4098
3971
 
4099
3972
  [[package]]
@@ -4104,7 +3977,7 @@ checksum = "b9ac5ea5e7f2f1700842ec071401010b9c59bf735295f6e9fa079c3dc035b167"
4104
3977
  dependencies = [
4105
3978
  "cc",
4106
3979
  "regex",
4107
- "regex-syntax 0.8.5",
3980
+ "regex-syntax",
4108
3981
  "serde_json",
4109
3982
  "streaming-iterator",
4110
3983
  "tree-sitter-language",
@@ -4476,12 +4349,6 @@ dependencies = [
4476
4349
  "serde",
4477
4350
  ]
4478
4351
 
4479
- [[package]]
4480
- name = "valuable"
4481
- version = "0.1.1"
4482
- source = "registry+https://github.com/rust-lang/crates.io-index"
4483
- checksum = "ba73ea9cf16a25df0c8caa16c51acb937d5712a8429db78a3ee29d5dcacd3a65"
4484
-
4485
4352
  [[package]]
4486
4353
  name = "vcpkg"
4487
4354
  version = "0.2.15"
@@ -2,7 +2,7 @@
2
2
  name = "cocoindex"
3
3
  # Version used for local development is always higher than others to take precedence.
4
4
  # Will be overridden for specific release versions.
5
- version = "0.1.31"
5
+ version = "0.1.32"
6
6
  edition = "2021"
7
7
 
8
8
  # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
@@ -52,7 +52,6 @@ itertools = "0.14.0"
52
52
  derivative = "2.2.0"
53
53
  hex = "0.4.3"
54
54
  schemars = "0.8.22"
55
- console-subscriber = "0.4.1"
56
55
  env_logger = "0.11.7"
57
56
  reqwest = { version = "0.12.15", default-features = false, features = [
58
57
  "json",
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cocoindex
3
- Version: 0.1.31
3
+ Version: 0.1.32
4
4
  Requires-Dist: sentence-transformers>=3.3.1
5
5
  Requires-Dist: click>=8.1.8
6
6
  Requires-Dist: rich>=14.0.0
@@ -47,7 +47,7 @@ class ServerSettings:
47
47
  """Settings for the cocoindex server."""
48
48
 
49
49
  # The address to bind the server to.
50
- address: str = "127.0.0.1:8080"
50
+ address: str = "127.0.0.1:49344"
51
51
 
52
52
  # The origins of the clients (e.g. CocoInsight UI) to allow CORS from.
53
53
  cors_origins: list[str] | None = None
@@ -127,7 +127,6 @@ pub fn get_auth_registry() -> &'static Arc<AuthRegistry> {
127
127
  static LIB_INIT: OnceLock<()> = OnceLock::new();
128
128
  pub fn create_lib_context(settings: settings::Settings) -> Result<LibContext> {
129
129
  LIB_INIT.get_or_init(|| {
130
- console_subscriber::init();
131
130
  let _ = env_logger::try_init();
132
131
 
133
132
  pyo3_async_runtimes::tokio::init_with_runtime(get_runtime()).unwrap();
@@ -0,0 +1,90 @@
1
+ use crate::prelude::*;
2
+
3
+ use crate::{lib_context::LibContext, service};
4
+ use axum::{routing, Router};
5
+ use tower::ServiceBuilder;
6
+ use tower_http::{
7
+ cors::{AllowOrigin, CorsLayer},
8
+ trace::TraceLayer,
9
+ };
10
+
11
+ #[derive(Deserialize, Debug)]
12
+ pub struct ServerSettings {
13
+ pub address: String,
14
+ #[serde(default)]
15
+ pub cors_origins: Vec<String>,
16
+ }
17
+
18
+ /// Initialize the server and return a future that will actually handle requests.
19
+ pub async fn init_server(
20
+ lib_context: Arc<LibContext>,
21
+ settings: ServerSettings,
22
+ ) -> Result<BoxFuture<'static, ()>> {
23
+ let mut cors = CorsLayer::default();
24
+ if !settings.cors_origins.is_empty() {
25
+ let origins: Vec<_> = settings
26
+ .cors_origins
27
+ .iter()
28
+ .map(|origin| origin.parse())
29
+ .collect::<Result<_, _>>()?;
30
+ cors = cors
31
+ .allow_origin(AllowOrigin::list(origins))
32
+ .allow_methods([
33
+ axum::http::Method::GET,
34
+ axum::http::Method::POST,
35
+ axum::http::Method::DELETE,
36
+ ])
37
+ .allow_headers([axum::http::header::CONTENT_TYPE]);
38
+ }
39
+ let app = Router::new()
40
+ .route(
41
+ "/cocoindex",
42
+ routing::get(|| async { "CocoIndex is running!" }),
43
+ )
44
+ .nest(
45
+ "/cocoindex/api",
46
+ Router::new()
47
+ .route("/flows", routing::get(service::flows::list_flows))
48
+ .route(
49
+ "/flows/:flowInstName",
50
+ routing::get(service::flows::get_flow_spec),
51
+ )
52
+ .route(
53
+ "/flows/:flowInstName/schema",
54
+ routing::get(service::flows::get_flow_schema),
55
+ )
56
+ .route(
57
+ "/flows/:flowInstName/keys",
58
+ routing::get(service::flows::get_keys),
59
+ )
60
+ .route(
61
+ "/flows/:flowInstName/data",
62
+ routing::get(service::flows::evaluate_data),
63
+ )
64
+ .route(
65
+ "/flows/:flowInstName/update",
66
+ routing::post(service::flows::update),
67
+ )
68
+ .route(
69
+ "/flows/:flowInstName/search",
70
+ routing::get(service::search::search),
71
+ )
72
+ .layer(
73
+ ServiceBuilder::new()
74
+ .layer(TraceLayer::new_for_http())
75
+ .layer(cors),
76
+ )
77
+ .with_state(lib_context.clone()),
78
+ );
79
+
80
+ let listener = tokio::net::TcpListener::bind(&settings.address)
81
+ .await
82
+ .context(format!("Failed to bind to address: {}", settings.address))?;
83
+
84
+ println!(
85
+ "Server running at http://{}/cocoindex",
86
+ listener.local_addr()?
87
+ );
88
+ let serve_fut = async { axum::serve(listener, app).await.unwrap() };
89
+ Ok(serve_fut.boxed())
90
+ }
@@ -1,80 +0,0 @@
1
- use crate::prelude::*;
2
-
3
- use crate::{lib_context::LibContext, service};
4
- use axum::{routing, Router};
5
- use tower::ServiceBuilder;
6
- use tower_http::{
7
- cors::{AllowOrigin, CorsLayer},
8
- trace::TraceLayer,
9
- };
10
-
11
- #[derive(Deserialize, Debug)]
12
- pub struct ServerSettings {
13
- pub address: String,
14
- #[serde(default)]
15
- pub cors_origins: Vec<String>,
16
- }
17
-
18
- /// Initialize the server and return a future that will actually handle requests.
19
- pub async fn init_server(
20
- lib_context: Arc<LibContext>,
21
- settings: ServerSettings,
22
- ) -> Result<BoxFuture<'static, ()>> {
23
- let mut cors = CorsLayer::default();
24
- if !settings.cors_origins.is_empty() {
25
- let origins: Vec<_> = settings
26
- .cors_origins
27
- .iter()
28
- .map(|origin| origin.parse())
29
- .collect::<Result<_, _>>()?;
30
- cors = cors
31
- .allow_origin(AllowOrigin::list(origins))
32
- .allow_methods([
33
- axum::http::Method::GET,
34
- axum::http::Method::POST,
35
- axum::http::Method::DELETE,
36
- ])
37
- .allow_headers([axum::http::header::CONTENT_TYPE]);
38
- }
39
- let app = Router::new()
40
- .route("/api/flows", routing::get(service::flows::list_flows))
41
- .route(
42
- "/api/flows/:flowInstName",
43
- routing::get(service::flows::get_flow_spec),
44
- )
45
- .route(
46
- "/api/flows/:flowInstName/schema",
47
- routing::get(service::flows::get_flow_schema),
48
- )
49
- .route(
50
- "/api/flows/:flowInstName/keys",
51
- routing::get(service::flows::get_keys),
52
- )
53
- .route(
54
- "/api/flows/:flowInstName/data",
55
- routing::get(service::flows::evaluate_data),
56
- )
57
- .route(
58
- "/api/flows/:flowInstName/update",
59
- routing::post(service::flows::update),
60
- )
61
- .route(
62
- "/api/flows/:flowInstName/search",
63
- routing::get(service::search::search),
64
- )
65
- .layer(
66
- ServiceBuilder::new()
67
- .layer(TraceLayer::new_for_http())
68
- .layer(cors),
69
- )
70
- .with_state(lib_context.clone());
71
-
72
- // run our app with hyper, listening globally on port 3000
73
- let listener = tokio::net::TcpListener::bind(&settings.address)
74
- .await
75
- .unwrap();
76
-
77
- println!("Server running at http://{}/", settings.address);
78
- let serve_fut = async { axum::serve(listener, app).await.unwrap() };
79
- Ok(serve_fut.boxed())
80
- }
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