matchbox-db 0.7.14.dev43__tar.gz → 0.7.14.dev46__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 (243) hide show
  1. {matchbox_db-0.7.14.dev43/src/matchbox_db.egg-info → matchbox_db-0.7.14.dev46}/PKG-INFO +2 -1
  2. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/pyproject.toml +1 -0
  3. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/client/_handler.py +4 -4
  4. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/client/dags.py +2 -2
  5. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/client/models/models.py +5 -3
  6. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/client/sources.py +6 -4
  7. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/common/logging.py +46 -2
  8. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46/src/matchbox_db.egg-info}/PKG-INFO +2 -1
  9. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox_db.egg-info/requires.txt +1 -0
  10. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/uv.lock +2 -0
  11. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/.github/pull_request_template.md +0 -0
  12. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/.github/workflows/ci.yml +0 -0
  13. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/.github/workflows/codeql.yml +0 -0
  14. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/.github/workflows/prerelease.yml +0 -0
  15. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/.github/workflows/release.yml +0 -0
  16. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/.gitignore +0 -0
  17. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/.pre-commit-config.yaml +0 -0
  18. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/.vscode/launch.json +0 -0
  19. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/.vscode/settings.json +0 -0
  20. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/CODEOWNERS +0 -0
  21. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/LICENSE +0 -0
  22. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/README.md +0 -0
  23. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docker-compose.yml +0 -0
  24. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/api/client/dags.md +0 -0
  25. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/api/client/eval.md +0 -0
  26. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/api/client/index.md +0 -0
  27. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/api/client/locations.md +0 -0
  28. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/api/client/models.md +0 -0
  29. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/api/client/queries.md +0 -0
  30. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/api/client/results.md +0 -0
  31. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/api/client/sources.md +0 -0
  32. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/api/common/arrow.md +0 -0
  33. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/api/common/db.md +0 -0
  34. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/api/common/dtos.md +0 -0
  35. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/api/common/eval.md +0 -0
  36. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/api/common/exceptions.md +0 -0
  37. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/api/common/factories/entities.md +0 -0
  38. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/api/common/factories/index.md +0 -0
  39. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/api/common/factories/models.md +0 -0
  40. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/api/common/factories/scenarios.md +0 -0
  41. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/api/common/factories/sources.md +0 -0
  42. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/api/common/hash.md +0 -0
  43. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/api/common/index.md +0 -0
  44. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/api/common/logging.md +0 -0
  45. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/api/common/transform.md +0 -0
  46. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/api/server/api.md +0 -0
  47. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/api/server/backends/postgresql.md +0 -0
  48. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/api/server/index.md +0 -0
  49. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/api/server/uploads.md +0 -0
  50. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/assets/matchbox-icon-dark.png +0 -0
  51. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/assets/matchbox-icon.svg +0 -0
  52. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/assets/matchbox-logo-dark.svg +0 -0
  53. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/assets/matchbox-logo-light.svg +0 -0
  54. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/client/cli.md +0 -0
  55. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/client/evaluation.md +0 -0
  56. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/client/explore-dags.md +0 -0
  57. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/client/install.md +0 -0
  58. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/client/link-data.md +0 -0
  59. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/client/look-up.md +0 -0
  60. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/contributing.md +0 -0
  61. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/index.md +0 -0
  62. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/server/concepts.md +0 -0
  63. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/server/install.md +0 -0
  64. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/server/risks.md +0 -0
  65. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/stylesheets/extra.css +0 -0
  66. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/docs/use-cases.md +0 -0
  67. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/environments/containers.env +0 -0
  68. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/environments/development.env +0 -0
  69. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/environments/sample_client.env +0 -0
  70. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/environments/sample_server.env +0 -0
  71. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/justfile +0 -0
  72. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/mkdocs.yml +0 -0
  73. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/setup.cfg +0 -0
  74. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/__init__.py +0 -0
  75. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/client/__init__.py +0 -0
  76. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/client/_settings.py +0 -0
  77. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/client/cli/__init__.py +0 -0
  78. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/client/cli/auth.py +0 -0
  79. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/client/cli/eval/__init__.py +0 -0
  80. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/client/cli/eval/app.py +0 -0
  81. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/client/cli/eval/modals.py +0 -0
  82. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/client/cli/eval/run.py +0 -0
  83. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/client/cli/eval/styles.tcss +0 -0
  84. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/client/cli/eval/widgets/__init__.py +0 -0
  85. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/client/cli/eval/widgets/assignment.py +0 -0
  86. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/client/cli/eval/widgets/styling.py +0 -0
  87. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/client/cli/eval/widgets/table.py +0 -0
  88. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/client/cli/main.py +0 -0
  89. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/client/cli/server.py +0 -0
  90. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/client/eval/__init__.py +0 -0
  91. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/client/eval/samples.py +0 -0
  92. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/client/locations.py +0 -0
  93. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/client/models/__init__.py +0 -0
  94. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/client/models/comparison.py +0 -0
  95. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/client/models/dedupers/__init__.py +0 -0
  96. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/client/models/dedupers/base.py +0 -0
  97. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/client/models/dedupers/naive.py +0 -0
  98. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/client/models/linkers/__init__.py +0 -0
  99. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/client/models/linkers/base.py +0 -0
  100. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/client/models/linkers/deterministic.py +0 -0
  101. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/client/models/linkers/splinklinker.py +0 -0
  102. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/client/models/linkers/weighteddeterministic.py +0 -0
  103. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/client/queries.py +0 -0
  104. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/client/results.py +0 -0
  105. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/common/__init__.py +0 -0
  106. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/common/arrow.py +0 -0
  107. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/common/db.py +0 -0
  108. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/common/dtos.py +0 -0
  109. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/common/eval.py +0 -0
  110. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/common/exceptions.py +0 -0
  111. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/common/factories/__init__.py +0 -0
  112. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/common/factories/dags.py +0 -0
  113. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/common/factories/entities.py +0 -0
  114. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/common/factories/models.py +0 -0
  115. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/common/factories/scenarios.py +0 -0
  116. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/common/factories/sources.py +0 -0
  117. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/common/hash.py +0 -0
  118. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/common/transform.py +0 -0
  119. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/Dockerfile +0 -0
  120. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/__init__.py +0 -0
  121. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/api/__init__.py +0 -0
  122. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/api/dependencies.py +0 -0
  123. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/api/main.py +0 -0
  124. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/api/routers/__init__.py +0 -0
  125. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/api/routers/auth.py +0 -0
  126. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/api/routers/collection.py +0 -0
  127. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/api/routers/eval.py +0 -0
  128. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/api/static/favicon.png +0 -0
  129. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/api/static/swagger-ui-bundle.js +0 -0
  130. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/api/static/swagger-ui.css +0 -0
  131. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/base.py +0 -0
  132. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/.gitkeep +0 -0
  133. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/__init__.py +0 -0
  134. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/adapter/__init__.py +0 -0
  135. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/adapter/admin.py +0 -0
  136. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/adapter/collections.py +0 -0
  137. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/adapter/eval.py +0 -0
  138. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/adapter/main.py +0 -0
  139. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/adapter/query.py +0 -0
  140. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/alembic/env.py +0 -0
  141. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/alembic/script.py.mako +0 -0
  142. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/alembic/versions/05cc4181a0ad_removed_source_key_reference_and_added_.py +0 -0
  143. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/alembic/versions/13095b44ff09_add_user_model_groups_and_permissions_.py +0 -0
  144. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/alembic/versions/1907c34cfa1f_create_tables_given_schema.py +0 -0
  145. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/alembic/versions/3754ae042254_move_orm_to_root_leaf_contains_structure.py +0 -0
  146. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/alembic/versions/40a8e5ed48f2_create_schema_without_tables.py +0 -0
  147. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/alembic/versions/4a7c35f86405_move_sourceconfigs_from_sourceaddress_.py +0 -0
  148. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/alembic/versions/7a2d1b10ac0f_switch_from_location_uri_to_name.py +0 -0
  149. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/alembic/versions/83b134a86713_simplify_resolution_naming_and_hashing.py +0 -0
  150. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/alembic/versions/8c7f757b1046_remove_human_resolution_type.py +0 -0
  151. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/alembic/versions/95c0b5c23446_renaming_sources_to_source_config.py +0 -0
  152. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/alembic/versions/ae63f79f6b39_renamed_sourcecolumns_to_sourcefields.py +0 -0
  153. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/alembic/versions/b38d61ab11cc_add_index_to_the_clustersourcekey_table.py +0 -0
  154. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/alembic/versions/b694eb292dea_add_an_index_to_the_probabilities_.py +0 -0
  155. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/alembic/versions/beba75a24962_add_pkspace_table.py +0 -0
  156. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/alembic/versions/c4cb937d00f4_add_modelconfigs.py +0 -0
  157. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/alembic/versions/c774fd4b69f8_add_upload_stage_to_resolutions.py +0 -0
  158. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/alembic/versions/dd0c3a9ecdf9_add_migrations_for_first_eval_tables.py +0 -0
  159. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/alembic/versions/e4122bdf9b0d_renamed_primary_keys_to_just_keys.py +0 -0
  160. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/alembic/versions/f3c9279437f4_add_content_hash_to_resolutions.py +0 -0
  161. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/alembic/versions/f500f7d832fe_adds_collections_and_versions_to_scope_.py +0 -0
  162. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/alembic.ini +0 -0
  163. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/db.py +0 -0
  164. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/justfile +0 -0
  165. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/mixin.py +0 -0
  166. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/orm.py +0 -0
  167. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/utils/__init__.py +0 -0
  168. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/utils/db.py +0 -0
  169. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/utils/evaluation.py +0 -0
  170. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/utils/insert.py +0 -0
  171. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/utils/query.py +0 -0
  172. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/postgresql/utils/results.py +0 -0
  173. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox/server/uploads.py +0 -0
  174. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox_db.egg-info/SOURCES.txt +0 -0
  175. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox_db.egg-info/dependency_links.txt +0 -0
  176. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox_db.egg-info/entry_points.txt +0 -0
  177. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/src/matchbox_db.egg-info/top_level.txt +0 -0
  178. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/__init__.py +0 -0
  179. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/client/__init__.py +0 -0
  180. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/client/cli/__init__.py +0 -0
  181. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/client/cli/eval/__init__.py +0 -0
  182. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/client/cli/eval/test_app.py +0 -0
  183. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/client/cli/eval/test_widgets.py +0 -0
  184. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/client/cli/test_main.py +0 -0
  185. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/client/models/__init__.py +0 -0
  186. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/client/models/methodologies/__init__.py +0 -0
  187. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/client/models/methodologies/test_dedupers_deterministic.py +0 -0
  188. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/client/models/methodologies/test_linkers_deterministic.py +0 -0
  189. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/client/models/methodologies/test_linkers_probabilistic.py +0 -0
  190. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/client/models/test_comparison.py +0 -0
  191. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/client/test_dags.py +0 -0
  192. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/client/test_eval.py +0 -0
  193. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/client/test_handler.py +0 -0
  194. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/client/test_locations.py +0 -0
  195. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/client/test_models.py +0 -0
  196. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/client/test_queries.py +0 -0
  197. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/client/test_results.py +0 -0
  198. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/client/test_sources.py +0 -0
  199. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/common/__init__.py +0 -0
  200. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/common/factories/__init__.py +0 -0
  201. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/common/factories/test_entity_factory.py +0 -0
  202. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/common/factories/test_linked_factory.py +0 -0
  203. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/common/factories/test_model_factory.py +0 -0
  204. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/common/factories/test_probability_generation.py +0 -0
  205. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/common/factories/test_scenarios.py +0 -0
  206. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/common/factories/test_source_factory.py +0 -0
  207. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/common/factories/test_testkit_dag.py +0 -0
  208. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/common/test_dto.py +0 -0
  209. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/common/test_eval.py +0 -0
  210. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/common/test_hash.py +0 -0
  211. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/common/test_results.py +0 -0
  212. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/common/test_transform.py +0 -0
  213. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/conftest.py +0 -0
  214. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/data/all_companies.csv +0 -0
  215. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/e2e/test_e2e_dag.py +0 -0
  216. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/e2e/test_e2e_evaluation.py +0 -0
  217. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/e2e/test_e2e_methodologies.py +0 -0
  218. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/fixtures/__init__.py +0 -0
  219. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/fixtures/client.py +0 -0
  220. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/fixtures/db.py +0 -0
  221. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/justfile +0 -0
  222. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/scripts/authorisation.py +0 -0
  223. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/scripts/eval.py +0 -0
  224. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/server/__init__.py +0 -0
  225. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/server/adapter/test_adapter_admin.py +0 -0
  226. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/server/adapter/test_adapter_collections.py +0 -0
  227. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/server/adapter/test_adapter_eval.py +0 -0
  228. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/server/adapter/test_adapter_main.py +0 -0
  229. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/server/adapter/test_adapter_query.py +0 -0
  230. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/server/api/__init__.py +0 -0
  231. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/server/api/routes/__init__.py +0 -0
  232. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/server/api/routes/test_routes_auth.py +0 -0
  233. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/server/api/routes/test_routes_collection.py +0 -0
  234. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/server/api/routes/test_routes_eval.py +0 -0
  235. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/server/api/routes/test_routes_main.py +0 -0
  236. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/server/api/routes/test_routes_resolution.py +0 -0
  237. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/server/postgresql/__init__.py +0 -0
  238. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/server/postgresql/test_pg_core.py +0 -0
  239. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/server/postgresql/test_pg_migrations.py +0 -0
  240. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/server/postgresql/test_pg_sql.py +0 -0
  241. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/server/test_uploads.py +0 -0
  242. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/test/utils.py +0 -0
  243. {matchbox_db-0.7.14.dev43 → matchbox_db-0.7.14.dev46}/trufflehog-exclude.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: matchbox-db
3
- Version: 0.7.14.dev43
3
+ Version: 0.7.14.dev46
4
4
  Summary: A framework for orchestrating and comparing data linking and deduplication methodologies.
5
5
  Author: Department for Business and Trade
6
6
  Project-URL: Documentation, https://uktrade.github.io/matchbox/
@@ -29,6 +29,7 @@ Requires-Dist: sqlglot[rs]>=26.12.1
29
29
  Requires-Dist: tenacity>=9.1.2
30
30
  Requires-Dist: textual>=0.87.1
31
31
  Requires-Dist: typer>=0.15.0
32
+ Requires-Dist: psutil>=7.1.3
32
33
  Provides-Extra: server
33
34
  Requires-Dist: adbc-driver-postgresql>=1.5.0; extra == "server"
34
35
  Requires-Dist: alembic>=1.15.2; extra == "server"
@@ -28,6 +28,7 @@ dependencies = [
28
28
  "tenacity>=9.1.2",
29
29
  "textual>=0.87.1",
30
30
  "typer>=0.15.0",
31
+ "psutil>=7.1.3"
31
32
  ]
32
33
 
33
34
  [project.optional-dependencies]
@@ -65,7 +65,7 @@ from matchbox.common.exceptions import (
65
65
  MatchboxUserNotFoundError,
66
66
  )
67
67
  from matchbox.common.hash import hash_to_base64
68
- from matchbox.common.logging import logger, profile
68
+ from matchbox.common.logging import logger, profile_time
69
69
 
70
70
  URLEncodeHandledType = str | int | float | bytes | StrEnum
71
71
 
@@ -422,7 +422,7 @@ def update_resolution(
422
422
  return ResourceOperationStatus.model_validate(res.json())
423
423
 
424
424
 
425
- @profile(kwarg="path")
425
+ @profile_time(kwarg="path")
426
426
  @http_retry
427
427
  def get_resolution(path: ResolutionPath) -> Resolution | None:
428
428
  """Get a resolution from Matchbox."""
@@ -435,7 +435,7 @@ def get_resolution(path: ResolutionPath) -> Resolution | None:
435
435
  return Resolution.model_validate(res.json())
436
436
 
437
437
 
438
- @profile(kwarg="path")
438
+ @profile_time(kwarg="path")
439
439
  @http_retry
440
440
  def set_data(path: ResolutionPath, data: pl.DataFrame | Table) -> None:
441
441
  """Upload source hashes or model results to server."""
@@ -482,7 +482,7 @@ def get_resolution_stage(path: ResolutionPath) -> UploadStage:
482
482
  return upload_info.stage
483
483
 
484
484
 
485
- @profile(kwarg="path")
485
+ @profile_time(kwarg="path")
486
486
  @http_retry
487
487
  def get_results(path: ModelResolutionPath) -> Table:
488
488
  """Get model results from Matchbox."""
@@ -28,7 +28,7 @@ from matchbox.common.exceptions import (
28
28
  MatchboxCollectionNotFoundError,
29
29
  MatchboxResolutionNotFoundError,
30
30
  )
31
- from matchbox.common.logging import logger, profile
31
+ from matchbox.common.logging import logger, profile_time
32
32
  from matchbox.common.transform import truth_int_to_float
33
33
 
34
34
 
@@ -561,7 +561,7 @@ class DAG:
561
561
  # If no matches, _handler will raise
562
562
  return {from_source: list(matches[0].source_id), **to_sources_results}
563
563
 
564
- @profile(kwarg="node")
564
+ @profile_time(kwarg="node")
565
565
  def resolve(
566
566
  self,
567
567
  node: ResolutionName | None = None,
@@ -24,7 +24,7 @@ from matchbox.common.dtos import (
24
24
  )
25
25
  from matchbox.common.exceptions import MatchboxResolutionNotFoundError
26
26
  from matchbox.common.hash import hash_model_results
27
- from matchbox.common.logging import logger, profile
27
+ from matchbox.common.logging import logger, profile_mem, profile_time
28
28
  from matchbox.common.transform import truth_float_to_int, truth_int_to_float
29
29
 
30
30
  if TYPE_CHECKING:
@@ -234,7 +234,8 @@ class Model:
234
234
  result = _handler.delete_resolution(path=self.resolution_path, certain=certain)
235
235
  return result.success
236
236
 
237
- @profile(attr="name")
237
+ @profile_mem()
238
+ @profile_time(attr="name")
238
239
  def run(
239
240
  self, for_validation: bool = False, cache_queries: bool = False
240
241
  ) -> ModelResults:
@@ -284,7 +285,8 @@ class Model:
284
285
  return self.results
285
286
 
286
287
  @post_run
287
- @profile(attr="name")
288
+ @profile_mem()
289
+ @profile_time(attr="name")
288
290
  def sync(self) -> None:
289
291
  """Send the model config and results to the server.
290
292
 
@@ -24,7 +24,7 @@ from matchbox.common.dtos import (
24
24
  )
25
25
  from matchbox.common.exceptions import MatchboxResolutionNotFoundError
26
26
  from matchbox.common.hash import HashMethod, hash_arrow_table, hash_rows
27
- from matchbox.common.logging import logger, profile
27
+ from matchbox.common.logging import logger, profile_mem, profile_time
28
28
 
29
29
  if TYPE_CHECKING:
30
30
  from matchbox.client.dags import DAG
@@ -223,7 +223,7 @@ class Source:
223
223
  return False
224
224
  return self.config == other.config
225
225
 
226
- @profile(attr="name")
226
+ @profile_time(attr="name")
227
227
  def fetch(
228
228
  self,
229
229
  qualify_names: bool = False,
@@ -270,7 +270,8 @@ class Source:
270
270
  return_type=return_type,
271
271
  )
272
272
 
273
- @profile(attr="name")
273
+ @profile_mem()
274
+ @profile_time(attr="name")
274
275
  def run(self, batch_size: int | None = None) -> ArrowTable:
275
276
  """Hash a dataset from its warehouse, ready to be inserted, and cache hashes.
276
277
 
@@ -375,7 +376,8 @@ class Source:
375
376
  return self.config.f(self.name, fields)
376
377
 
377
378
  @post_run
378
- @profile(attr="name")
379
+ @profile_mem()
380
+ @profile_time(attr="name")
379
381
  def sync(self) -> None:
380
382
  """Send the source config and hashes to the server.
381
383
 
@@ -4,9 +4,11 @@ import functools
4
4
  import importlib.metadata
5
5
  import logging
6
6
  import time
7
+ import tracemalloc
7
8
  from collections.abc import Callable
8
9
  from typing import Any, Final, Literal, ParamSpec, TypeVar
9
10
 
11
+ import psutil
10
12
  from rich.console import Console
11
13
  from rich.progress import (
12
14
  BarColumn,
@@ -115,14 +117,14 @@ T = TypeVar("T")
115
117
  P = ParamSpec("P")
116
118
 
117
119
 
118
- def profile(
120
+ def profile_time(
119
121
  logger: PrefixedLoggerAdapter = logger,
120
122
  level: int = logging.INFO,
121
123
  prefix: str | None = "Profiling",
122
124
  attr: str | None = None,
123
125
  kwarg: str | None = None,
124
126
  ) -> Callable[[Callable[P, T]], Callable[P, T]]:
125
- """Decorator to profile functions and methods using logger.
127
+ """Decorator to profile running time of functions and methods using logger.
126
128
 
127
129
  Args:
128
130
  logger: The logger to use.
@@ -170,3 +172,45 @@ def profile(
170
172
  return wrapper
171
173
 
172
174
  return decorator
175
+
176
+
177
+ def profile_mem(
178
+ logger: PrefixedLoggerAdapter = logger,
179
+ level: int = logging.DEBUG,
180
+ prefix: str | None = "Memory",
181
+ ) -> Callable[[Callable[P, T]], Callable[P, T]]:
182
+ """Decorator to profile memory use of functions and methods using logger.
183
+
184
+ Args:
185
+ logger: The logger to use.
186
+ level: The level to use to log the profiling information. It defaults to INFO.
187
+ prefix: Prefix to pass to the logged message.
188
+ """
189
+
190
+ def decorator(func: Callable[P, T]) -> Callable[P, T]:
191
+ @functools.wraps(func)
192
+ def wrapper(*args: P.args, **kwargs: P.kwargs) -> T:
193
+ tracemalloc.start()
194
+
195
+ try:
196
+ return func(*args, **kwargs)
197
+ finally:
198
+ # Final and peak mem use of decorated function
199
+ curr, peak = tracemalloc.get_traced_memory()
200
+ tracemalloc.stop()
201
+ # OS memory availability after function run
202
+ mem = psutil.virtual_memory()
203
+
204
+ msg = (
205
+ f"Memory usage of {func.__name__}: "
206
+ f"current {round(curr / 10**6, 2)} MB, "
207
+ f"peak {round(peak / 10**6, 2)} MB. "
208
+ f"Total memory: {round(mem[0] / 10**6, 2)} MB, "
209
+ f"available memory: {round(mem[1] / 10**6, 2)} MB."
210
+ )
211
+
212
+ logger.log(level, msg, prefix=prefix)
213
+
214
+ return wrapper
215
+
216
+ return decorator
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: matchbox-db
3
- Version: 0.7.14.dev43
3
+ Version: 0.7.14.dev46
4
4
  Summary: A framework for orchestrating and comparing data linking and deduplication methodologies.
5
5
  Author: Department for Business and Trade
6
6
  Project-URL: Documentation, https://uktrade.github.io/matchbox/
@@ -29,6 +29,7 @@ Requires-Dist: sqlglot[rs]>=26.12.1
29
29
  Requires-Dist: tenacity>=9.1.2
30
30
  Requires-Dist: textual>=0.87.1
31
31
  Requires-Dist: typer>=0.15.0
32
+ Requires-Dist: psutil>=7.1.3
32
33
  Provides-Extra: server
33
34
  Requires-Dist: adbc-driver-postgresql>=1.5.0; extra == "server"
34
35
  Requires-Dist: alembic>=1.15.2; extra == "server"
@@ -19,6 +19,7 @@ sqlglot[rs]>=26.12.1
19
19
  tenacity>=9.1.2
20
20
  textual>=0.87.1
21
21
  typer>=0.15.0
22
+ psutil>=7.1.3
22
23
 
23
24
  [server]
24
25
  adbc-driver-postgresql>=1.5.0
@@ -1283,6 +1283,7 @@ dependencies = [
1283
1283
  { name = "pandas" },
1284
1284
  { name = "polars" },
1285
1285
  { name = "polars-hash" },
1286
+ { name = "psutil" },
1286
1287
  { name = "psycopg", extra = ["binary", "pool"] },
1287
1288
  { name = "pyarrow" },
1288
1289
  { name = "pydantic" },
@@ -1351,6 +1352,7 @@ requires-dist = [
1351
1352
  { name = "pandas", specifier = ">=2.2.3" },
1352
1353
  { name = "polars", specifier = ">=1.32.3" },
1353
1354
  { name = "polars-hash", specifier = ">=0.5.3" },
1355
+ { name = "psutil", specifier = ">=7.1.3" },
1354
1356
  { name = "psycopg", extras = ["binary", "pool"], specifier = ">=3.2.6" },
1355
1357
  { name = "pyarrow", specifier = ">=17.0.0" },
1356
1358
  { name = "pydantic", specifier = ">=2.9.2" },