From bf012ea24f5c8045f466c9d124b88e69290f43e0 Mon Sep 17 00:00:00 2001 From: h7x4 Date: Tue, 11 Nov 2025 19:22:28 +0900 Subject: [PATCH] rewrite-to-python: add test for hocon includes, fix generator bug --- flake.nix | 12 ++++++++++++ src/bluemap_exporter/exporter.py | 2 +- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/flake.nix b/flake.nix index 2f11191..6f51f75 100644 --- a/flake.nix +++ b/flake.nix @@ -39,6 +39,18 @@ overlays.default = final: prev: self.packages.${final.system}; + checks = forAllSystems (system: pkgs: { + hocon-include = let + format = pkgs.formats.hocon { }; + in format.generate "minecraft-kartverket-test-hocon-include" { + _includes = [ + (format.lib.mkInclude "${self.packages.${system}.bluemap-export}/overworld.hocon") + (format.lib.mkInclude "${self.packages.${system}.bluemap-export}/nether.hocon") + (format.lib.mkInclude "${self.packages.${system}.bluemap-export}/the-end.hocon") + ]; + }; + }); + packages = forAllSystems (system: pkgs: { default = self.packages.${system}.mckart; diff --git a/src/bluemap_exporter/exporter.py b/src/bluemap_exporter/exporter.py index f849b91..e4dca80 100644 --- a/src/bluemap_exporter/exporter.py +++ b/src/bluemap_exporter/exporter.py @@ -72,7 +72,7 @@ def to_hocon(x: Any) -> str: return f"[\n{'\n'.join(items)}\n]" elif isinstance(x, dict): items = [ - f' {k}: {indent(to_hocon(v), ' ').removeprefix(' ')}' + f' "{k}": {indent(to_hocon(v), ' ').removeprefix(' ')}' for k, v in x.items() ] return f"{{\n{'\n'.join(items)}\n}}"