You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 8486bc8
Browse filesBrowse the repository at this point in the historyBrowse files
<h2id="v130">v1.3.0<aclass="headerlink" href="#v130" title="Link to this section">¶</a></h2>
1214
1214
<p><em>Released on July 31, 2026</em></p>
1215
-
<p>This release introduces direct source code scanning for local Kotlin and Java project directories, mapping exact declaration source locations (file path, line, and column) and imports directly into the unified API database index.</p>
1215
+
<p>This release introduces scan-source, enabling Library Insight to analyze local Kotlin and Java source projects without compilation. Source declarations, documentation, imports, and precise source locations are indexed into the same unified API database used for compiled libraries.</p>
1216
1216
<h3id="raw-source-directory-scanner-scan-source">🔍 Raw Source Directory Scanner (<code>scan-source</code>)<aclass="headerlink" href="#raw-source-directory-scanner-scan-source" title="Link to this section">¶</a></h3>
1217
-
<p>Scan raw source code directories containing Kotlin (<code>.kt</code>) and Java (<code>.java</code>) files without compiling them. It generates the exact same unified API index database as the compiled <code>scan</code> pipeline, meaning all downstream commands (<code>search</code>, <code>explain</code>, <code>export</code>, <code>ai-export</code>) function seamlessly.</p>
1217
+
<p>Scan raw source code directories containing Kotlin (<code>.kt</code>) and Java (<code>.java</code>) files without compiling them. It generates the same unified API index as the existing scan command, allowing existing commands such as search, explain, export, and ai-export to work without any workflow changes.</p>
- <strong>Kotlin PSI Integration</strong>: Uses the official Kotlin compiler embeddable (<code>kotlin-compiler-embeddable</code>) and PSI parser to traverse syntax trees, preserving KDocs, class modifiers (data, sealed, value, inner, open, abstract), companion objects, secondary constructors, and extension receiver types.</p>
1220
+
<p><strong>Features:</strong></p>
1221
+
<ul>
1222
+
<li><strong>Java Source Parsing</strong>: Uses JavaParser to extract classes, interfaces, enums, records, constructors, methods, fields, generics, annotations, modifiers, and Javadocs.</li>
1223
+
<li><strong>Kotlin Source Parsing</strong>: Uses the official Kotlin compiler PSI (<code>kotlin-compiler-embeddable</code>) to extract KDoc, modifiers, companion objects, secondary constructors, extension receivers, generics, and Kotlin-specific language features.</li>
1224
+
</ul>
1223
1225
<h3id="source-location-imports-indexing">📍 Source Location & Imports Indexing<aclass="headerlink" href="#source-location-imports-indexing" title="Link to this section">¶</a></h3>
1224
1226
<ul>
1225
-
<li><strong>Source Pointers</strong>: Persists the relative file path, line number, and column for every class, constructor, method, and property.</li>
1227
+
<li><strong>Source Locations</strong>: Stores the relative file path, line number, and column for every indexed class, constructor, method, and property.</li>
1226
1228
<li><strong>Import Statements</strong>: Persists file-level import lists inside the class API model, helpful for dependency analysis and code structure auditing.</li>
1227
1229
<li><strong>Backward-Compatible Database</strong>: Existing bytecode-scanned indices are backward-compatible and load seamlessly without schema validation breaks.</li>
1228
1230
</ul>
1229
-
<h3id="cli-output-enhancements">🖥️ CLI Output Enhancements<aclass="headerlink" href="#cli-output-enhancements" title="Link to this section">¶</a></h3>
1231
+
<h3id="cli-improvements">🖥️ CLI Improvements<aclass="headerlink" href="#cli-improvements" title="Link to this section">¶</a></h3>
1230
1232
<ul>
1231
-
<li><strong><code>scan-source</code> statistics</strong>: The console prints clean statistics on scanned file types:
</span><spanid="__span-1-8"><aid="__codelineno-1-8" name="__codelineno-1-8" href="#__codelineno-1-8"></a>Found 143 classes across 18 packages.
1240
-
</span></code></pre></div></li>
1241
-
<li><strong><code>search</code> source locations</strong>: Whenever available, search results display declaration files and line numbers directly below matched symbols.</li>
1242
-
<li><strong><code>explain</code> reports</strong>: The class explain template now displays <code>Source</code> file locations at the header, <code>Imports</code> imports list (if any), and source file/line markers next to each property and method.</li>
1233
+
<li>scan-source displays Kotlin/Java file statistics and indexing progress.</li>
1234
+
<li>search now shows declaration source locations when available.</li>
1235
+
<li>explain now displays source locations, imports, and declaration locations for methods and properties.</li>
1243
1236
</ul>
1244
1237
<hr/>
1245
1238
<h2id="v120">v1.2.0<aclass="headerlink" href="#v120" title="Link to this section">¶</a></h2>
1246
1239
<p><em>Released on July 29, 2026</em></p>
1247
1240
<p>This major update introduces deep Kotlin DSL analysis, bytecode call graph visualization, automated example generation, package health metrics, and compile-time ABI linkage checks to prevent runtime errors.</p>
1248
1241
<h3id="kotlin-dsl-fluent-api-report-dsl-report">🧩 Kotlin DSL & Fluent API Report (<code>dsl-report</code>)<aclass="headerlink" href="#kotlin-dsl-fluent-api-report-dsl-report" title="Link to this section">¶</a></h3>
1249
-
<p>Expose the structure of DSL-heavy libraries. Scans and groups:
1250
-
- <strong>Type aliases</strong> — extracted from package metadata.
<h3id="method-call-graph-generator-callgraph">🌳 Method Call Graph Generator (<code>callgraph</code>)<aclass="headerlink" href="#method-call-graph-generator-callgraph" title="Link to this section">¶</a></h3>
1259
1254
<p>Recursively traces method call instructions to render a visual tree of internal invocations inside the bytecode. Excellent for understanding execution flows and auditing internals.</p>
<h3id="automatic-examples-generator-examples">📝 Automatic Examples Generator (<code>examples</code>)<aclass="headerlink" href="#automatic-examples-generator-examples" title="Link to this section">¶</a></h3>
1263
1258
<p>Generates typical instantiation patterns (constructors, builders, factories, singletons) from bytecode signatures, and extracts code blocks from Dokka/README markdown files.</p>
<h3id="package-health-complexity-health">🩺 Package Health & Complexity (<code>health</code>)<aclass="headerlink" href="#package-health-complexity-health" title="Link to this section">¶</a></h3>
1267
1262
<p>Analyzes structural complexity indices, public API distributions (classes, methods, properties), and deprecation ratios to grade the library.</p>
<h3id="classpath-abi-linkage-detector-dependency-check">🚨 Classpath ABI Linkage Detector (<code>dependency-check</code>)<aclass="headerlink" href="#classpath-abi-linkage-detector-dependency-check" title="Link to this section">¶</a></h3>
1271
1266
<p>Checks compiled transitive dependencies for method and field signatures missing from the classpath. Proactively flags runtime risks such as <code>NoSuchMethodError</code>, <code>NoSuchFieldError</code>, or <code>LinkageError</code>.</p>
<h3id="mcp-server-enhancements">⚙️ MCP Server Enhancements<aclass="headerlink" href="#mcp-server-enhancements" title="Link to this section">¶</a></h3>
1275
1270
<ul>
@@ -1283,7 +1278,7 @@ <h2 id="v110">v1.1.0<a class="headerlink" href="#v110" title="Link to this secti
1283
1278
<p>This release evolves Library Insight from a CLI scanner into a full <strong>JVM API Explorer & MCP Server</strong> — your AI IDE can now use it automatically, without any manual commands.</p>
1284
1279
<h3id="mcp-server-model-context-protocol">🔌 MCP Server (Model Context Protocol)<aclass="headerlink" href="#mcp-server-model-context-protocol" title="Link to this section">¶</a></h3>
1285
1280
<p>Connect Cursor, Claude Desktop, or any MCP-compatible IDE directly. AI agents can call <code>scan_library</code>, <code>search_symbols</code>, and <code>explain_class</code> natively without leaving the editor.</p>
<h3id="migration-advisor-migrate">🔄 Migration Advisor (<code>migrate</code>)<aclass="headerlink" href="#migration-advisor-migrate" title="Link to this section">¶</a></h3>
1289
1284
<p>Compare two library versions and get a structured report of:</p>
<h3id="dependency-api-audit-audit">🔍 Dependency API Audit (<code>audit</code>)<aclass="headerlink" href="#dependency-api-audit-audit" title="Link to this section">¶</a></h3>
1299
1294
<p>Scan all project Gradle dependencies recursively and report deprecated classes, methods, and properties found in the actual bytecode.</p>
<h3id="dependency-graph-dependency-graph">🌳 Dependency Graph (<code>dependency-graph</code>)<aclass="headerlink" href="#dependency-graph-dependency-graph" title="Link to this section">¶</a></h3>
1303
1298
<p>Print a visual recursive tree of transitive compile dependencies from POM descriptors.</p>
<h3id="search-maven-central-search-central">🔎 Search Maven Central (<code>search-central</code>)<aclass="headerlink" href="#search-maven-central-search-central" title="Link to this section">¶</a></h3>
1307
1302
<p>Find Maven coordinates and versions without leaving the terminal.</p>
<h3id="semver-compliance-checker-semver">✅ SemVer Compliance Checker (<code>semver</code>)<aclass="headerlink" href="#semver-compliance-checker-semver" title="Link to this section">¶</a></h3>
1311
1306
<p>Verify that a version bump correctly reflects the actual bytecode changes. Flags unbumped breaking changes.</p>
0 commit comments