Disclaimer: I use PostgreSQL and PostgreSQL alone for all my databasing. This is not some kind of "hate".
This is something which has bothered me for many years, but at this point, in the year 2020, it's just ridiculous.
The application_name can be any string of less than NAMEDATALEN characters (64 characters in a standard build). It is typically set by an application upon connection to the server. The name will be displayed in the pg_stat_activity view and included in CSV log entries. It can also be included in regular log entries via the log_line_prefix parameter. Only printable ASCII characters may be used in the application_name value. Other characters will be replaced with question marks (?).
So, the self-proclaimed "World's Most Advanced Open Source Relational Database" doesn't support Unicode/UTF-8 for this specific thing, but everywhere else. It forces me (and my potential boss, if I had one) to see a bunch of "???????????" all over the control panels, such as in pgAdmin 4.
I've heard that this is supposedly motivated by "security concerns". Something about the application_name being set at a stage before they have set up the "Unicode engine" or something along those lines. I don't understand that. If that really is the case, sure, force ASCII-only for the application_name when it's set during the initial connect, but do allow Unicode/UTF-8 when setting application_name later, after the connection has already been established, in a normal query using the "SET" keyword!
I don't get it. Why am I forced to see these ugly question marks everywhere just because my language happens to contain more than A-Za-z? Even English-centric databases might have a script related to other languages or a service with a fancy name, so even if the PG project is US-centric, that still doesn't excuse this.