gitflow-analytics 3.13.7__py3-none-any.whl → 3.13.8__py3-none-any.whl

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.
@@ -1,4 +1,4 @@
1
1
  """Version information for gitflow-analytics."""
2
2
 
3
- __version__ = "3.13.7"
3
+ __version__ = "3.13.8"
4
4
  __version_info__ = tuple(int(x) for x in __version__.split("."))
gitflow_analytics/cli.py CHANGED
@@ -3908,11 +3908,12 @@ def analyze(
3908
3908
  traceback.print_exc()
3909
3909
  raise
3910
3910
 
3911
+ # Calculate date range for consistent filename formatting across all markdown reports
3912
+ # Define outside conditional blocks so it's available for all report types
3913
+ date_range = f"{start_date.strftime('%Y%m%d')}_{end_date.strftime('%Y%m%d')}"
3914
+
3911
3915
  # Generate markdown reports if enabled (requires CSV files)
3912
3916
  if "markdown" in cfg.output.formats and generate_csv:
3913
- # Calculate date range for consistent filename formatting across all markdown reports
3914
- date_range = f"{start_date.strftime('%Y%m%d')}_{end_date.strftime('%Y%m%d')}"
3915
-
3916
3917
  try:
3917
3918
  logger.debug("Starting narrative report generation")
3918
3919
  narrative_gen = NarrativeReportGenerator()
@@ -2247,6 +2247,7 @@ class EnhancedQualitativeAnalyzer:
2247
2247
  n = len(sorted_values)
2248
2248
  cumsum = np.cumsum(sorted_values)
2249
2249
 
2250
- return (2 * np.sum((i + 1) * sorted_values[i] for i in range(n))) / (n * cumsum[-1]) - (
2250
+ # Use builtin sum instead of np.sum for generator expression (numpy deprecation)
2251
+ return (2 * sum((i + 1) * sorted_values[i] for i in range(n))) / (n * cumsum[-1]) - (
2251
2252
  n + 1
2252
2253
  ) / n
@@ -956,7 +956,8 @@ class AnalyticsReportGenerator:
956
956
  sorted_values = sorted(values)
957
957
  n = len(values)
958
958
  cumsum = np.cumsum(sorted_values)
959
- return (2 * np.sum((i + 1) * sorted_values[i] for i in range(n))) / (n * cumsum[-1]) - (n + 1) / n
959
+ # Use builtin sum instead of np.sum for generator expression (numpy deprecation)
960
+ return (2 * sum((i + 1) * sorted_values[i] for i in range(n))) / (n * cumsum[-1]) - (n + 1) / n
960
961
 
961
962
  def _get_week_start(self, date: datetime) -> datetime:
962
963
  """Get Monday of the week for a given date."""
@@ -2612,8 +2612,9 @@ class ComprehensiveJSONExporter(BaseReportGenerator):
2612
2612
  sorted_values = sorted(values)
2613
2613
  n = len(values)
2614
2614
  cumsum = np.cumsum(sorted_values)
2615
-
2616
- return (2 * np.sum((i + 1) * sorted_values[i] for i in range(n))) / (n * cumsum[-1]) - (n + 1) / n
2615
+
2616
+ # Use builtin sum instead of np.sum for generator expression (numpy deprecation)
2617
+ return (2 * sum((i + 1) * sorted_values[i] for i in range(n))) / (n * cumsum[-1]) - (n + 1) / n
2617
2618
 
2618
2619
  def _anonymize_value(self, value: str, field_type: str) -> str:
2619
2620
  """Anonymize a value if anonymization is enabled."""
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: gitflow-analytics
3
- Version: 3.13.7
3
+ Version: 3.13.8
4
4
  Summary: Analyze Git repositories for developer productivity insights
5
5
  Author-email: Bob Matyas <bobmatnyc@gmail.com>
6
6
  License: MIT
@@ -1,6 +1,6 @@
1
1
  gitflow_analytics/__init__.py,sha256=W3Jaey5wuT1nBPehVLTIRkVIyBa5jgYOlBKc_UFfh-4,773
2
- gitflow_analytics/_version.py,sha256=1CEo5AN_qI88P34Bm7yHy0awrtEtBpJo-hgE4oWK7jk,138
3
- gitflow_analytics/cli.py,sha256=hpfeS2m-mDjMteqcVGq6tF6qo7Qcj8eAtOXvV2xgz3Q,310444
2
+ gitflow_analytics/_version.py,sha256=NrK5CHkptcEXHAM0rsxaSuosWfuwaiMjAT1Ujb8Vq50,138
3
+ gitflow_analytics/cli.py,sha256=Yd_fLDwme6po7brH0ZrbzGVFCKLOmRnkYDfGC6yHfz4,310519
4
4
  gitflow_analytics/config.py,sha256=XRuxvzLWyn_ML7mDCcuZ9-YFNAEsnt33vIuWxQQ_jxg,1033
5
5
  gitflow_analytics/constants.py,sha256=GXEncUJS9ijOI5KWtQCTANwdqxPfXpw-4lNjhaWTKC4,2488
6
6
  gitflow_analytics/verify_activity.py,sha256=q82VnU8FhHEPlnupYMvh1XtyaDJfIPPg-AI8cSM0PIk,27054
@@ -62,7 +62,7 @@ gitflow_analytics/pm_framework/adapters/__init__.py,sha256=vS5btB-yIwVHZfoFYacWx
62
62
  gitflow_analytics/pm_framework/adapters/jira_adapter.py,sha256=E5-NuKHFDGkqObjhWvXqoEsVVnLXrnAiF2v81hTYQ7A,72527
63
63
  gitflow_analytics/qualitative/__init__.py,sha256=fwlb_xrv7Gatjylk5wclzckZxyss8K5cdZhhTHMWfYw,1184
64
64
  gitflow_analytics/qualitative/chatgpt_analyzer.py,sha256=nQDk1Rf2z2svpsnXoz0mxbwLXytFo3EgImbegg53FvI,11816
65
- gitflow_analytics/qualitative/enhanced_analyzer.py,sha256=js27aVVxt9ZUYEcbJwYdmpt7JZTRbLHcWCkO2LrxA9E,92733
65
+ gitflow_analytics/qualitative/enhanced_analyzer.py,sha256=iPftj8fQt6m2wd9pepV_YhteuFo3oUrVA9iC-Kb2ssE,92819
66
66
  gitflow_analytics/qualitative/example_enhanced_usage.py,sha256=pKKhAjOCwmBaJPzZ8RDl8R4uG23NwFXUUeAqv6oYM2E,14924
67
67
  gitflow_analytics/qualitative/classifiers/__init__.py,sha256=lgabpW-_aub_O-1CVbmgeUVEo2jf5O-DK0Y2dF-WrZc,346
68
68
  gitflow_analytics/qualitative/classifiers/change_type.py,sha256=3glCIkNxTQAbk0s0Urp4nLp9OXtYzF0-I8SzOEpx9JE,23291
@@ -91,7 +91,7 @@ gitflow_analytics/qualitative/utils/cost_tracker.py,sha256=GPoO3ywlGqiJkjz6Uca4T
91
91
  gitflow_analytics/qualitative/utils/metrics.py,sha256=_Gfyfrenxv-ynkSxVnkGpViROCDpDb1EI6K-x461nEk,13054
92
92
  gitflow_analytics/qualitative/utils/text_processing.py,sha256=j3fF5K9DYuRauKGIAxnezyGmqedXkR9wIXailkhG0BY,9205
93
93
  gitflow_analytics/reports/__init__.py,sha256=bU43ev2EDMKsCEQEzCyZU5yO2ZL4Oymq4N_3YD3pCQg,2156
94
- gitflow_analytics/reports/analytics_writer.py,sha256=_w7rZrO6RzxqtqC7L3-NvBr074cN8_d88naTYBv7jhU,45217
94
+ gitflow_analytics/reports/analytics_writer.py,sha256=Dp_7-W5XQIY_ddDEVuTOYHpjAzuxu35i8zx09aAqGRc,45303
95
95
  gitflow_analytics/reports/base.py,sha256=IjYX7PbnpVyyB6LI6dz_oLd3vtYsu1eBB978X0zIJDE,23203
96
96
  gitflow_analytics/reports/branch_health_writer.py,sha256=Yfd4rGQLx1oBK8tA8t_jQ0b3OeTXEb4GJYrPbXHmsBU,13111
97
97
  gitflow_analytics/reports/classification_writer.py,sha256=3kyISHrLXUu8h4vtqBfn0N_k9uESfa2dSUX_MYqEQsc,46115
@@ -104,7 +104,7 @@ gitflow_analytics/reports/factory.py,sha256=1UutSVProqPS0pEqNik7tqQO55RgfHiN9bjt
104
104
  gitflow_analytics/reports/formatters.py,sha256=RFocNTbDwrNCw4IoL5etemWOPeengvDJ-97xzIyxzmU,19274
105
105
  gitflow_analytics/reports/html_generator.py,sha256=gl4vhQZb8_oxvDonBP--v_wOXXgn32OCLwwyuzuKncE,62549
106
106
  gitflow_analytics/reports/interfaces.py,sha256=XJJxmwhQ3-4iJrDQ1n5r8vFgL4gRgw_3HMpW3RPYrAU,12194
107
- gitflow_analytics/reports/json_exporter.py,sha256=p-GpOBJsdmvXpwORTy7LLpipFFUzI8eGuNasmKn57kA,114323
107
+ gitflow_analytics/reports/json_exporter.py,sha256=6kpEtTAfRDRuQLNYbPVN9KAwkJnUr_PgUfjwMKL3QSw,114401
108
108
  gitflow_analytics/reports/narrative_writer.py,sha256=9yZN_zQcjOlkpIJH7yhGXdBV8bxv-mRu5BB8waB0e1o,119756
109
109
  gitflow_analytics/reports/story_point_correlation.py,sha256=V9fnqNOxJxK00w0Mx69BMpcZgdgQJyja_Pu4qD-SWw0,51210
110
110
  gitflow_analytics/reports/weekly_trends_writer.py,sha256=m_TQ6ThSaa5rkAwfQpPRms2Jwgq3RReYwVBsts67cLk,15720
@@ -127,9 +127,9 @@ gitflow_analytics/ui/__init__.py,sha256=UBhYhZMvwlSrCuGWjkIdoP2zNbiQxOHOli-I8mqI
127
127
  gitflow_analytics/ui/progress_display.py,sha256=omCS86mCQR0QeMoM0YnsV3Gf2oALsDLu8u7XseQU6lk,59306
128
128
  gitflow_analytics/utils/__init__.py,sha256=YE3E5Mx-LmVRqLIgUUwDmbstm6gkpeavYHrQmVjwR3o,197
129
129
  gitflow_analytics/utils/commit_utils.py,sha256=TBgrWW73EODGOegGCF79ch0L0e5R6gpydNWutiQOa14,1356
130
- gitflow_analytics-3.13.7.dist-info/licenses/LICENSE,sha256=xwvSwY1GYXpRpmbnFvvnbmMwpobnrdN9T821sGvjOY0,1066
131
- gitflow_analytics-3.13.7.dist-info/METADATA,sha256=VLuDVrmYalt-fmJcTDXzQCDoeIjpoMDf4J4IIUJA7Mc,40374
132
- gitflow_analytics-3.13.7.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
133
- gitflow_analytics-3.13.7.dist-info/entry_points.txt,sha256=ZOsX0GLsnMysp5FWPOfP_qyoS7WJ8IgcaDFDxWBYl1g,98
134
- gitflow_analytics-3.13.7.dist-info/top_level.txt,sha256=CQyxZXjKvpSB1kgqqtuE0PCRqfRsXZJL8JrYpJKtkrk,18
135
- gitflow_analytics-3.13.7.dist-info/RECORD,,
130
+ gitflow_analytics-3.13.8.dist-info/licenses/LICENSE,sha256=xwvSwY1GYXpRpmbnFvvnbmMwpobnrdN9T821sGvjOY0,1066
131
+ gitflow_analytics-3.13.8.dist-info/METADATA,sha256=SB9ftI95cTtgIWpy2Jq5a-gfUMm1QwFl5dpuVsC2qe4,40374
132
+ gitflow_analytics-3.13.8.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
133
+ gitflow_analytics-3.13.8.dist-info/entry_points.txt,sha256=ZOsX0GLsnMysp5FWPOfP_qyoS7WJ8IgcaDFDxWBYl1g,98
134
+ gitflow_analytics-3.13.8.dist-info/top_level.txt,sha256=CQyxZXjKvpSB1kgqqtuE0PCRqfRsXZJL8JrYpJKtkrk,18
135
+ gitflow_analytics-3.13.8.dist-info/RECORD,,