moderne-visualizations-misc 0.69.0__tar.gz → 0.71.0__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 (211) hide show
  1. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/PKG-INFO +3 -11
  2. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/README.md +4 -1
  3. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/call_graph_uml.ipynb +1 -1
  4. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/cobol_relationships_data_grid.ipynb +0 -1
  5. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/comment_language_distribution.ipynb +1 -1
  6. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/dependency_vulnerabilities.ipynb +0 -1
  7. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/dependency_vulnerabilities_npm.ipynb +0 -1
  8. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/dependency_vulnerabilities_nuget.ipynb +0 -1
  9. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/embeddings_clustering.ipynb +0 -1
  10. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/eslint_problems.ipynb +1 -2
  11. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/find_source_files.ipynb +1 -1
  12. moderne_visualizations_misc-0.71.0/moderne_visualizations_misc/images/ui5lint_rule_treemap.300.png +0 -0
  13. moderne_visualizations_misc-0.71.0/moderne_visualizations_misc/images/ui5lint_violations_heatmap.300.png +0 -0
  14. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/parse_failure_stacktraces.ipynb +0 -2
  15. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/recipe_performance.ipynb +33 -6
  16. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/recommendations.ipynb +1 -1
  17. moderne_visualizations_misc-0.71.0/moderne_visualizations_misc/specs/ui5lint_rule_treemap.yml +7 -0
  18. moderne_visualizations_misc-0.71.0/moderne_visualizations_misc/specs/ui5lint_violations_heatmap.yml +7 -0
  19. moderne_visualizations_misc-0.71.0/moderne_visualizations_misc/spring_component_relationships.ipynb +188 -0
  20. moderne_visualizations_misc-0.71.0/moderne_visualizations_misc/ui5lint_rule_treemap.ipynb +110 -0
  21. moderne_visualizations_misc-0.71.0/moderne_visualizations_misc/ui5lint_violations_heatmap.ipynb +76 -0
  22. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc.egg-info/PKG-INFO +3 -11
  23. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc.egg-info/SOURCES.txt +7 -1
  24. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc.egg-info/requires.txt +0 -11
  25. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/pyproject.toml +9 -6
  26. moderne_visualizations_misc-0.69.0/moderne_visualizations_misc/spring_component_relationships.ipynb +0 -189
  27. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/MANIFEST.in +0 -0
  28. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/__init__.py +0 -0
  29. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/call_graph_data_grid.ipynb +0 -0
  30. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/cobol_find_copybook.ipynb +0 -0
  31. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/cobol_relationships.ipynb +0 -0
  32. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/composite_recipe_results_sankey.ipynb +0 -0
  33. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/dependency_tree_view.ipynb +0 -0
  34. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/dependency_tree_view_nodejs.ipynb +0 -0
  35. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/dependency_tree_view_nodejs_build_tools.ipynb +0 -0
  36. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/dependency_tree_view_nodejs_db.ipynb +0 -0
  37. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/dependency_tree_view_nodejs_forms.ipynb +0 -0
  38. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/dependency_tree_view_nodejs_lint.ipynb +0 -0
  39. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/dependency_tree_view_nodejs_rtc.ipynb +0 -0
  40. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/dependency_tree_view_nodejs_security.ipynb +0 -0
  41. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/dependency_tree_view_nodejs_ss.ipynb +0 -0
  42. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/dependency_tree_view_nodejs_state.ipynb +0 -0
  43. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/dependency_tree_view_nodejs_testing.ipynb +0 -0
  44. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/dependency_tree_view_nodejs_ui.ipynb +0 -0
  45. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/dependency_tree_view_nodejs_utility.ipynb +0 -0
  46. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/dependency_usage_violin.ipynb +0 -0
  47. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/dependency_usage_violin_gradle.ipynb +0 -0
  48. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/dependency_usage_violin_jackson.ipynb +0 -0
  49. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/dependency_usage_violin_maven.ipynb +0 -0
  50. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/dependency_usage_violin_nodejs.ipynb +0 -0
  51. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/dependency_usage_violin_nodejs_build_tools.ipynb +0 -0
  52. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/dependency_usage_violin_nodejs_db.ipynb +0 -0
  53. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/dependency_usage_violin_nodejs_forms.ipynb +0 -0
  54. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/dependency_usage_violin_nodejs_lint.ipynb +0 -0
  55. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/dependency_usage_violin_nodejs_rtc.ipynb +0 -0
  56. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/dependency_usage_violin_nodejs_security.ipynb +0 -0
  57. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/dependency_usage_violin_nodejs_ss.ipynb +0 -0
  58. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/dependency_usage_violin_nodejs_state.ipynb +0 -0
  59. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/dependency_usage_violin_nodejs_testing.ipynb +0 -0
  60. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/dependency_usage_violin_nodejs_ui.ipynb +0 -0
  61. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/dependency_usage_violin_nodejs_utility.ipynb +0 -0
  62. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/dependency_usage_violin_nuget.ipynb +0 -0
  63. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/effective_maven_settings.ipynb +0 -0
  64. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/eslint_problems_by_repo.ipynb +0 -0
  65. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/find_methods.ipynb +0 -0
  66. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/find_methods_ai.ipynb +0 -0
  67. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/find_methods_ai_generate_yaml.ipynb +0 -0
  68. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/get_embeddings_and_cluster.ipynb +0 -0
  69. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/github_secrets_in_use.ipynb +0 -0
  70. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/gradle_wrappers.ipynb +0 -0
  71. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/call_graph_data_grid.300.png +0 -0
  72. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/call_graph_uml.300.png +0 -0
  73. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/cobol_find_copybook.300.png +0 -0
  74. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/cobol_relationships.300.png +0 -0
  75. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/cobol_relationships_data_grid.300.png +0 -0
  76. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/comment_language_distribution.300.png +0 -0
  77. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/composite_recipe_results_sankey.300.png +0 -0
  78. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/dependency_tree_view.300.png +0 -0
  79. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/dependency_tree_view_nodejs.300.png +0 -0
  80. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/dependency_tree_view_nodejs_build_tools.300.png +0 -0
  81. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/dependency_tree_view_nodejs_db.300.png +0 -0
  82. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/dependency_tree_view_nodejs_forms.300.png +0 -0
  83. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/dependency_tree_view_nodejs_lint.300.png +0 -0
  84. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/dependency_tree_view_nodejs_rtc.300.png +0 -0
  85. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/dependency_tree_view_nodejs_security.300.png +0 -0
  86. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/dependency_tree_view_nodejs_ss.300.png +0 -0
  87. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/dependency_tree_view_nodejs_state.300.png +0 -0
  88. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/dependency_tree_view_nodejs_testing.300.png +0 -0
  89. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/dependency_tree_view_nodejs_ui.300.png +0 -0
  90. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/dependency_tree_view_nodejs_utility.300.png +0 -0
  91. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/dependency_usage_violin.300.png +0 -0
  92. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/dependency_usage_violin_gradle.300.png +0 -0
  93. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/dependency_usage_violin_jackson.300.png +0 -0
  94. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/dependency_usage_violin_maven.300.png +0 -0
  95. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/dependency_usage_violin_nodejs.300.png +0 -0
  96. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/dependency_usage_violin_nodejs_build_tools.300.png +0 -0
  97. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/dependency_usage_violin_nodejs_db.300.png +0 -0
  98. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/dependency_usage_violin_nodejs_forms.300.png +0 -0
  99. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/dependency_usage_violin_nodejs_lint.300.png +0 -0
  100. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/dependency_usage_violin_nodejs_rtc.300.png +0 -0
  101. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/dependency_usage_violin_nodejs_security.300.png +0 -0
  102. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/dependency_usage_violin_nodejs_ss.300.png +0 -0
  103. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/dependency_usage_violin_nodejs_state.300.png +0 -0
  104. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/dependency_usage_violin_nodejs_testing.300.png +0 -0
  105. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/dependency_usage_violin_nodejs_ui.300.png +0 -0
  106. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/dependency_usage_violin_nodejs_utility.300.png +0 -0
  107. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/dependency_usage_violin_nuget.300.png +0 -0
  108. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/dependency_vulnerabilities.300.png +0 -0
  109. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/dependency_vulnerabilities_npm.300.png +0 -0
  110. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/dependency_vulnerabilities_nuget.300.png +0 -0
  111. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/eslint_problems.300.png +0 -0
  112. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/eslint_problems_by_repo.300.png +0 -0
  113. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/find_methods.300.png +0 -0
  114. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/find_methods_ai.300.png +0 -0
  115. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/find_methods_ai_generate_yaml.300.png +0 -0
  116. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/github_secrets_in_use.300.png +0 -0
  117. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/gradle_wrappers.300.png +0 -0
  118. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/language_composition.300.png +0 -0
  119. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/language_composition_by_folder.300.png +0 -0
  120. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/language_composition_by_repo.300.png +0 -0
  121. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/maven_parent_poms.300.png +0 -0
  122. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/parse_failure_stacktraces.300.png +0 -0
  123. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/recipe_performance.300.png +0 -0
  124. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/spring_component_relationships.300.png +0 -0
  125. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/spring_component_relationships_data_grid.300.png +0 -0
  126. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/spring_components_data_grid.300.png +0 -0
  127. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/sql_crud.300.png +0 -0
  128. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/images/text_matches_tree_grid.300.png +0 -0
  129. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/java_versions_by_sourceset.ipynb +0 -0
  130. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/java_versions_in_use.ipynb +0 -0
  131. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/language_composition.ipynb +0 -0
  132. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/language_composition_by_folder.ipynb +0 -0
  133. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/language_composition_by_repo.ipynb +0 -0
  134. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/lst_provenance.ipynb +0 -0
  135. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/maven_parent_poms.ipynb +0 -0
  136. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/resources/plantuml.jar +0 -0
  137. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/reusable/tree_view_nodejs.py +0 -0
  138. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/reusable/violin_nodejs.py +0 -0
  139. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/call_graph_data_grid.yml +0 -0
  140. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/call_graph_uml.yml +0 -0
  141. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/cobol_find_copybook.yml +0 -0
  142. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/cobol_relationships.yml +0 -0
  143. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/cobol_relationships_data_grid.yml +0 -0
  144. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/comment_language_distribution.yml +0 -0
  145. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/composite_recipe_results_sankey.yml +0 -0
  146. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/dependency_tree_view.yml +0 -0
  147. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/dependency_tree_view_nodejs.yml +0 -0
  148. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/dependency_tree_view_nodejs_build_tools.yml +0 -0
  149. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/dependency_tree_view_nodejs_db.yml +0 -0
  150. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/dependency_tree_view_nodejs_forms.yml +0 -0
  151. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/dependency_tree_view_nodejs_lint.yml +0 -0
  152. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/dependency_tree_view_nodejs_rtc.yml +0 -0
  153. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/dependency_tree_view_nodejs_security.yml +0 -0
  154. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/dependency_tree_view_nodejs_ss.yml +0 -0
  155. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/dependency_tree_view_nodejs_state.yml +0 -0
  156. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/dependency_tree_view_nodejs_testing.yml +0 -0
  157. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/dependency_tree_view_nodejs_ui.yml +0 -0
  158. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/dependency_tree_view_nodejs_utility.yml +0 -0
  159. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/dependency_usage_violin.yml +0 -0
  160. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/dependency_usage_violin_gradle.yml +0 -0
  161. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/dependency_usage_violin_jackson.yml +0 -0
  162. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/dependency_usage_violin_maven.yml +0 -0
  163. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/dependency_usage_violin_nodejs.yml +0 -0
  164. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/dependency_usage_violin_nodejs_build_tools.yml +0 -0
  165. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/dependency_usage_violin_nodejs_db.yml +0 -0
  166. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/dependency_usage_violin_nodejs_forms.yml +0 -0
  167. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/dependency_usage_violin_nodejs_lint.yml +0 -0
  168. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/dependency_usage_violin_nodejs_rtc.yml +0 -0
  169. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/dependency_usage_violin_nodejs_security.yml +0 -0
  170. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/dependency_usage_violin_nodejs_ss.yml +0 -0
  171. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/dependency_usage_violin_nodejs_state.yml +0 -0
  172. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/dependency_usage_violin_nodejs_testing.yml +0 -0
  173. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/dependency_usage_violin_nodejs_ui.yml +0 -0
  174. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/dependency_usage_violin_nodejs_utility.yml +0 -0
  175. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/dependency_usage_violin_nuget.yml +0 -0
  176. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/dependency_vulnerabilities.yml +0 -0
  177. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/dependency_vulnerabilities_npm.yml +0 -0
  178. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/dependency_vulnerabilities_nuget.yml +0 -0
  179. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/effective_maven_settings.yml +0 -0
  180. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/embeddings_clustering.yml +0 -0
  181. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/eslint_problems.yml +0 -0
  182. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/eslint_problems_by_repo.yml +0 -0
  183. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/find_methods.yml +0 -0
  184. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/find_methods_ai.yml +0 -0
  185. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/find_methods_ai_generate_yaml.yml +0 -0
  186. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/find_source_files.yml +0 -0
  187. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/get_embeddings_and_cluster.yml +0 -0
  188. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/github_secrets_in_use.yml +0 -0
  189. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/gradle_wrappers.yml +0 -0
  190. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/java_versions_by_sourceset.yml +0 -0
  191. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/java_versions_in_use.yml +0 -0
  192. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/language_composition.yml +0 -0
  193. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/language_composition_by_folder.yml +0 -0
  194. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/language_composition_by_repo.yml +0 -0
  195. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/lst_provenance.yml +0 -0
  196. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/maven_parent_poms.yml +0 -0
  197. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/parse_failure_stacktraces.yml +0 -0
  198. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/recipe_performance.yml +0 -0
  199. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/recommendations.yml +0 -0
  200. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/spring_component_relationships.yml +0 -0
  201. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/spring_component_relationships_data_grid.yml +0 -0
  202. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/spring_components_data_grid.yml +0 -0
  203. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/sql_crud.yml +0 -0
  204. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/specs/text_matches_tree_grid.yml +0 -0
  205. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/spring_component_relationships_data_grid.ipynb +0 -0
  206. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/spring_components_data_grid.ipynb +0 -0
  207. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/sql_crud.ipynb +0 -0
  208. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc/text_matches_tree_grid.ipynb +0 -0
  209. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc.egg-info/dependency_links.txt +0 -0
  210. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/moderne_visualizations_misc.egg-info/top_level.txt +0 -0
  211. {moderne_visualizations_misc-0.69.0 → moderne_visualizations_misc-0.71.0}/setup.cfg +0 -0
@@ -1,10 +1,11 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.4
2
2
  Name: moderne_visualizations_misc
3
- Version: 0.69.0
3
+ Version: 0.71.0
4
4
  Summary: Miscellaneous visualizations for the Moderne platform
5
5
  Author-email: Jonathan Schneider <jonathan@moderne.io>, Kyle Scully <kyle@moderne.io>
6
6
  License: Apache-2.0
7
7
  Project-URL: Homepage, https://github.com/moderneinc/visualizations-misc
8
+ Requires-Python: >=3.9
8
9
  Requires-Dist: code-data-science==2.1.2
9
10
  Requires-Dist: graphviz==0.20.1
10
11
  Requires-Dist: ipython==8.13.0
@@ -16,12 +17,3 @@ Requires-Dist: typing-extensions
16
17
  Requires-Dist: umap-learn==0.5.5
17
18
  Requires-Dist: networkx==3.1
18
19
  Requires-Dist: numpy==1.24.4
19
- Provides-Extra: dev
20
- Requires-Dist: poethepoet; extra == "dev"
21
- Requires-Dist: nbqa; extra == "dev"
22
- Requires-Dist: black; extra == "dev"
23
- Requires-Dist: nb_mypy; extra == "dev"
24
- Provides-Extra: ci
25
- Requires-Dist: poethepoet; extra == "ci"
26
- Requires-Dist: python-semantic-release; extra == "ci"
27
- Requires-Dist: papermill; extra == "ci"
@@ -18,10 +18,13 @@ jupyter notebook
18
18
 
19
19
  ## Contributing
20
20
 
21
+ Install [uv](https://docs.astral.sh/uv/getting-started/installation/)
22
+
21
23
  Install development requirements:
22
24
 
23
25
  ```bash
24
- pip install ".[dev]"
26
+ uv sync --dev
27
+ source .venv/bin/activate
25
28
  ```
26
29
 
27
30
  Run type checking:
@@ -187,7 +187,7 @@
187
187
  "name": "python",
188
188
  "nbconvert_exporter": "python",
189
189
  "pygments_lexer": "ipython3",
190
- "version": "3.11.4"
190
+ "version": "3.13.0"
191
191
  },
192
192
  "orig_nbformat": 4
193
193
  },
@@ -26,7 +26,6 @@
26
26
  "source": [
27
27
  "import re\n",
28
28
  "from code_data_science import data_table as dt, data_grid as moderne_data_grid\n",
29
- "import code_data_science.palette as palette\n",
30
29
  "\n",
31
30
  "df = dt.read_csv(\"../samples/cobol_relationships.csv\")"
32
31
  ]
@@ -6,7 +6,7 @@
6
6
  "metadata": {},
7
7
  "outputs": [],
8
8
  "source": [
9
- "from code_data_science import data_table as dt, data_grid as moderne_data_grid\n",
9
+ "from code_data_science import data_table as dt\n",
10
10
  "from code_data_science import palette as colors\n",
11
11
  "import matplotlib.pyplot as plt\n",
12
12
  "import plotly.express as px\n",
@@ -1144,7 +1144,6 @@
1144
1144
  "import warnings\n",
1145
1145
  "import plotly.express as px\n",
1146
1146
  "import code_data_science.data_table as dt\n",
1147
- "import code_data_science.palette as palette\n",
1148
1147
  "\n",
1149
1148
  "warnings.simplefilter(\"ignore\")\n",
1150
1149
  "\n",
@@ -1144,7 +1144,6 @@
1144
1144
  "import warnings\n",
1145
1145
  "import plotly.express as px\n",
1146
1146
  "import code_data_science.data_table as dt\n",
1147
- "import code_data_science.palette as palette\n",
1148
1147
  "\n",
1149
1148
  "warnings.simplefilter(\"ignore\")\n",
1150
1149
  "\n",
@@ -1144,7 +1144,6 @@
1144
1144
  "import warnings\n",
1145
1145
  "import plotly.express as px\n",
1146
1146
  "import code_data_science.data_table as dt\n",
1147
- "import code_data_science.palette as palette\n",
1148
1147
  "\n",
1149
1148
  "warnings.simplefilter(\"ignore\")\n",
1150
1149
  "\n",
@@ -33422,7 +33422,6 @@
33422
33422
  "from code_data_science import palette\n",
33423
33423
  "import plotly.express as px\n",
33424
33424
  "from sklearn.cluster import KMeans\n",
33425
- "from sklearn.manifold import TSNE\n",
33426
33425
  "from sklearn.metrics import silhouette_score\n",
33427
33426
  "import numpy as np\n",
33428
33427
  "import umap\n",
@@ -21,8 +21,7 @@
21
21
  "outputs": [],
22
22
  "source": [
23
23
  "import plotly.express as px\n",
24
- "import pandas as pd\n",
25
- "from code_data_science import data_table as dt, data_grid as moderne_data_grid\n",
24
+ "from code_data_science import data_table as dt\n",
26
25
  "import code_data_science.palette as palette\n",
27
26
  "\n",
28
27
  "df = dt.read_csv(\"../samples/eslint_problems.csv\")\n",
@@ -8,7 +8,7 @@
8
8
  },
9
9
  "outputs": [],
10
10
  "source": [
11
- "from code_data_science import data_table as dt, data_grid as moderne_data_grid\n",
11
+ "from code_data_science import data_table as dt\n",
12
12
  "\n",
13
13
  "df = dt.read_csv(\"../samples/find_source_files.csv\")"
14
14
  ]
@@ -18,8 +18,6 @@
18
18
  "from code_data_science import data_table as dt, data_grid as moderne_data_grid\n",
19
19
  "import code_data_science.palette as palette\n",
20
20
  "import re\n",
21
- "from plotly.subplots import make_subplots\n",
22
- "import plotly.graph_objects as go\n",
23
21
  "\n",
24
22
  "pd.set_option(\"expand_frame_repr\", True)\n",
25
23
  "df = dt.read_csv(\"../samples/parse_failure_kotlin.csv\")\n",
@@ -2,7 +2,7 @@
2
2
  "cells": [
3
3
  {
4
4
  "cell_type": "code",
5
- "execution_count": 65,
5
+ "execution_count": null,
6
6
  "metadata": {
7
7
  "tags": [
8
8
  "parameters"
@@ -16,7 +16,7 @@
16
16
  },
17
17
  {
18
18
  "cell_type": "code",
19
- "execution_count": 66,
19
+ "execution_count": null,
20
20
  "metadata": {
21
21
  "tags": []
22
22
  },
@@ -31,7 +31,27 @@
31
31
  },
32
32
  {
33
33
  "cell_type": "code",
34
- "execution_count": 67,
34
+ "execution_count": null,
35
+ "metadata": {},
36
+ "outputs": [],
37
+ "source": [
38
+ "# normalize headers to match the original names already in use\n",
39
+ "# old headers: repositoryOrigin,repositoryPath,repositoryBranch,scmType,repositoryLink,recipe,sourceFiles,sourceFilesChanged,scanTotalTime,scanP99,scanMax,editTotalTime,editP99,editMax\n",
40
+ "# new headers: repositoryOrigin,repositoryPath,repositoryBranch,scmType,repositoryLink,recipe,sourceFiles,sourceFilesChanged,scanTotalTimeNs,scanP99Ns,scanMaxNs,editTotalTimeNs,editP99Ns,editMaxNs\n",
41
+ "if 'scanTotalTimeNs' in df.columns:\n",
42
+ " df.rename(columns={\n",
43
+ " 'scanTotalTimeNs': 'scanTotalTime',\n",
44
+ " 'scanP99Ns': 'scanP99',\n",
45
+ " 'scanMaxNs': 'scanMax',\n",
46
+ " 'editTotalTimeNs': 'editTotalTime',\n",
47
+ " 'editP99Ns': 'editP99',\n",
48
+ " 'editMaxNs': 'editMax'\n",
49
+ " }, inplace=True)"
50
+ ]
51
+ },
52
+ {
53
+ "cell_type": "code",
54
+ "execution_count": null,
35
55
  "metadata": {},
36
56
  "outputs": [],
37
57
  "source": [
@@ -73,7 +93,7 @@
73
93
  },
74
94
  {
75
95
  "cell_type": "code",
76
- "execution_count": 68,
96
+ "execution_count": null,
77
97
  "metadata": {},
78
98
  "outputs": [],
79
99
  "source": [
@@ -91,11 +111,18 @@
91
111
  "\n",
92
112
  "fig.show()"
93
113
  ]
114
+ },
115
+ {
116
+ "cell_type": "code",
117
+ "execution_count": null,
118
+ "metadata": {},
119
+ "outputs": [],
120
+ "source": []
94
121
  }
95
122
  ],
96
123
  "metadata": {
97
124
  "kernelspec": {
98
- "display_name": "Python 3 (ipykernel)",
125
+ "display_name": ".venv",
99
126
  "language": "python",
100
127
  "name": "python3"
101
128
  },
@@ -109,7 +136,7 @@
109
136
  "name": "python",
110
137
  "nbconvert_exporter": "python",
111
138
  "pygments_lexer": "ipython3",
112
- "version": "3.11.9"
139
+ "version": "3.9.6"
113
140
  }
114
141
  },
115
142
  "nbformat": 4,
@@ -36,7 +36,7 @@
36
36
  "def parse_recommendations(str):\n",
37
37
  " try:\n",
38
38
  " return json.loads(clean_text(str))\n",
39
- " except json.JSONDecodeError as e:\n",
39
+ " except json.JSONDecodeError:\n",
40
40
  " return math.nan\n",
41
41
  "\n",
42
42
  "\n",
@@ -0,0 +1,7 @@
1
+ type: specs.moderne.io/v1beta/visualization
2
+ name: io.moderne.UI5LintRuleTreemap
3
+ displayName: UI5 lint rule treemap
4
+ description: >
5
+ Treemap of UI5 lint violations by rules.
6
+ recipe: org.openrewrite.codemods.UI5
7
+ dataTable: org.openrewrite.codemods.UI5Messages
@@ -0,0 +1,7 @@
1
+ type: specs.moderne.io/v1beta/visualization
2
+ name: io.moderne.UI5LintViolationsHeatmap
3
+ displayName: UI5 lint violations heatmap
4
+ description: >
5
+ Heatmap of UI5 lint violations by repository.
6
+ recipe: org.openrewrite.codemods.UI5
7
+ dataTable: org.openrewrite.codemods.UI5Messages
@@ -0,0 +1,188 @@
1
+ {
2
+ "cells": [
3
+ {
4
+ "cell_type": "code",
5
+ "execution_count": null,
6
+ "metadata": {
7
+ "tags": [
8
+ "parameters"
9
+ ]
10
+ },
11
+ "outputs": [],
12
+ "source": [
13
+ "node_shape: str = \"box\"\n",
14
+ "filter_to_relevant: str = \"\""
15
+ ]
16
+ },
17
+ {
18
+ "cell_type": "code",
19
+ "execution_count": null,
20
+ "metadata": {},
21
+ "outputs": [],
22
+ "source": [
23
+ "import graphviz\n",
24
+ "from code_data_science import data_table as dt\n",
25
+ "import code_data_science.palette as palette\n",
26
+ "\n",
27
+ "df = dt.read_csv(\"../samples/spring_component_relationships.csv\")"
28
+ ]
29
+ },
30
+ {
31
+ "cell_type": "code",
32
+ "execution_count": null,
33
+ "metadata": {},
34
+ "outputs": [],
35
+ "source": [
36
+ "import networkx as nx\n",
37
+ "\n",
38
+ "relevant_nodes = set()\n",
39
+ "ancestor_nodes = set()\n",
40
+ "descendant_nodes = set()\n",
41
+ "\n",
42
+ "if filter_to_relevant:\n",
43
+ " G = nx.from_pandas_edgelist(\n",
44
+ " df, \"dependantType\", \"dependencyType\", create_using=nx.DiGraph()\n",
45
+ " )\n",
46
+ "\n",
47
+ " for node in G.nodes:\n",
48
+ " if filter_to_relevant in node:\n",
49
+ " relevant_nodes.add(node) # Include the node itself\n",
50
+ " # Add all descendants and ancestors of the node\n",
51
+ " descendant_nodes.update(nx.descendants(G, node))\n",
52
+ " ancestor_nodes.update(nx.ancestors(G, node))"
53
+ ]
54
+ },
55
+ {
56
+ "cell_type": "code",
57
+ "execution_count": null,
58
+ "metadata": {},
59
+ "outputs": [],
60
+ "source": [
61
+ "# Continue with your Graphviz setup\n",
62
+ "graphviz.set_jupyter_format(\"svg\")\n",
63
+ "dot = graphviz.Digraph(\"spring-relationships\", comment=\"Spring component relationships\")\n",
64
+ "\n",
65
+ "dot.graph_attr = {\n",
66
+ " \"overlap\": \"true\",\n",
67
+ " \"normalize\": \"true\",\n",
68
+ " \"overlap_shrink\": \"true\",\n",
69
+ " \"overlap_scaling\": \"60\",\n",
70
+ " \"nodesep\": \"1\",\n",
71
+ "}\n",
72
+ "\n",
73
+ "added_nodes = set()\n",
74
+ "added_edges = set()\n",
75
+ "\n",
76
+ "\n",
77
+ "def map_relationship(row):\n",
78
+ " \"\"\"\n",
79
+ " For a row determine which node and relationship should be added to the graph\n",
80
+ " If a relevant filter has been applied then we only want to graph nodes that\n",
81
+ " are descendants or ancestors of the relevant nodes\n",
82
+ " \"\"\"\n",
83
+ " # Check if dependantType node already added\n",
84
+ " if row[\"dependantType\"] not in added_nodes:\n",
85
+ " if filter_to_relevant != \"\":\n",
86
+ " if row[\"dependantType\"] in relevant_nodes:\n",
87
+ " dot.node(\n",
88
+ " row[\"dependantType\"],\n",
89
+ " shape=node_shape,\n",
90
+ " style=\"filled\",\n",
91
+ " fillcolor=palette.__moderne_color_map[\"red\"][200],\n",
92
+ " )\n",
93
+ " added_nodes.add(row[\"dependantType\"])\n",
94
+ " if row[\"dependantType\"] in ancestor_nodes:\n",
95
+ " dot.node(\n",
96
+ " row[\"dependantType\"],\n",
97
+ " shape=node_shape,\n",
98
+ " style=\"filled\",\n",
99
+ " fillcolor=palette.__moderne_color_map[\"blue\"][200],\n",
100
+ " )\n",
101
+ " added_nodes.add(row[\"dependantType\"])\n",
102
+ " else:\n",
103
+ " dot.node(\n",
104
+ " row[\"dependantType\"],\n",
105
+ " shape=node_shape,\n",
106
+ " style=\"filled\",\n",
107
+ " fillcolor=palette.__moderne_color_map[\"blue\"][200],\n",
108
+ " )\n",
109
+ " added_nodes.add(row[\"dependantType\"])\n",
110
+ "\n",
111
+ " # Check if dependencyType node already added\n",
112
+ " if row[\"dependencyType\"] not in added_nodes:\n",
113
+ " if filter_to_relevant != \"\":\n",
114
+ " if row[\"dependencyType\"] in relevant_nodes:\n",
115
+ " dot.node(\n",
116
+ " row[\"dependencyType\"],\n",
117
+ " shape=node_shape,\n",
118
+ " style=\"filled\",\n",
119
+ " fillcolor=palette.__moderne_color_map[\"red\"][200],\n",
120
+ " )\n",
121
+ " added_nodes.add(row[\"dependantType\"])\n",
122
+ " if row[\"dependencyType\"] in descendant_nodes:\n",
123
+ " dot.node(\n",
124
+ " row[\"dependencyType\"],\n",
125
+ " shape=node_shape,\n",
126
+ " style=\"filled\",\n",
127
+ " fillcolor=palette.__moderne_color_map[\"blue\"][200],\n",
128
+ " )\n",
129
+ " added_nodes.add(row[\"dependencyType\"])\n",
130
+ " else:\n",
131
+ " dot.node(\n",
132
+ " row[\"dependencyType\"],\n",
133
+ " shape=node_shape,\n",
134
+ " style=\"filled\",\n",
135
+ " fillcolor=palette.__moderne_color_map[\"blue\"][200],\n",
136
+ " )\n",
137
+ " added_nodes.add(row[\"dependencyType\"])\n",
138
+ "\n",
139
+ " # Add edge\n",
140
+ " if (row[\"dependantType\"], row[\"dependencyType\"]) not in added_edges:\n",
141
+ " if filter_to_relevant != \"\":\n",
142
+ " if row[\"dependantType\"] in descendant_nodes:\n",
143
+ " dot.edge(row[\"dependantType\"], row[\"dependencyType\"])\n",
144
+ " added_edges.add((row[\"dependantType\"], row[\"dependencyType\"]))\n",
145
+ " if row[\"dependencyType\"] in ancestor_nodes:\n",
146
+ " dot.edge(row[\"dependantType\"], row[\"dependencyType\"])\n",
147
+ " added_edges.add((row[\"dependantType\"], row[\"dependencyType\"]))\n",
148
+ " if row[\"dependantType\"] in relevant_nodes:\n",
149
+ " dot.edge(row[\"dependantType\"], row[\"dependencyType\"])\n",
150
+ " added_edges.add((row[\"dependantType\"], row[\"dependencyType\"]))\n",
151
+ " if row[\"dependencyType\"] in relevant_nodes:\n",
152
+ " dot.edge(row[\"dependantType\"], row[\"dependencyType\"])\n",
153
+ " added_edges.add((row[\"dependantType\"], row[\"dependencyType\"]))\n",
154
+ " else:\n",
155
+ " dot.edge(row[\"dependantType\"], row[\"dependencyType\"])\n",
156
+ " added_edges.add((row[\"dependantType\"], row[\"dependencyType\"]))\n",
157
+ "\n",
158
+ "\n",
159
+ "# Apply mapping to each row\n",
160
+ "df.apply(map_relationship, axis=1)\n",
161
+ "\n",
162
+ "# Display the graph\n",
163
+ "dot"
164
+ ]
165
+ }
166
+ ],
167
+ "metadata": {
168
+ "kernelspec": {
169
+ "display_name": "Python 3",
170
+ "language": "python",
171
+ "name": "python3"
172
+ },
173
+ "language_info": {
174
+ "codemirror_mode": {
175
+ "name": "ipython",
176
+ "version": 3
177
+ },
178
+ "file_extension": ".py",
179
+ "mimetype": "text/x-python",
180
+ "name": "python",
181
+ "nbconvert_exporter": "python",
182
+ "pygments_lexer": "ipython3",
183
+ "version": "3.11.4"
184
+ }
185
+ },
186
+ "nbformat": 4,
187
+ "nbformat_minor": 2
188
+ }
@@ -0,0 +1,110 @@
1
+ {
2
+ "cells": [
3
+ {
4
+ "cell_type": "markdown",
5
+ "metadata": {},
6
+ "source": [
7
+ "UI5Lint rule treemap"
8
+ ]
9
+ },
10
+ {
11
+ "cell_type": "code",
12
+ "execution_count": null,
13
+ "metadata": {},
14
+ "outputs": [],
15
+ "source": [
16
+ "import plotly.express as px\n",
17
+ "from code_data_science import data_table as dt\n",
18
+ "import code_data_science.palette as palette\n",
19
+ "\n",
20
+ "df = dt.read_csv(\"../samples/ui5_lint.csv\")\n",
21
+ "df[\"problems\"] = 1\n",
22
+ "\n",
23
+ "if len(df) == 0:\n",
24
+ " fig = px.treemap(names=[], parents=[])\n",
25
+ " fig.add_annotation(\n",
26
+ " x=0.5, y=0.5, text=\"No rows of data found\", showarrow=False, font=dict(size=20)\n",
27
+ " )\n",
28
+ "else:\n",
29
+ " # concat origin:path:branch into repository\n",
30
+ " df[\"repository\"] = (\n",
31
+ " df[\"repositoryOrigin\"]\n",
32
+ " + \":\"\n",
33
+ " + df[\"repositoryPath\"]\n",
34
+ " + \":\"\n",
35
+ " + df[\"repositoryBranch\"]\n",
36
+ " )\n",
37
+ " df[\"fileType\"] = df[\"sourcePath\"].str.split(\".\").str[-1]\n",
38
+ " df_file_grouped = df.groupby(\n",
39
+ " by=[\"ruleId\", \"repository\", \"fileType\"],\n",
40
+ " as_index=False,\n",
41
+ " ).sum(numeric_only=True)\n",
42
+ "\n",
43
+ " path = [\"ruleId\", \"repository\"]\n",
44
+ "\n",
45
+ " # number of rows in the dataframe\n",
46
+ " total_problems = len(df[\"sourcePath\"])\n",
47
+ "\n",
48
+ " measurement_field = \"problems\"\n",
49
+ "\n",
50
+ " # Set the color palette\n",
51
+ " colors = palette.qualitative()\n",
52
+ "\n",
53
+ " fig = px.treemap(\n",
54
+ " df_file_grouped,\n",
55
+ " path=path,\n",
56
+ " values=measurement_field,\n",
57
+ " color_discrete_sequence=colors,\n",
58
+ " )\n",
59
+ "\n",
60
+ " fig.update_layout(\n",
61
+ " margin=dict(t=28, l=0, r=0, b=0),\n",
62
+ " annotations=[\n",
63
+ " dict(\n",
64
+ " x=0.01,\n",
65
+ " y=1.055,\n",
66
+ " showarrow=False,\n",
67
+ " borderwidth=1,\n",
68
+ " text=\"<b>More info</b>\",\n",
69
+ " hovertext=(\n",
70
+ " f\"\"\"\n",
71
+ " <b>Total problems:</b> {\"{:,}\".format(total_problems)} </br> </br>\n",
72
+ " \"\"\"\n",
73
+ " ),\n",
74
+ " xref=\"paper\",\n",
75
+ " yref=\"paper\",\n",
76
+ " )\n",
77
+ " ],\n",
78
+ " )\n",
79
+ "\n",
80
+ " fig.update_traces(\n",
81
+ " marker=dict(cornerradius=3),\n",
82
+ " )\n",
83
+ "\n",
84
+ " fig.data[0].textinfo = \"label+text+value\"\n",
85
+ " fig.show()"
86
+ ]
87
+ }
88
+ ],
89
+ "metadata": {
90
+ "kernelspec": {
91
+ "display_name": ".venv",
92
+ "language": "python",
93
+ "name": "python3"
94
+ },
95
+ "language_info": {
96
+ "codemirror_mode": {
97
+ "name": "ipython",
98
+ "version": 3
99
+ },
100
+ "file_extension": ".py",
101
+ "mimetype": "text/x-python",
102
+ "name": "python",
103
+ "nbconvert_exporter": "python",
104
+ "pygments_lexer": "ipython3",
105
+ "version": "3.9.6"
106
+ }
107
+ },
108
+ "nbformat": 4,
109
+ "nbformat_minor": 4
110
+ }
@@ -0,0 +1,76 @@
1
+ {
2
+ "cells": [
3
+ {
4
+ "cell_type": "markdown",
5
+ "metadata": {},
6
+ "source": [
7
+ "UI5Lint violations heatmap"
8
+ ]
9
+ },
10
+ {
11
+ "cell_type": "code",
12
+ "execution_count": null,
13
+ "metadata": {},
14
+ "outputs": [],
15
+ "source": [
16
+ "import plotly.express as px\n",
17
+ "from code_data_science import data_table as dt\n",
18
+ "import code_data_science.palette as palette\n",
19
+ "\n",
20
+ "df = dt.read_csv(\"../samples/ui5_lint.csv\")\n",
21
+ "\n",
22
+ "df[\"repository\"] = df[\"repositoryPath\"] + \":\" + df[\"repositoryBranch\"]\n",
23
+ "\n",
24
+ "df_heat = df.groupby([\"repository\", \"ruleId\"]).size().reset_index(name=\"count\")\n",
25
+ "\n",
26
+ "pivot_table = df_heat.pivot(\n",
27
+ " index=\"repository\", columns=\"ruleId\", values=\"count\"\n",
28
+ ").fillna(0)\n",
29
+ "\n",
30
+ "colors = palette.color_gradient(\"yellow\")[0:4] + palette.color_gradient(\"red\")[3:6]\n",
31
+ "\n",
32
+ "fig_heat = px.imshow(\n",
33
+ " pivot_table,\n",
34
+ " text_auto=True,\n",
35
+ " aspect=\"auto\",\n",
36
+ " title=\"Heatmap of Rule Violations by Repository\",\n",
37
+ " color_continuous_scale=colors,\n",
38
+ ")\n",
39
+ "\n",
40
+ "fig_heat.update_traces(\n",
41
+ " hovertemplate=\"Rule id: %{x}<br>Repository: %{y}<br>Count: %{z}<extra></extra>\"\n",
42
+ ")\n",
43
+ "\n",
44
+ "fig_heat.show()"
45
+ ]
46
+ },
47
+ {
48
+ "cell_type": "code",
49
+ "execution_count": null,
50
+ "metadata": {},
51
+ "outputs": [],
52
+ "source": []
53
+ }
54
+ ],
55
+ "metadata": {
56
+ "kernelspec": {
57
+ "display_name": ".venv",
58
+ "language": "python",
59
+ "name": "python3"
60
+ },
61
+ "language_info": {
62
+ "codemirror_mode": {
63
+ "name": "ipython",
64
+ "version": 3
65
+ },
66
+ "file_extension": ".py",
67
+ "mimetype": "text/x-python",
68
+ "name": "python",
69
+ "nbconvert_exporter": "python",
70
+ "pygments_lexer": "ipython3",
71
+ "version": "3.9.6"
72
+ }
73
+ },
74
+ "nbformat": 4,
75
+ "nbformat_minor": 4
76
+ }
@@ -1,10 +1,11 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.4
2
2
  Name: moderne_visualizations_misc
3
- Version: 0.69.0
3
+ Version: 0.71.0
4
4
  Summary: Miscellaneous visualizations for the Moderne platform
5
5
  Author-email: Jonathan Schneider <jonathan@moderne.io>, Kyle Scully <kyle@moderne.io>
6
6
  License: Apache-2.0
7
7
  Project-URL: Homepage, https://github.com/moderneinc/visualizations-misc
8
+ Requires-Python: >=3.9
8
9
  Requires-Dist: code-data-science==2.1.2
9
10
  Requires-Dist: graphviz==0.20.1
10
11
  Requires-Dist: ipython==8.13.0
@@ -16,12 +17,3 @@ Requires-Dist: typing-extensions
16
17
  Requires-Dist: umap-learn==0.5.5
17
18
  Requires-Dist: networkx==3.1
18
19
  Requires-Dist: numpy==1.24.4
19
- Provides-Extra: dev
20
- Requires-Dist: poethepoet; extra == "dev"
21
- Requires-Dist: nbqa; extra == "dev"
22
- Requires-Dist: black; extra == "dev"
23
- Requires-Dist: nb_mypy; extra == "dev"
24
- Provides-Extra: ci
25
- Requires-Dist: poethepoet; extra == "ci"
26
- Requires-Dist: python-semantic-release; extra == "ci"
27
- Requires-Dist: papermill; extra == "ci"