[Openstack] I18n issue for OpenStack

Joshua Harlow harlowja at yahoo-inc.com
Thu Apr 12 17:33:02 UTC 2012


So u have just touched on another issue,

I would still say that exception messages should not be translated (+1), haha.

If this is needed, then there is something wrong with the code and how exceptions are used instead (ie the bad code smell). Exceptions should be meant for error control flow, what they were designed for, not for user facing messages. I think it is more common to have a layer that translates exceptions into meaningful localized messages, but there needs to be a separation between exceptions and there localized messages (they should not be combined). This is a common thing afaik, its called separation of model and view, aka, mvc, (think of the exceptions as a model/controller(?), if the messages – the view are intertwined that seems broke).

This is common with a lot of other parts of openstack as well, ec2 formatting/response creation should be separated from nova logic (ec2 should be a view, which it mostly is right now) and so on...

On 4/12/12 4:27 AM, "Hua ZZ Zhang" <zhuadl at cn.ibm.com> wrote:

My cents:

Apache HTTP is not so equivelant to OpenStack here. Generally it doesn't care about the application errors or exceptions thrown by web applications. In openstack, exceptions have been defined in nova, horizon, keystone etc. The messages of these exceptions are important for different users to understand what has happened. These messages always need to be localized, returned and displayed on user interface, not just be logged in backend system. It is very common practice for a global software project.

Sean Dague wrote:
> If we want to think about OpenStack as a basic building block like
> Apache, i18n is critical. Otherwise there are regions that won't adopt
> it solely because of a lack of i18n.

Note that Apache HTTPd, for instance, does not seem to internationalize
its error messages. Only the (enduser-facing) HTML pages it gives back
in response to invalid requests are.



Best Regards,

________________________________
Edward Zhang(张华)
Staff Software Engineer
Travel&Transportation Standards
Emerging Technology Institute(ETI)
IBM China Software Development Lab
e-mail: zhuadl at cn.ibm.com
Notes ID: Hua ZZ Zhang/China/IBM
Tel: 86-10-82450483地址:北京市海淀区东北旺西路8号 中关村软件园28号楼 环宇大厦3层 邮编:100193
Address: 3F Ring, Building 28 Zhongguancun Software Park, 8 Dongbeiwang West Road, Haidian District, Beijing, P.R.C.100193
[cid:3417071582_3128387][cid:3417071582_3146577]

[cid:3417071582_3132379]
[cid:3417071582_3124536]Thierry Carrez ---2012-04-12 16:51:59---Sean Dague wrote:


Thierry Carrez <thierry at openstack.org>
Sent by: openstack-bounces+zhuadl=cn.ibm.com at lists.launchpad.net 2012-04-12 16:47

[cid:3417071582_3170778]

To

[cid:3417071582_3169928]
openstack at lists.launchpad.net
[cid:3417071582_3171998]

cc

[cid:3417071582_3154088]
[cid:3417071582_3146520]

Subject

[cid:3417071582_3157167]
Re: [Openstack] I18n issue for OpenStack
[cid:3417071582_3126377][cid:3417071582_3170799]
Sean Dague wrote:
> If we want to think about OpenStack as a basic building block like
> Apache, i18n is critical. Otherwise there are regions that won't adopt
> it solely because of a lack of i18n.

Note that Apache HTTPd, for instance, does not seem to internationalize
its error messages. Only the (enduser-facing) HTML pages it gives back
in response to invalid requests are.

> Is there a metric on the completeness so far? Something automated that
> could be a jenkins coverage kind of test?

Oddly enough, it's not a question of completeness of translations.
Piggybacking on the awesome Launchpad Translations community always gave
us great coverage. It's more a code support and CI integration issue.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack/attachments/20120412/0e1d2456/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image.gif
Type: image/gif
Size: 1279 bytes
Desc: image.gif
URL: <http://lists.openstack.org/pipermail/openstack/attachments/20120412/0e1d2456/attachment.gif>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image.gif
Type: image/gif
Size: 45 bytes
Desc: image.gif
URL: <http://lists.openstack.org/pipermail/openstack/attachments/20120412/0e1d2456/attachment-0001.gif>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image.gif
Type: image/gif
Size: 45 bytes
Desc: image.gif
URL: <http://lists.openstack.org/pipermail/openstack/attachments/20120412/0e1d2456/attachment-0002.gif>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image.gif
Type: image/gif
Size: 105 bytes
Desc: image.gif
URL: <http://lists.openstack.org/pipermail/openstack/attachments/20120412/0e1d2456/attachment-0003.gif>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image.gif
Type: image/gif
Size: 45 bytes
Desc: image.gif
URL: <http://lists.openstack.org/pipermail/openstack/attachments/20120412/0e1d2456/attachment-0004.gif>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image.gif
Type: image/gif
Size: 45 bytes
Desc: image.gif
URL: <http://lists.openstack.org/pipermail/openstack/attachments/20120412/0e1d2456/attachment-0005.gif>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image.gif
Type: image/gif
Size: 45 bytes
Desc: image.gif
URL: <http://lists.openstack.org/pipermail/openstack/attachments/20120412/0e1d2456/attachment-0006.gif>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image.gif
Type: image/gif
Size: 45 bytes
Desc: image.gif
URL: <http://lists.openstack.org/pipermail/openstack/attachments/20120412/0e1d2456/attachment-0007.gif>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image.gif
Type: image/gif
Size: 45 bytes
Desc: image.gif
URL: <http://lists.openstack.org/pipermail/openstack/attachments/20120412/0e1d2456/attachment-0008.gif>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image.gif
Type: image/gif
Size: 45 bytes
Desc: image.gif
URL: <http://lists.openstack.org/pipermail/openstack/attachments/20120412/0e1d2456/attachment-0009.gif>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image.gif
Type: image/gif
Size: 45 bytes
Desc: image.gif
URL: <http://lists.openstack.org/pipermail/openstack/attachments/20120412/0e1d2456/attachment-0010.gif>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image.gif
Type: image/gif
Size: 45 bytes
Desc: image.gif
URL: <http://lists.openstack.org/pipermail/openstack/attachments/20120412/0e1d2456/attachment-0011.gif>


More information about the Openstack mailing list