Can fedora's testing infrastructure detect errors due to not using `C` or `en_US. UTF-8` locale?

I recently encountered a bug due to the user having a different locale.

There are a lot of APIs that would change behaviour or output with a different locale, and I think programmers who only use English generally don’t know some subtle footgnus .

When tickling the bug, I notice that the test code can actually catch the bug if the locale is something else.

Then I come to the idea of randomizing LC_ALL in the testing infrastructure of Linux distros.

Of course, this can be done in each individual software’s testing code, but that requires too many changes.

Sidenote: I don’t know where fedora would run the program’s tests.

1 Like

It depends on what you mean by “testing”. As downstream, we don’t add our own tests to packages—if upstream has tests as part of their released code, we run these during the build process.

So, if you’ve run into a bug about a particular software not working as expected in different locales, this should be reported to upstream in the first place. They should then add tests to check for this in the future, and when they make a release, all of this will end up in the Fedora package.

On a distribution level, we have test days, but these only check a very small subset of the total Fedora package set—primarily the main release artefacts.

https://fedoraproject.org/wiki/QA/Test_Days

So, the QA team decides what tests are necessary, and they carry these out.