diff --git a/CLAUDE.md b/CLAUDE.md index 554818a..289a778 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -53,8 +53,8 @@ Do not capture PII, tokens, or secrets in OTel attributes or logs. Record instru *DevTrail | [Strange Days Tech](https://strangedays.tech) — Because every change tells a story.* ## Active Technologies -- Rust (edition 2024, MSRV to be determined by tree-sitter 0.25 requirements) + tree-sitter 0.25, serde (serialization), 10 tree-sitter grammar crates (see research.md) (001-code-metrics-library) +- Rust (edition 2024, MSRV to be determined by tree-sitter 0.25 requirements) + tree-sitter 0.25, serde (serialization), 12 tree-sitter grammar crates (10 Tier 1 + Kotlin, Swift) (001-code-metrics-library) - N/A (pure computation library, reads files via `std::fs`) (001-code-metrics-library) ## Recent Changes -- 001-code-metrics-library: Added Rust (edition 2024, MSRV to be determined by tree-sitter 0.25 requirements) + tree-sitter 0.25, serde (serialization), 10 tree-sitter grammar crates (see research.md) +- 001-code-metrics-library: Added Kotlin and Swift (Tier 2) via tree-sitter-kotlin-ng 1.1 and tree-sitter-swift 0.7, expanding to 12 languages diff --git a/README.md b/README.md index 009fdd2..e534e61 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ Multi-language code complexity metrics powered by [tree-sitter](https://tree-sit Arborist computes **cognitive complexity** (SonarSource), **cyclomatic complexity** (McCabe), and **source lines of code** (SLOC) for functions and methods across -10 programming languages -- all from a single, embeddable Rust library. +12 programming languages -- all from a single, embeddable Rust library. ## Supported Languages @@ -20,6 +20,8 @@ Arborist computes **cognitive complexity** (SonarSource), **cyclomatic complexit | C++ | `cpp` | `.cpp`, `.cc`, `.cxx`, `.hpp`, `.hxx`, `.hh` | | C | `c` | `.c`, `.h` | | PHP | `php` | `.php` | +| Kotlin | `kotlin` | `.kt`, `.kts` | +| Swift | `swift` | `.swift` | ## Installation @@ -38,7 +40,7 @@ Select specific languages to reduce compile time: arborist = { version = "0.1", default-features = false, features = ["rust", "python"] } ``` -Enable all 10 languages: +Enable all 12 languages: ```toml [dependencies] @@ -50,7 +52,7 @@ arborist = { version = "0.1", features = ["all"] } | Flag | Includes | |------|----------| | `default` | `rust`, `python`, `javascript`, `typescript`, `java`, `go` | -| `all` | All 10 Tier 1 languages | +| `all` | All 12 languages (Tier 1 + Tier 2) | | Individual | One language each (e.g., `rust`, `python`, `csharp`) | ## Quick Start diff --git a/specs/001-code-metrics-library/quickstart.md b/specs/001-code-metrics-library/quickstart.md index 5b8fc33..e10c6f2 100644 --- a/specs/001-code-metrics-library/quickstart.md +++ b/specs/001-code-metrics-library/quickstart.md @@ -18,7 +18,7 @@ arborist = "0.1" [dependencies] arborist = { version = "0.1", default-features = false, features = ["rust", "python"] } -# Or all 10 Tier 1 languages +# Or all 12 languages (Tier 1 + Tier 2) [dependencies] arborist = { version = "0.1", features = ["all"] } ``` @@ -104,7 +104,7 @@ Per the project constitution, development follows test-first, fixture-driven wor | Flag | Languages | |------|-----------| | `default` | Rust, Python, JavaScript, TypeScript, Java, Go | -| `all` | All 10 Tier 1 languages | +| `all` | All 12 languages (Tier 1 + Tier 2) | | `rust` | Rust only | | `python` | Python only | | `javascript` | JavaScript + JSX | @@ -115,3 +115,5 @@ Per the project constitution, development follows test-first, fixture-driven wor | `c` | C | | `go` | Go | | `php` | PHP | +| `kotlin` | Kotlin + Kotlin Script | +| `swift` | Swift |