diff --git a/ouroboros-network/changelog.d/20251119_074504_isovector_fix_diffusion_mode.md b/ouroboros-network/changelog.d/20251119_074504_isovector_fix_diffusion_mode.md new file mode 100644 index 0000000000..67e3dd277b --- /dev/null +++ b/ouroboros-network/changelog.d/20251119_074504_isovector_fix_diffusion_mode.md @@ -0,0 +1,19 @@ + + + +### Breaking + +- Changed ToJSON for DiffusionMode to agree with the topology file syntax. ReadJSON was already correct. + + + diff --git a/ouroboros-network/orphan-instances/Ouroboros/Network/OrphanInstances.hs b/ouroboros-network/orphan-instances/Ouroboros/Network/OrphanInstances.hs index 275fad7d22..8eb49ea336 100644 --- a/ouroboros-network/orphan-instances/Ouroboros/Network/OrphanInstances.hs +++ b/ouroboros-network/orphan-instances/Ouroboros/Network/OrphanInstances.hs @@ -117,7 +117,8 @@ instance FromJSON DiffusionMode where _ -> fail "Parsing NodeDiffusionMode failed: can be either 'InitiatorOnly' or 'InitiatorAndResponder'" instance ToJSON DiffusionMode where - toJSON = String . pack . show + toJSON InitiatorOnlyDiffusionMode = "InitiatorOnly" + toJSON InitiatorAndResponderDiffusionMode = "InitiatorAndResponder" -- | Does not use the 'FromJSON' instance of 'RootConfig', so that -- 'accessPoints', 'advertise', 'valency' and 'warmValency' fields are attached