Skip to content

pkgs.formats.toml changed semantics in 23.05 #237521

@srhb

Description

@srhb

Describe the bug

pkgs.formats.toml changed behaviour between nixos 22.11 and NixOS 23.05, apparently producing semantically different outputs (which broke our telegraf module)

~/nixpkgs nixos-22.11
❯ git rev-parse HEAD
eef86b8a942913a828b9ef13722835f359deef29

~/nixpkgs nixos-22.11
❯ cat $(nix-build --expr '(((import ./. {}).formats.toml {}).generate "test" { processors = { override = [ { tags = { cluster = "staging"; }; } ]; rename = [ { replace = [ { dest = "ceph_telegraf_check"; measurement = "exec"; } ]; }]; }; })')
[processors]
[[processors.override]]
[processors.override.tags]
cluster = "staging"

[[processors.rename]]
[[processors.rename.replace]]
dest = "ceph_telegraf_check"
measurement = "exec"

~/nixpkgs nixos-22.11
❯ git checkout nixos-23.05

~/nixpkgs nixos-23.05
❯ git rev-parse HEAD
d3bb401dcfc5a46ce51cdfb5762e70cc75d082d2

~/nixpkgs nixos-23.05
❯ cat $(nix-build --expr '(((import ./. {}).formats.toml {}).generate "test" { processors = { override = [ { tags = { cluster = "staging"; }; } ]; rename = [ { replace = [ { dest = "ceph_telegraf_check"; measurement = "exec"; } ]; }]; }; })')

[processors]
[processors.override.tags]
cluster = "staging"
[[processors.rename.replace]]
dest = "ceph_telegraf_check"
measurement = "exec"

Bisect implies this is the commit that broke(?) remarshal: 620c7ea

Was this intentional?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions