Skip to content

Commit 7a7cddc

Browse files
committed
Update changelog and readme for version 0.5.0
1 parent d76bf8d commit 7a7cddc

4 files changed

Lines changed: 31 additions & 4 deletions

File tree

CHANGELOG.md

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,33 @@
22

33
This file documents the changes made to the formatter with each release. This project uses [semantic versioning](https://semver.org/spec/v2.0.0.html).
44

5+
## Release 0.5.0 (2025-09-18)
6+
7+
This release greatly improves the performance of the formatter, which makes it feel even snappier than before. The time to format is divided by up to 2.
8+
9+
### Added
10+
11+
- Support for multiline function calls with correct indentation
12+
- Option to reorder GDScript code according to the official style guide
13+
- Benchmark script to test the formatter's performance on small and large files (run `cargo run --bin benchmark --release`)
14+
15+
### Changed
16+
17+
- Updated GDScript tree-sitter parser and tree-sitter library to the latest version, bringing a big performance improvement (up to 30%)
18+
- Optimized release builds with lto compile flags (this brings a 10-20% speed improvement)
19+
- Improved vertical spacing between class-level declarations to add two lines even if there are docstrings
20+
- Improved module documentation and docstrings
21+
- Vertical spacing logic to account for multi-line comments/docstrings before definitions
22+
- Refactored formatter to use more idiomatic Rust (the formatter is now a struct and multiline module comments are docstrings)
23+
- `gdscript-format` is now the default binary for `cargo run`
24+
25+
### Fixed
26+
27+
- Loss of node names/paths in `%` and `$ get_node` syntaxes
28+
- Leading space before `not` being lost during formatting in the expression `not in`
29+
- Line continuation markers being lost upon formatting
30+
- Incorrect GitHub URLs in README (#15)
31+
532
## Release 0.4.0 (2025-09-10)
633

734
### Fixed

Cargo.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "gdscript-formatter"
3-
version = "0.3.0"
3+
version = "0.5.0"
44
edition = "2021"
55
description = "A GDScript code formatter using Topiary and Tree-sitter"
66
license = "MIT"

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
A fast code formatter for Godot's GDScript programming language built with [Tree Sitter GDScript](https://github.com/PrestonKnopp/tree-sitter-gdscript) and [Topiary](https://topiary.tweag.io/).
44

5-
The goal of this project is to provide a simple and fast GDScript code formatter that's easy to iterate on, contribute to, and easy to maintain.
5+
The goal of this project is to provide a simple and really fast GDScript code formatter that's easy to contribute to, and easy to maintain. It also benefits GDScript support in code editors like Zed, Neovim, and Emacs as we use the project to improve the Tree Sitter GDScript parser.
66

77
## Features
88

@@ -30,7 +30,7 @@ gdscript-format --check path/to/file.gd
3030

3131
## Status
3232

33-
Ready for daily use for commonly written code - 09/04/2025 - The formatter now has many formatting rules implemented and is ready to test. It includes:
33+
Version 0.5.0 - 09/18/2025 - The formatter now has many formatting rules implemented and is ready to test. It includes:
3434

3535
- **Spaces**: leaving one space consistently between many operators, most keywords, or after commas in function calls, arrays, and dictionaries
3636
- **Multi-line structures**: simple arrays and dictionaries can be wrapped on one or multiple lines with indentation

0 commit comments

Comments
 (0)