pyobvector 0.2.20__tar.gz → 0.2.21__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. pyobvector-0.2.21/.github/workflows/ci.yml +67 -0
  2. pyobvector-0.2.21/.github/workflows/python-publish.yml +59 -0
  3. pyobvector-0.2.21/.gitignore +5 -0
  4. pyobvector-0.2.21/.pylintrc +661 -0
  5. pyobvector-0.2.21/Makefile +20 -0
  6. {pyobvector-0.2.20 → pyobvector-0.2.21}/PKG-INFO +15 -20
  7. {pyobvector-0.2.20 → pyobvector-0.2.21}/README.md +2 -2
  8. pyobvector-0.2.21/RELEASE_NOTES.md +355 -0
  9. {pyobvector-0.2.20 → pyobvector-0.2.21}/pyobvector/client/collection_schema.py +2 -2
  10. {pyobvector-0.2.20 → pyobvector-0.2.21}/pyobvector/client/exceptions.py +2 -2
  11. pyobvector-0.2.21/pyobvector/client/fts_index_param.py +73 -0
  12. {pyobvector-0.2.20 → pyobvector-0.2.21}/pyobvector/client/hybrid_search.py +3 -3
  13. {pyobvector-0.2.20 → pyobvector-0.2.21}/pyobvector/client/milvus_like_client.py +14 -14
  14. {pyobvector-0.2.20 → pyobvector-0.2.21}/pyobvector/client/ob_client.py +9 -9
  15. {pyobvector-0.2.20 → pyobvector-0.2.21}/pyobvector/client/ob_vec_client.py +15 -15
  16. {pyobvector-0.2.20 → pyobvector-0.2.21}/pyobvector/client/ob_vec_json_table_client.py +17 -12
  17. {pyobvector-0.2.20 → pyobvector-0.2.21}/pyobvector/client/partitions.py +17 -17
  18. {pyobvector-0.2.20 → pyobvector-0.2.21}/pyobvector/json_table/json_value_returning_func.py +1 -2
  19. {pyobvector-0.2.20 → pyobvector-0.2.21}/pyobvector/json_table/virtual_data_type.py +1 -1
  20. {pyobvector-0.2.20 → pyobvector-0.2.21}/pyobvector/schema/array.py +5 -4
  21. {pyobvector-0.2.20 → pyobvector-0.2.21}/pyobvector/schema/geo_srid_point.py +2 -2
  22. {pyobvector-0.2.20 → pyobvector-0.2.21}/pyobvector/schema/gis_func.py +1 -2
  23. {pyobvector-0.2.20 → pyobvector-0.2.21}/pyobvector/schema/reflection.py +2 -2
  24. {pyobvector-0.2.20 → pyobvector-0.2.21}/pyobvector/util/ob_version.py +1 -2
  25. pyobvector-0.2.21/pyproject.toml +42 -0
  26. pyobvector-0.2.21/source/conf.py +32 -0
  27. pyobvector-0.2.21/source/index.rst +17 -0
  28. pyobvector-0.2.21/source/modules.rst +7 -0
  29. pyobvector-0.2.21/source/pyobvector.client.rst +77 -0
  30. pyobvector-0.2.21/source/pyobvector.rst +20 -0
  31. pyobvector-0.2.21/source/pyobvector.schema.rst +45 -0
  32. pyobvector-0.2.21/source/pyobvector.util.rst +29 -0
  33. pyobvector-0.2.21/tests/__init__.py +11 -0
  34. pyobvector-0.2.21/tests/test_fts_index.py +454 -0
  35. pyobvector-0.2.21/tests/test_geometry.py +63 -0
  36. pyobvector-0.2.21/tests/test_hybrid_search.py +158 -0
  37. pyobvector-0.2.21/tests/test_json_table.py +745 -0
  38. pyobvector-0.2.21/tests/test_milvus_like_client.py +746 -0
  39. pyobvector-0.2.21/tests/test_milvus_like_client_sparse_vector.py +271 -0
  40. pyobvector-0.2.21/tests/test_ob_vec_client.py +371 -0
  41. pyobvector-0.2.21/tests/test_ob_vec_client_sparse_vector.py +283 -0
  42. pyobvector-0.2.21/tests/test_ob_vec_more_algorithm.py +337 -0
  43. pyobvector-0.2.21/tests/test_oceanbase_dialect.py +43 -0
  44. pyobvector-0.2.21/tests/test_partition_compile.py +342 -0
  45. pyobvector-0.2.21/tests/test_reflection.py +53 -0
  46. pyobvector-0.2.20/pyobvector/client/fts_index_param.py +0 -43
  47. pyobvector-0.2.20/pyproject.toml +0 -26
  48. {pyobvector-0.2.20 → pyobvector-0.2.21}/LICENSE +0 -0
  49. {pyobvector-0.2.20 → pyobvector-0.2.21}/pyobvector/__init__.py +0 -0
  50. {pyobvector-0.2.20 → pyobvector-0.2.21}/pyobvector/client/__init__.py +0 -0
  51. {pyobvector-0.2.20 → pyobvector-0.2.21}/pyobvector/client/enum.py +0 -0
  52. {pyobvector-0.2.20 → pyobvector-0.2.21}/pyobvector/client/index_param.py +0 -0
  53. {pyobvector-0.2.20 → pyobvector-0.2.21}/pyobvector/client/schema_type.py +0 -0
  54. {pyobvector-0.2.20 → pyobvector-0.2.21}/pyobvector/json_table/__init__.py +0 -0
  55. {pyobvector-0.2.20 → pyobvector-0.2.21}/pyobvector/json_table/oceanbase_dialect.py +0 -0
  56. {pyobvector-0.2.20 → pyobvector-0.2.21}/pyobvector/schema/__init__.py +0 -0
  57. {pyobvector-0.2.20 → pyobvector-0.2.21}/pyobvector/schema/dialect.py +0 -0
  58. {pyobvector-0.2.20 → pyobvector-0.2.21}/pyobvector/schema/full_text_index.py +0 -0
  59. {pyobvector-0.2.20 → pyobvector-0.2.21}/pyobvector/schema/match_against_func.py +0 -0
  60. {pyobvector-0.2.20 → pyobvector-0.2.21}/pyobvector/schema/ob_table.py +0 -0
  61. {pyobvector-0.2.20 → pyobvector-0.2.21}/pyobvector/schema/replace_stmt.py +0 -0
  62. {pyobvector-0.2.20 → pyobvector-0.2.21}/pyobvector/schema/sparse_vector.py +0 -0
  63. {pyobvector-0.2.20 → pyobvector-0.2.21}/pyobvector/schema/vec_dist_func.py +0 -0
  64. {pyobvector-0.2.20 → pyobvector-0.2.21}/pyobvector/schema/vector.py +0 -0
  65. {pyobvector-0.2.20 → pyobvector-0.2.21}/pyobvector/schema/vector_index.py +0 -0
  66. {pyobvector-0.2.20 → pyobvector-0.2.21}/pyobvector/util/__init__.py +0 -0
  67. {pyobvector-0.2.20 → pyobvector-0.2.21}/pyobvector/util/sparse_vector.py +0 -0
  68. {pyobvector-0.2.20 → pyobvector-0.2.21}/pyobvector/util/vector.py +0 -0
@@ -0,0 +1,67 @@
1
+ name: CI
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - main
7
+ pull_request:
8
+ branches:
9
+ - main
10
+
11
+ jobs:
12
+ test:
13
+ runs-on: ubuntu-latest
14
+ strategy:
15
+ matrix:
16
+ python-version: ["3.9", "3.10", "3.11", "3.12", "3.13", "3.14"]
17
+ image_tag: ["4.4.1.0-100000032025101610"]
18
+ init_sql: ["ALTER SYSTEM ob_vector_memory_limit_percentage = 30; SET GLOBAL ob_query_timeout=100000000;"]
19
+ test_filter: ["tests/test_hybrid_search.py::HybridSearchTest"]
20
+ include:
21
+ - python-version: 3.12
22
+ image_tag: "4.3.5.3-103000092025080818"
23
+ init_sql: "ALTER SYSTEM ob_vector_memory_limit_percentage = 30; CREATE USER 'jtuser'@'%'; GRANT SELECT, INSERT, UPDATE, DELETE ON test.* TO 'jtuser'@'%'; FLUSH PRIVILEGES;"
24
+ test_filter: "-k \"not HybridSearchTest\""
25
+
26
+ steps:
27
+ - name: Check out code
28
+ uses: actions/checkout@v6
29
+
30
+ - name: Install uv
31
+ uses: astral-sh/setup-uv@v6
32
+ with:
33
+ python-version: ${{ matrix.python-version }}
34
+
35
+ - name: Install dependencies
36
+ run: uv sync --dev
37
+
38
+ - name: Lint
39
+ run: uv run ruff check
40
+
41
+ - name: Package build test
42
+ run: uv build
43
+
44
+ - name: Free disk space
45
+ uses: kfir4444/free-disk-space@main
46
+ with:
47
+ tool-cache: false
48
+ android: true
49
+ dotnet: true
50
+ haskell: true
51
+ large-packages: true
52
+ swap-storage: true
53
+
54
+ - name: Start OceanBase container
55
+ uses: oceanbase/setup-oceanbase-ce@v1
56
+ with:
57
+ image_name: 'oceanbase/oceanbase-ce'
58
+ image_tag: ${{ matrix.image_tag }}
59
+ container_name: 'observer'
60
+ mode: 'mini'
61
+ datafile_size: '20G'
62
+ log_disk_size: '10G'
63
+ init_sql: ${{ matrix.init_sql }}
64
+
65
+ - name: Run tests
66
+ run: |
67
+ uv run pytest --log-cli-level=INFO ${{ matrix.test_filter }}
@@ -0,0 +1,59 @@
1
+ # This workflow will upload a Python Package using Twine when a release is created
2
+ # For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python#publishing-to-package-registries
3
+
4
+ # This workflow uses actions that are not certified by GitHub.
5
+ # They are provided by a third-party and are governed by
6
+ # separate terms of service, privacy policy, and support
7
+ # documentation.
8
+
9
+ name: Upload Python Package
10
+
11
+ on:
12
+ release:
13
+ types: [published]
14
+
15
+ permissions:
16
+ contents: read
17
+
18
+ jobs:
19
+ release-build:
20
+
21
+ runs-on: ubuntu-latest
22
+
23
+ steps:
24
+ - uses: actions/checkout@v6
25
+
26
+ - name: Set up Python
27
+ uses: actions/setup-python@v6
28
+ with:
29
+ python-version: '3.x'
30
+
31
+ - name: Install uv
32
+ uses: astral-sh/setup-uv@v6
33
+
34
+ - name: Build package
35
+ run: |
36
+ uv build
37
+
38
+ - name: upload windows dists
39
+ uses: actions/upload-artifact@v4
40
+ with:
41
+ name: release-dists
42
+ path: dist/
43
+
44
+ pypi-publish:
45
+ runs-on: ubuntu-latest
46
+ needs:
47
+ - release-build
48
+ permissions:
49
+ id-token: write
50
+
51
+ steps:
52
+ - name: Retrieve release distributions
53
+ uses: actions/download-artifact@v4
54
+ with:
55
+ name: release-dists
56
+ path: dist/
57
+
58
+ - name: Publish release distributions to PyPI
59
+ uses: pypa/gh-action-pypi-publish@release/v1
@@ -0,0 +1,5 @@
1
+ poetry.lock
2
+ uv.lock
3
+ tests/.env
4
+ __pycache__/
5
+ build/