lakesoul-io/LakeSoul

Adopt treefmt for repository-wide code formatting

Closed

#791 opened on Jun 23, 2026

 (3 comments) (0 reactions) (1 assignee)Java (432 forks)batch import
good first issue

Repository metrics

Stars
 (2,236 stars)
PR merge metrics
 (Avg merge 3d 4h) (10 merged PRs in 30d)

Description

Motivation

LakeSoul is a multi-language repository containing Rust, Java, Scala, Python, TOML, YAML, and other configuration files.

Currently, formatting behavior depends on individual developer tooling (IntelliJ IDEA, VS Code, Zed, Neovim, etc.), which can lead to:

  • Inconsistent code style
  • Formatter-related diffs in pull requests
  • Different formatting results across editors
  • Additional review noise

Proposal

Adopt treefmt as the single entry point for repository formatting.

The goal is to define a consistent formatting policy for all supported languages and configuration files:

Language Formatter
Rust rustfmt
Java google-java-format
Scala scalafmt
Python ruff format
TOML taplo
YAML prettier
JSON prettier

Developers can continue using their preferred editor, but formatting behavior should be defined centrally in the repository.

Example

treefmt

Contributor guide