[Bug 1901770] Re: n_sign_posn from localeconv wrong for en_US locale

Gunnar Hjalmarsson 1901770 at bugs.launchpad.net
Tue Oct 27 23:15:14 UTC 2020


Thanks for your report!

Ubuntu uses the locale definitions provided by glibc, and this kind of
request should be made via an upstream bug report:

https://sourceware.org/bugzilla/enter_bug.cgi?product=glibc;component=localedata

If you file such a bug, please include a convincing justification of the
proposed change. Just claiming that the current value is "wrong" won't
make the upstream maintainers too happy. ;)

** Package changed: langpack-locales (Ubuntu) => glibc (Ubuntu)

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to glibc in Ubuntu.
https://bugs.launchpad.net/bugs/1901770

Title:
  n_sign_posn from localeconv wrong for en_US locale

Status in glibc package in Ubuntu:
  New

Bug description:
  NAME="Ubuntu"
  VERSION="18.04.4 LTS (Bionic Beaver)"

  The `n_sign_posn` from `localeconv()` is wrong for the en_US locale.
  This means that Accounting formats will put a negative sign before the
  value instead of wrapping the value in parens.  Code:

      python
      Python 3.6.9 (default, Jul 17 2020, 12:50:27)
      [GCC 8.4.0] on linux
      Type "help", "copyright", "credits" or "license" for more information.
      >>> import locale
      >>> locale.setlocale(locale.LC_ALL, 'en_US')
      'en_US'
      >>> locale.localeconv()
      {'int_curr_symbol': 'USD ', 'currency_symbol': '$', 'mon_decimal_point': '.', 'mon_thousands_sep': ',', 'mon_grouping': [3, 3, 0], 'positive_sign': '', 'negative_sign': '-', 'int_frac_digits': 2, 'frac_digits': 2, 'p_cs_precedes': 1, 'p_sep_by_space': 0, 'n_cs_precedes': 1, 'n_sep_by_space': 0, 'p_sign_posn': 1, 'n_sign_posn': 1, 'decimal_point': '.', 'thousands_sep': ',', 'grouping': [3, 3, 0]}
      
      
  Here is the Windows version:
      
      {'int_curr_symbol': 'USD', 'currency_symbol': '$', 'mon_decimal_point': '.', 'mon_thousands_sep': ',', 'mon_grouping': [3, 0], 'positive_sign': '', 'negative_sign': '-', 'int_frac_digits': 2, 'frac_digits': 2, 'p_cs_precedes': 1, 'p_sep_by_space': 0, 'n_cs_precedes': 1, 'n_sep_by_space': 0, 'p_sign_posn': 3, 'n_sign_posn': 0, 'decimal_point': '.', 'thousands_sep': ',', 'grouping': [3, 0]}

  The correct value (0) means that negative numbers get wrapped in ( ).
  The ubuntu value of 1 means that a minus sign precedes the value.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/glibc/+bug/1901770/+subscriptions



More information about the foundations-bugs mailing list