tree e433ae2b3f75ab2318a793cc01eab3d5903ef145
parent 486a5a26b2c4d2078ef7d585d06c6e8bb678892b
author Justin Lebar <justin.lebar@gmail.com> 1699479422 -0800
committer GitHub <noreply@github.com> 1699479422 -0800
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsBcBAABCAAQBQJlS/9+CRBK7hj4Ov3rIwAA9UQIAAyWLGruRkz9maCOvUN5hcaB
 0dyh7r7oitbqjKIwWePKKkgGrGUGvICqbyaymcpCvdcIXD/6xLf1EOMP7/AfH/J1
 vAjc/+gAld3Gb+w8HSB0M5UFOtpb0kanKP4prlQOh/nz19sq666mVi0aMA62dmbK
 mO5shDN+meBc/LvibAujb91kFhfs8XQVeh7wcBB/h74lPS2PSf3GsaHb2QtnT5nf
 m410Vr08K+3OlbQLFHJ+z0GED/THvXn19047mZ3tZqoVZ7qsjETHOPkSJlKkHP8r
 aA+vjzDkSlutzGomrqXn+0DZTa0sFnRgNvxW375Wmb/hTv7qWb/sdbwXDfOPXZo=
 =R+hg
 -----END PGP SIGNATURE-----
 

Add new DISABLE_SPLIT_LIST_WITH_COMMENT flag. (#1177)

`DISABLE_SPLIT_LIST_WITH_COMMENT` is a new knob that changes the
behavior of splitting a list when a comment is present inside the list.

Before, we split a list containing a comment just like we split a list
containing a trailing comma: Each element goes on its own line (unless
`DISABLE_ENDING_COMMA_HEURISTIC` is true).

Now, if `DISABLE_SPLIT_LIST_WITH_COMMENT` is true, we do not split every
element of the list onto a new line just because there's a comment somewhere
in the list.

This mirrors the behavior of clang-format, and is useful for e.g. forming
"logical groups" of elements in a list.

Note: Upgrading will result in a behavioral change if you have
`DISABLE_ENDING_COMMA_HEURISTIC` in your config.  Before this version, this
flag caused us not to split lists with a trailing comma *and* lists that
contain comments.  Now, if you set only that flag, we *will* split lists
that contain comments.  Set the new `DISABLE_SPLIT_LIST_WITH_COMMENT` flag to
true to preserve the old behavior.
