Bug 852374 - Localization in CLI do not work
Localization in CLI do not work
Status: CLOSED CURRENTRELEASE
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: subscription-manager (Show other bugs)
7.0
Unspecified Unspecified
unspecified Severity unspecified
: beta
: 7.0
Assigned To: candlepin-bugs
Entitlement Bugs
: i18n
Depends On:
Blocks: rhsm-rhel70
  Show dependency treegraph
 
Reported: 2012-08-28 05:50 EDT by Miroslav Suchý
Modified: 2014-06-17 20:22 EDT (History)
6 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2014-06-13 09:13:26 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Miroslav Suchý 2012-08-28 05:50:50 EDT
Description of problem:
LANG=fr subscription-manager --help
Traceback (most recent call last):
  File "/usr/sbin/subscription-manager", line 54, in <module>
    from subscription_manager import managercli
  File "/usr/share/rhsm/subscription_manager/managercli.py", line 33, in <module>
    from subscription_manager import constants
  File "/usr/share/rhsm/subscription_manager/constants.py", line 38, in <module>
    _("Expires:              \t%-25s") + \
  File "/usr/share/rhsm/subscription_manager/constants.py", line 22, in <lambda>
    _ = lambda x: gettext.ldgettext("rhsm", x)
  File "/usr/lib64/python2.6/gettext.py", line 543, in ldgettext
    return t.lgettext(message)
  File "/usr/lib64/python2.6/gettext.py", line 368, in lgettext
    return tmsg.encode(locale.getpreferredencoding())
UnicodeEncodeError: 'ascii' codec can't encode character u'\xa0' in position 14: ordinal not in range(128)

Version-Release number of selected component (if applicable):
RHEL6.3 - subscription-manager-0.99.19.4-1.el6_3.x86_64

How reproducible:
always

Steps to Reproduce:
1. LANG=fr subscription-manager --help
  
Actual results:
Traceback

Expected results:
help page in selected language

Additional info:
This is because gettext returns string as type 'str' and not type 'unicode'.
You need to use ugettext.
You can steal fix from Katello:
https://github.com/Katello/katello/pull/529
Comment 2 RHEL Product and Program Management 2012-12-14 03:47:09 EST
This request was not resolved in time for the current release.
Red Hat invites you to ask your support representative to
propose this request, if still desired, for consideration in
the next release of Red Hat Enterprise Linux.
Comment 3 Carter Kozak 2013-03-22 15:11:14 EDT
Appears to work fine built from git repo.  Please test on 1.8.5 or later.
Comment 4 John Sefler 2013-04-11 19:07:27 EDT
Verifying Version....
[root@jsefler-7 ~]# rpm -q subscription-manager python
subscription-manager-1.8.5-1.el7.x86_64
python-2.7.3-13.el7.x86_64
[root@jsefler-7 ~]# LANG=fr subscription-manager --help
Utilisation : subscription-manager MODULE-NAME [MODULE-OPTIONS] [--help]

Modules primaires :

  attach         Attacher un abonnement spécifié au système enregistré
  list           Répertorier les informations des produits et abonnements de ce système
  refresh        Extraire les données d'abonnement les plus récentes depuis le serveur
  register       Enregistrez ce système sur le Portail Client ou sur un autre service de gestion des abonnements
  release        Configurer la version du système d'exploitation à utiliser
  remove         Supprimer tous les abonnements ou des abonnements spécifiques de ce système
  unregister     Désenregistrez ce système du Portail Client ou d'un autre service de gestion des abonnements

Autres modules :

  clean          Supprimer toutes les données du système local et des abonnements sans affecter le serveur
  config         Répertorier, définir, ou supprimer les paramètres de configuration utilisés par ce système
  environments   Afficher les environnements disponibles pour un utilisateur
  facts          Afficher ou mettre à jour les informations du système détecté
  identity       Afficher le certificat d'identité de ce système ou en demander un nouveau
  import         Importe des certificats fournis en-dehors de l'outil
  orgs           Afficher les organisations avec lesquelles un utilisateur peut enregistrer un système
  plugins        Afficher et configurer les plugins de subscription-manager
  redeem         Tentative d'utilisation d'un abonnement pour un système préconfiguré
  repos          Répertorier les référentiels que ce système a le droit d'utiliser
  service-level  Gérer les niveaux de service pour ce système
  subscribe      Déprécié, voir attach (attacher)
  unsubscribe    Déprécié, voir remove (suppression)
  version        Imprimer les informations de version




Verifying Version....
[root@rhsm-compat-rhel63 ~]# rpm -q subscription-manager python
subscription-manager-1.8.5-1.git.26.9540c7f.el6.x86_64
python-2.6.6-29.el6_2.2.x86_64
[root@rhsm-compat-rhel63 ~]# LANG=fr subscription-manager --help
Utilisation : subscription-manager MODULE-NAME [MODULE-OPTIONS] [--help]

Modules primaires :

  attach         Attacher un abonnement spécifié au système enregistré
  list           Répertorier les informations des produits et abonnements de ce système
  refresh        Extraire les données d'abonnement les plus récentes depuis le serveur
  register       Enregistrez ce système sur le Portail Client ou sur un autre service de gestion des abonnements
  release        Configurer la version du système d'exploitation à utiliser
  remove         Supprimer tous les abonnements ou des abonnements spécifiques de ce système
  unregister     Désenregistrez ce système du Portail Client ou d'un autre service de gestion des abonnements

Autres modules :

  clean          Supprimer toutes les données du système local et des abonnements sans affecter le serveur
  config         Répertorier, définir, ou supprimer les paramètres de configuration utilisés par ce système
  environments   Afficher les environnements disponibles pour un utilisateur
  facts          Afficher ou mettre à jour les informations du système détecté
  identity       Afficher le certificat d'identité de ce système ou en demander un nouveau
  import         Importe des certificats fournis en-dehors de l'outil
  orgs           Afficher les organisations avec lesquelles un utilisateur peut enregistrer un système
  plugins        Afficher et configurer les plugins de subscription-manager
  redeem         Tentative d'utilisation d'un abonnement pour un système préconfiguré
  repos          Répertorier les référentiels que ce système a le droit d'utiliser
  service-level  Gérer les niveaux de service pour ce système
  subscribe      Déprécié, voir attach (attacher)
  unsubscribe    Déprécié, voir remove (suppression)
  version        Imprimer les informations de version




Verifying Version....
[root@jsefler-5 ~]# rpm -q subscription-manager python
subscription-manager-1.8.5-1.el5
python-2.4.3-56.el5
[root@jsefler-5 ~]# LANG=fr subscription-manager --help
Utilisation : subscription-manager MODULE-NAME [MODULE-OPTIONS] [--help]

Modules primaires :

  attach         Attacher un abonnement spécifié au système enregistré
  list           Répertorier les informations des produits et abonnements de ce système
  refresh        Extraire les données d'abonnement les plus récentes depuis le serveur
  register       Enregistrez ce système sur le Portail Client ou sur un autre service de gestion des abonnements
  release        Configurer la version du système d'exploitation à utiliser
  remove         Supprimer tous les abonnements ou des abonnements spécifiques de ce système
  unregister     Désenregistrez ce système du Portail Client ou d'un autre service de gestion des abonnements

Autres modules :

  clean          Supprimer toutes les données du système local et des abonnements sans affecter le serveur
  config         Répertorier, définir, ou supprimer les paramètres de configuration utilisés par ce système
  environments   Afficher les environnements disponibles pour un utilisateur
  facts          Afficher ou mettre à jour les informations du système détecté
  identity       Afficher le certificat d'identité de ce système ou en demander un nouveau
  import         Importe des certificats fournis en-dehors de l'outil
  orgs           Afficher les organisations avec lesquelles un utilisateur peut enregistrer un système
  plugins        Afficher et configurer les plugins de subscription-manager
  redeem         Tentative d'utilisation d'un abonnement pour un système préconfiguré
  repos          Répertorier les référentiels que ce système a le droit d'utiliser
  service-level  Gérer les niveaux de service pour ce système
  subscribe      Déprécié, voir attach (attacher)
  unsubscribe    Déprécié, voir remove (suppression)
  version        Imprimer les informations de version
Comment 5 Ludek Smid 2014-06-13 09:13:26 EDT
This request was resolved in Red Hat Enterprise Linux 7.0.

Contact your manager or support representative in case you have further questions about the request.

Note You need to log in before you can comment on or make changes to this bug.