Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ Provides the necessary building blocks to develop Language Server Protocol imple
# Installation

> [!NOTE]
> The default branch requires Zig `0.15.0-dev.1018+1a998886c` or later. Checkout the `0.14.x` branch when using Zig 0.14
> The default branch requires Zig `0.15.0-dev.1145+3ae0ba096` or later. Checkout the `0.14.x` branch when using Zig 0.14

```bash
# Initialize a `zig build` project if you haven't already
Expand Down
4 changes: 2 additions & 2 deletions build.zig
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
const std = @import("std");
const builtin = @import("builtin");

const minimum_zig_version = "0.15.0-dev.1018+1a998886c";
const minimum_zig_version = "0.15.0-dev.1145+3ae0ba096";

pub fn build(b: *std.Build) void {
comptime if (builtin.zig_version.order(std.SemanticVersion.parse("0.15.0-dev.1018+1a998886c") catch unreachable) == .lt) {
comptime if (builtin.zig_version.order(std.SemanticVersion.parse(minimum_zig_version) catch unreachable) == .lt) {
@compileError(std.fmt.comptimePrint(
\\Your Zig version does not meet the minimum build requirement:
\\ required Zig version: {[minimum_zig_version]s}
Expand Down
2 changes: 1 addition & 1 deletion build.zig.zon
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
.{
.name = .lsp_kit,
.version = "0.1.0",
.minimum_zig_version = "0.15.0-dev.1023+f551c7c58",
.minimum_zig_version = "0.15.0-dev.1145+3ae0ba096",
.dependencies = .{},
.paths = .{
"build.zig",
Expand Down
2 changes: 1 addition & 1 deletion examples/hello_server.zig
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,7 @@ pub fn main() !void {
continue;
}

const formatte_source = try tree.render(gpa);
const formatte_source = try tree.renderAlloc(gpa);
defer gpa.free(formatte_source);

if (std.mem.eql(u8, source, formatte_source)) {
Expand Down
17 changes: 10 additions & 7 deletions src/main.zig
Original file line number Diff line number Diff line change
Expand Up @@ -30,18 +30,21 @@ pub fn main() !void {
var zig_tree: std.zig.Ast = try .parse(gpa, source, .zig);
defer zig_tree.deinit(gpa);

const output_source = if (zig_tree.errors.len != 0) blk: {
std.log.warn("generated file contains syntax errors! (cannot format file)", .{});
break :blk source;
} else try zig_tree.render(gpa);
defer if (zig_tree.errors.len == 0) gpa.free(output_source);

std.fs.cwd().makePath(std.fs.path.dirname(out_file_path) orelse ".") catch {};

var out_file = try std.fs.cwd().createFile(out_file_path, .{});
defer out_file.close();

try out_file.writeAll(output_source);
if (zig_tree.errors.len != 0) {
std.log.warn("generated file contains syntax errors! (cannot format file)", .{});
try out_file.writeAll(source);
} else {
var buf: [1024]u8 = undefined;
var out = out_file.writer(&buf);
const w = &out.interface;
try zig_tree.render(gpa, w, .{});
try w.flush();
}
}

const FormatDocs = struct {
Expand Down
Loading