Releases: JohT/code-graph-analysis-pipeline
Releases · JohT/code-graph-analysis-pipeline
v2.0.0 TypeScript Source Code Analysis
🌟 Highlights 🌟
- ✨TypeScript ✨ Source Code Analysis (experimental)
- Git data included
- Npm package.json data included
- Multiple source folders
- Symbolic links
- Incoming and Outgoing dependencies considering Java subpackages
- Path finding algorithms reports
- Bridges centrality algorithm report
- JavaEE and Spring REST endpoint reports
🚀 Changes
- Add reports containing JavaEE and Spring REST resources by @JohT in #102
- Skip analysis for empty projections by @JohT in #114
- Small Improvements by @JohT in #117
- Incoming and outgoing package dependencies with sub packages by @JohT in #124
- Introduce Typescript Analysis by @JohT in #112
- Add graph data science algorithms for Typescript by @JohT in #137
- Add Graph visualizations for Typescript Modules by @JohT in #142
- Separate report reference documentation generation by @JohT in #143
- Add optional data validation before Jupyter notebook execution. by @JohT in #144
- Assure that t-SNE perplexity parameter is lower than the sample size for small graphs by @JohT in #147
- Use pnpm as package manager for react-router by @JohT in #148
- Migrate from sklearn.manifold TSNE to openTSNE for visualizing node embeddings by @JohT in #155
- Provide script to import git log as csv by @JohT in #157
- Add parent git commit nodes and connect them by @JohT in #159
- Use latest stable open graph-data-science version 2.6.7 by @JohT in #161
- Use latest stable open-graph-data-science version 2.6.8 by @JohT in #162
- Add external dependencies reports for Typescript by @JohT in #154
- Add internal dependencies reports for Typescript by @JohT in #167
- Ignore duplicate Typescript analysis json files scan by @JohT in #173
- Add Overview reports by @JohT in #174
- Add visibility reports for Typescript by @JohT in #175
- Fix missing declarationCount property on DEPENDS_ON relationships by @JohT in #183
- Add file distance to DEPENDS_ON relationships by @JohT in #184
- Support npm package.json files by @JohT in #185
- Add script to sort out external Java jar libraries. by @JohT in #186
- Support multiple source directories by @JohT in #178
- Support Typescript scan for existing sources without clone by @JohT in #191
- Refine nodes and relationships for multi typescript project graphs by @JohT in #194
- Support scanning files outside "artifacts" and switch to plugin for git data by @JohT in #195
- Use Renovate to update jQAssistant plugins by @JohT in #198
- Fix error when tsconfig has file as reference path. by @JohT in #200
- Improve useability by @JohT in #203
- Auto detect latest git tag if no version is specified by @JohT in #208
- Detect, mark and filter test related modules in Typescript analysis by @JohT in #209
- Improve file and npm relationships for Typescript projects by @JohT in #210
- Add statistics about resolved external Typescript modules by @JohT in #215
- Introduce path finding algorithm reports by @JohT in #216
- Scan every Typescript source directory separately. by @JohT in #224
- Support scanning large code bases by @JohT in #229
- Improvements for Typescript by @JohT in #231
- Support Typescript version numbers by @JohT in #223
- Scan each contained Typescript package when the scan of the whole source repository failed by @JohT in #244
- Fix missing support for dashes in profile names. by @JohT in #245
- Improve RESOLVES_TO relationships between external and internal Typescript modules by @JohT in #248
- Improve internal dependencies reports by @JohT in #255
- Fix minor Typescript issues by @JohT in #259
- Improve naming of external Typescript nodes by @JohT in #260
- Improve Typescript scanning and git import by @JohT in #265
- Improvements for large scala Typescript analysis by @JohT in #268
- Fix missing IS_IMPLEMENTED_IN relationship for Typescript declarations by @JohT in #277
- Fix broken link check using workaround by @JohT in #279
- Install Typescript project dependencies explicitly by @JohT in #280
- Add Bridges centrality algorithm report by @JohT in #283
- Update jQAssistant TypeScript Plugin to v1.3.2 by @renovate in #282
- Add details to algorithm result code unit names by @JohT in #285
📦 Dependency Updates
- Update dependency puppeteer to v21.6.1 by @renovate in #92
- Update dependency jQAssistant/jqa-commandline-tool to v2.0.10 by @renovate in #94
- Update dependency conda-forge/miniforge to v23.11.0-0 by @renovate in #95
- Update actions/upload-artifact action to v4 by @renovate in #97
- Update dependency neo4j/apoc to v5.15.0 by @renovate in #96
- Update dependency puppeteer to v21.7.0 by @renovate in #99
- Update actions/cache action to v4 by @renovate in #101
- Update dependency neo4j/graph-data-science to v2.5.7 by @renovate in #103
- Update dependency puppeteer to v21.9.0 by @renovate in #104
- Update dependency puppeteer to v21.11.0 by @renovate in #106
- Update to open graph-data-science v2.6.0+51 by @JohT in #107
- Update dependency neo4j/neo4j to v5.16.0 by @renovate in #93
- Update dependency AxonFramework/AxonFramework to v4.9.2 by @renovate in #105
- Update dependency neo4j/apoc to v5.17.0 by @renovate in #100
- Update dependency neo4j/graph-data-science to v2.6.0 by @renovate in #108
- Update dependency puppeteer to v22 by @renovate in #109
- Update dependency JohT/open-graph-data-science-packaging to v2.6.1-23bc767797 by @renovate in #110
- Update dependency puppeteer to v22.1.0 by @renovate in #111
- Updat...
v1.0.1 Fix Graph Visualization
⚙️ Optimization
🛠 Fixes
- Fix JavaScript Graph Visualization by running it after all CSV reports that write data into the Graph by @JohT in #89
📦 Dependency Updates
Full Changelog: v1.0.0...v1.0.1
v1.0.0 First major version release
🚀 Features
- Update to Neo4j v5 and jQAssistant CLI 2.0 by @JohT in #6
- Introduce explore mode to start a manual analysis by @JohT in 53d6045
- Support for open packaged graph-data-science plugin by @JohT in #15
- Support query parameters by @JohT in #42
🎉 New Reports
- Graph Visualization by @JohT in #24
- Render visualization as png using puppeteer by @JohT in #26
- Add artifact reports by @JohT in #31
- Add node embeddings reports by @JohT in #47
- Add reports with metrics about detected communities by @JohT in #73
- Add java specific queries and reports by @JohT in #83
📖 Documentation
- Auto-generate reference documentation by @JohT in #22
- Bring documentation up-to-date by @JohT in #74
⚙️ Optimization
- Rename "package dependencies" to "internal dependencies" by @JohT in #12
- Separate artifacts and their download from the analysis by @JohT in #13
- Performance Tuning by @JohT in #19
- Update old analysis reports by @JohT in #23
- Parametrize Topological Sort by @JohT in #51
- Refine Community Detection by @JohT in #52
- Fail-fast approach for error handling by @JohT in #54
- Optimize centrality reports using in-memory mutate by @JohT in #55
- Optimize Similarity using in-memory mutation by @JohT in #60
- Minor improvements and refinements by @JohT in #88
🛠 Fixes
📦 Dependency Updates
- Configure Renovate by @renovate in #1
- Update dependency conda-forge/miniforge to v23.1.0-2 by @renovate in #8
- Update dependency neo4j/graph-data-science to v2.4.1 by @renovate in #9
- Update dependency AxonFramework/AxonFramework to v4.8.0 by @renovate in #11
- Update dependency conda-forge/miniforge to v23.1.0-3 by @renovate in #14
- Update dependency jQAssistant/jqa-commandline-tool to v2.0.4 by @renovate in #16
- Update dependency neo4j/apoc to v5.10.1 by @renovate in #17
- Update dependency JohT/open-graph-data-science-packaging to v2.4.3 by @renovate in #20
- Update dependency neo4j/graph-data-science to v2.4.3 by @renovate in #21
- Update dependency neo4j/neo4j to v5.10.0 by @renovate in #18
- Update dependency jQAssistant/jqa-commandline-tool to v2.0.5 by @renovate in #25
- Update dependency puppeteer to v21.0.3 by @renovate in #27
- Update dependency JohT/open-graph-data-science-packaging to v2.5.0-alpha03 by @renovate in #29
- Update dependency AxonFramework/AxonFramework to v4.8.2 by @renovate in #34
- Update dependency neo4j/graph-data-science to v2.4.4 by @renovate in #30
- Update dependency neo4j/apoc to v5.11.0 by @renovate in #32
- Update dependency puppeteer to v21.1.0 by @renovate in #33
- Update dependency jQAssistant/jqa-commandline-tool to v2.0.6 by @renovate in #35
- Update dependency neo4j/graph-data-science to v2.4.5 by @renovate in #37
- Update dependency jQAssistant/jqa-commandline-tool to v2.0.7 by @renovate in #36
- Update dependency puppeteer to v21.1.1 by @renovate in #39
- Update dependency glob to v10.3.4 by @renovate in #38
- Update actions/checkout action to v4 by @renovate in #41
- Update dependency conda-forge/miniforge to v23.3.1-0 by @renovate in #40
- Update dependency neo4j/apoc to v5.12.0 by @renovate in #44
- Update dependency neo4j/graph-data-science to v2.4.6 by @renovate in #43
- Update dependency puppeteer to v21.3.4 by @renovate in #46
- Update dependency glob to v10.3.9 by @renovate in #45
- Update dependency jQAssistant/jqa-commandline-tool to v2.0.8 by @renovate in #49
- Update dependency puppeteer to v21.3.6 by @renovate in #50
- Update dependency glob to v10.3.10 by @renovate in #48
- Update dependency puppeteer to v21.3.8 by @renovate in #53
- Update dependency neo4j/graph-data-science to v2.5.0 by @renovate in #56
- Update dependency neo4j/neo4j to v5.12.0 by @renovate in #28
- Update dependency puppeteer to v21.4.0 by @renovate in #59
- Update dependency JohT/open-graph-data-science-packaging to v2.5.2+41 by @renovate in #61
- Update dependency neo4j/graph-data-science to v2.5.1 by @renovate in #62
- Support windows tested in git bash by @JohT in #57
- Update dependency AxonFramework/AxonFramework to v4.9.0 by @renovate in #58
- Update dependency neo4j/neo4j to v5.13.0 by @renovate in #64
- Update dependency neo4j/apoc to v5.13.0 by @renovate in #63
- Update dependency puppeteer to v21.4.1 by @renovate in #65
- Add list of annotated code elements to reports by @JohT in #66
- Update actions/setup-node action to v4 by @renovate in #68
- Update dependency puppeteer to v21.5.0 by @renovate in #67
- Update dependency JohT/open-graph-data-science-packaging to v2.5.3+43 by @renovate in #69
- Update dependency puppeteer to v21.5.1 by @renovate in #70
- Update dependency neo4j/graph-data-science to v2.5.4 by @renovate in #71
- Update dependency AxonFramework/AxonFramework to v4.9.0 by @renovate in #75
- Update dependency jQAssistant/jqa-commandline-tool to v2.0.9 by @renovate in #77
- Update dependency puppeteer to v21.5.2 by @renovate in #78
- Update dependency JohT/open-graph-data-science-packaging to v2.5.5+44 by @renovate in #76
- Update dependency neo4j/apoc to v5.14.0 by @renovate in #80
- Update dependency neo4j/graph-data-science to v2.5.5 by @renovate in #79
- Update dependency conda-forge/miniforge to v23.10.0-0 by @renovate in #82
- Update actions/setup-java action to v4 by @renovate in #84
- Update conda-incubator/setup-miniconda action to...
v0.9.0 Initial Release Version
🎉 Initial Release Version
🚀 Features
- Analyze static code structure, dependencies, metrics, ...
- Fully automated pipeline from tool installation and artifact download to report generation
- Runtime and library independent automation using shell scripts
- Comprehensive list of Cypher queries
- Example Analysis for AxonFramework
📖 Jupyter Notebook Reports
- External Dependencies reports with amongst others the most and least used external packages (Example)
- Object Oriented Design Quality Metrics report based on OO Design Quality Metrics by Robert Martin (Example)
- Overview reports with the number of Java types and packages, method line count, etc. (Example)
- Package Dependencies report based on Analyze java package metrics in a graph database including cyclic dependencies (Example)
- Visibility Metrics reports based on Visibility Metrics and the Importance of Hiding Things (Example)
- Wordcloud with a visual representation of Java package and class names (Example)
📖 Graph Data Science Reports
Here are some reports that utilize Neo4j's Graph Data Science Library: