Subject: bug#33123: non-backwards compatible change to ls

From: Matt Martini <[email-masked]>
Date: Mon, 22 Oct 2018 23:42:54 -0400

There was a change in the behavior of ls that is unconditional (no
way to revert to the old behavior) and incompatible with the
previous behavior.

The change is listed in the Changelog for 8.30:

2018-06-20  Kaxandra Labat  <[email-masked]>
 ls: ignore case when coloring file extensions
   * src/ls.c (get_color_indicator): s/STREQ_LEN/c_strncasecmp/
   * src/dircolors.hin: Remove a now redundant entry.
   * tests/ls/color-ext.sh: Add a new test.
   * tests/local.mk: Reference the new test.
   * NEWS: Mention the change in behavior.

This breaks the use case where different colors are assigned to suffixes
whose case is different. The old behavior allowed for making visually
distinct different cased suffixes.

For example:

    image.jpg    could be rendered in green
    image.JPG    could be rendered in green with a yellow background 

This would allow for easy identification of non-uniform cases,
especially in directories with large numbers of files.

What I am requesting is a way to get the old behavior back. 

One suggestion would be adding a setting to the —color option, whereby

    --color=auto				would turn on colorization case-insensitive (as the new behavior works)
    --color=auto-case		would turn on colorization case-sensitive (as the old behavior worked)

Thank you.

Matt