pycode-kg 0.17.1__tar.gz → 0.17.2__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 (62) hide show
  1. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/PKG-INFO +2 -2
  2. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/README.md +1 -1
  3. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/pyproject.toml +1 -1
  4. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/__init__.py +1 -1
  5. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/viz3d_timeline.py +4 -4
  6. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/LICENSE +0 -0
  7. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/.DS_Store +0 -0
  8. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/__main__.py +0 -0
  9. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/analysis/__init__.py +0 -0
  10. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/analysis/bridge.py +0 -0
  11. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/analysis/centrality.py +0 -0
  12. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/analysis/framework_detector.py +0 -0
  13. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/analysis/hybrid_rank.py +0 -0
  14. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/app.py +0 -0
  15. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/architecture.py +0 -0
  16. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/build_pycodekg_lancedb.py +0 -0
  17. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/build_pycodekg_sqlite.py +0 -0
  18. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/cli/__init__.py +0 -0
  19. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/cli/cmd_analyze.py +0 -0
  20. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/cli/cmd_architecture.py +0 -0
  21. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/cli/cmd_bridges.py +0 -0
  22. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/cli/cmd_build.py +0 -0
  23. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/cli/cmd_build_full.py +0 -0
  24. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/cli/cmd_centrality.py +0 -0
  25. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/cli/cmd_explain.py +0 -0
  26. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/cli/cmd_framework_nodes.py +0 -0
  27. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/cli/cmd_hooks.py +0 -0
  28. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/cli/cmd_init.py +0 -0
  29. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/cli/cmd_mcp.py +0 -0
  30. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/cli/cmd_model.py +0 -0
  31. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/cli/cmd_query.py +0 -0
  32. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/cli/cmd_snapshot.py +0 -0
  33. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/cli/cmd_viz.py +0 -0
  34. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/cli/main.py +0 -0
  35. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/cli/options.py +0 -0
  36. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/config.py +0 -0
  37. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/graph.py +0 -0
  38. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/index.py +0 -0
  39. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/kg.py +0 -0
  40. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/layout3d.py +0 -0
  41. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/mcp/bridge_tools.py +0 -0
  42. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/mcp/framework_tools.py +0 -0
  43. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/mcp_server.py +0 -0
  44. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/module/__init__.py +0 -0
  45. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/module/base.py +0 -0
  46. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/module/extractor.py +0 -0
  47. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/module/types.py +0 -0
  48. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/pycodekg.py +0 -0
  49. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/pycodekg_query.py +0 -0
  50. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/pycodekg_snippet_packer.py +0 -0
  51. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/pycodekg_thorough_analysis.py +0 -0
  52. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/pycodekg_viz.py +0 -0
  53. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/pycodekg_viz3d.py +0 -0
  54. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/ranking/__init__.py +0 -0
  55. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/ranking/cli_rank.py +0 -0
  56. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/ranking/coderank.py +0 -0
  57. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/snapshots.py +0 -0
  58. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/sql/004_add_centrality_table.sql +0 -0
  59. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/store.py +0 -0
  60. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/utils.py +0 -0
  61. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/visitor.py +0 -0
  62. {pycode_kg-0.17.1 → pycode_kg-0.17.2}/src/pycode_kg/viz3d.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pycode-kg
3
- Version: 0.17.1
3
+ Version: 0.17.2
4
4
  Summary: A tool to build a searchable knowledge graph from Python repositories
5
5
  License-Expression: Elastic-2.0
6
6
  License-File: LICENSE
@@ -74,7 +74,7 @@ Description-Content-Type: text/markdown
74
74
 
75
75
  [![Python](https://img.shields.io/badge/python-3.12%20%7C%203.13-blue.svg)](https://www.python.org/)
76
76
  [![License: Elastic-2.0](https://img.shields.io/badge/License-Elastic%202.0-blue.svg)](https://www.elastic.co/licensing/elastic-license)
77
- [![Version](https://img.shields.io/badge/version-0.16.0-blue.svg)](https://github.com/Flux-Frontiers/pycode_kg/releases)
77
+ [![Version](https://img.shields.io/badge/version-0.17.2-blue.svg)](https://github.com/Flux-Frontiers/pycode_kg/releases)
78
78
  [![CI](https://github.com/Flux-Frontiers/pycode_kg/actions/workflows/ci.yml/badge.svg)](https://github.com/Flux-Frontiers/pycode_kg/actions/workflows/ci.yml)
79
79
  [![Poetry](https://img.shields.io/endpoint?url=https://python-poetry.org/badge/v0.json)](https://python-poetry.org/)
80
80
  [![DOI](https://zenodo.org/badge/1202379010.svg)](https://zenodo.org/badge/latestdoi/1202379010)
@@ -1,7 +1,7 @@
1
1
 
2
2
  [![Python](https://img.shields.io/badge/python-3.12%20%7C%203.13-blue.svg)](https://www.python.org/)
3
3
  [![License: Elastic-2.0](https://img.shields.io/badge/License-Elastic%202.0-blue.svg)](https://www.elastic.co/licensing/elastic-license)
4
- [![Version](https://img.shields.io/badge/version-0.16.0-blue.svg)](https://github.com/Flux-Frontiers/pycode_kg/releases)
4
+ [![Version](https://img.shields.io/badge/version-0.17.2-blue.svg)](https://github.com/Flux-Frontiers/pycode_kg/releases)
5
5
  [![CI](https://github.com/Flux-Frontiers/pycode_kg/actions/workflows/ci.yml/badge.svg)](https://github.com/Flux-Frontiers/pycode_kg/actions/workflows/ci.yml)
6
6
  [![Poetry](https://img.shields.io/endpoint?url=https://python-poetry.org/badge/v0.json)](https://python-poetry.org/)
7
7
  [![DOI](https://zenodo.org/badge/1202379010.svg)](https://zenodo.org/badge/latestdoi/1202379010)
@@ -66,7 +66,7 @@ ruff = ">=0.4.0"
66
66
  # ---------------------------------------------------------------------------
67
67
  [project]
68
68
  name = "pycode-kg"
69
- version = "0.17.1"
69
+ version = "0.17.2"
70
70
  description = "A tool to build a searchable knowledge graph from Python repositories"
71
71
  readme = "README.md"
72
72
  license = "Elastic-2.0"
@@ -32,7 +32,7 @@ KGModule SDK (build new domain KGs)::
32
32
  from pycode_kg import KGModule, KGExtractor, PyCodeKGExtractor, NodeSpec, EdgeSpec
33
33
  """
34
34
 
35
- __version__ = "0.17.1"
35
+ __version__ = "0.17.2"
36
36
  __author__ = "Eric G. Suchanek, PhD"
37
37
 
38
38
  # Low-level primitives (locked v0 contract)
@@ -49,12 +49,12 @@ def load_snapshots_timeline(snapshots_dir: Path) -> dict[str, Any]:
49
49
  }
50
50
 
51
51
  for snap in snapshots:
52
- timeline["commits"].append(snap["commit"][:7]) # Short hash
52
+ timeline["commits"].append(snap["key"][:7]) # Short hash
53
53
  timeline["versions"].append(snap["version"])
54
54
  timeline["timestamps"].append(snap["timestamp"])
55
- timeline["nodes"].append(snap["metrics"]["nodes"])
56
- timeline["edges"].append(snap["metrics"]["edges"])
57
- timeline["coverage"].append(snap["metrics"]["coverage"] * 100) # Percentage
55
+ timeline["nodes"].append(snap["metrics"]["total_nodes"])
56
+ timeline["edges"].append(snap["metrics"]["total_edges"])
57
+ timeline["coverage"].append(snap["metrics"]["docstring_coverage"] * 100) # Percentage
58
58
  timeline["critical_issues"].append(snap["metrics"]["critical_issues"])
59
59
  timeline["complexity_median"].append(snap.get("metrics", {}).get("complexity_median", 0))
60
60
 
File without changes