Skip to content

grounds 0.0.3

Choose a tag to compare

@mihaidaniel34 mihaidaniel34 released this 10 Oct 16:46
· 67 commits to master since this release

Parser and precision release. Still experimental; Apple Silicon macOS 11+ binary (other platforms: build from source or use the Nix flake).

curl -fsSL https://github.com/mihaidaniel34/grounds/releases/download/v0.0.3/grounds-0.0.3-aarch64-apple-darwin.tar.gz | tar -xz
sudo mv grounds-0.0.3-aarch64-apple-darwin/grounds /usr/local/bin/

Not notarized: after a browser download, xattr -d com.apple.quarantine grounds.

Fixed since 0.0.2

  • Java 22 unnamed variables and patterns (case Boolean _, Byte _ ->, catch (E _), (_, b) ->), which tree-sitter-java cannot parse, are now handled.
  • grounds index reports how many files still have parse errors (0 on all 13 test codebases).
  • Findings that overlap code the parser could not read are dropped; well-formed code elsewhere in the file is still checked.
  • A review of the 0.0.2 changes (gpt-6-astra) found 10 regressions, all fixed with tests:
    • the parser workarounds could rewrite code inside strings, comments and Unicode identifiers (one case silently lost every finding in a file);
    • a plain class with a leftover @Bean method, or an autowireCandidate = false factory, could hide a genuinely missing bean;
    • two project classes with the same simple name were treated as classpath skew;
    • inherited @Bean methods: overloads, and generic return types (Spring matches them by erasure);
    • CRLF line endings in META-INF/spring.factories.
  • Naming rules are Unicode-aware.