Mercurial > babel > old > mirror
changeset 509:cd2dec0823c9 stable
Python 2.3 compatibility: backporting r456 and r457 to 0.9 branch (see #233)
author | fschwarz |
---|---|
date | Fri, 04 Mar 2011 13:14:03 +0000 |
parents | 56ea1ec02e16 |
children | 4c473bedd528 |
files | 0.9.x/ChangeLog 0.9.x/babel/messages/catalog.py 0.9.x/babel/messages/checkers.py 0.9.x/babel/messages/frontend.py 0.9.x/babel/messages/jslexer.py 0.9.x/babel/messages/plurals.py 0.9.x/babel/messages/pofile.py 0.9.x/babel/util.py |
diffstat | 8 files changed, 14 insertions(+), 17 deletions(-) [+] |
line wrap: on
line diff
--- a/0.9.x/ChangeLog +++ b/0.9.x/ChangeLog @@ -5,6 +5,7 @@ * Backport r493-494: documentation typo fixes. * Make the CLDR import script work with Python 2.7. * Fix various typos. + * Fixed Python 2.3 compatibility (ticket #146). * Sort output of list-locales. * Make the POT-Creation-Date of the catalog being updated equal to POT-Creation-Date of the template used to update (ticket #148).
--- a/0.9.x/babel/messages/catalog.py +++ b/0.9.x/babel/messages/catalog.py @@ -19,17 +19,13 @@ from email import message_from_string from copy import copy import re -try: - set -except NameError: - from sets import Set as set import time from babel import __version__ as VERSION from babel.core import Locale from babel.dates import format_datetime from babel.messages.plurals import get_plural -from babel.util import odict, distinct, LOCALTZ, UTC, FixedOffsetTimezone +from babel.util import odict, distinct, set, LOCALTZ, UTC, FixedOffsetTimezone __all__ = ['Message', 'Catalog', 'TranslationError'] __docformat__ = 'restructuredtext en'
--- a/0.9.x/babel/messages/checkers.py +++ b/0.9.x/babel/messages/checkers.py @@ -18,6 +18,7 @@ from itertools import izip from babel.messages.catalog import TranslationError, PYTHON_FORMAT +from babel.util import set #: list of format chars that are compatible to each other _string_format_compatibilities = [
--- a/0.9.x/babel/messages/frontend.py +++ b/0.9.x/babel/messages/frontend.py @@ -1176,8 +1176,9 @@ def parse_keywords(strings=[]): """Parse keywords specifications from the given list of strings. - >>> kw = parse_keywords(['_', 'dgettext:2', 'dngettext:2,3']) - >>> for keyword, indices in sorted(kw.items()): + >>> kw = parse_keywords(['_', 'dgettext:2', 'dngettext:2,3']).items() + >>> kw.sort() + >>> for keyword, indices in kw: ... print (keyword, indices) ('_', None) ('dgettext', (2,))
--- a/0.9.x/babel/messages/jslexer.py +++ b/0.9.x/babel/messages/jslexer.py @@ -16,7 +16,8 @@ """ import re -from operator import itemgetter + +from babel.util import itemgetter operators = [
--- a/0.9.x/babel/messages/plurals.py +++ b/0.9.x/babel/messages/plurals.py @@ -13,9 +13,8 @@ """Plural form definitions.""" - -from operator import itemgetter from babel.core import default_locale, Locale +from babel.util import itemgetter LC_CTYPE = default_locale('LC_CTYPE')
--- a/0.9.x/babel/messages/pofile.py +++ b/0.9.x/babel/messages/pofile.py @@ -21,14 +21,10 @@ from datetime import date, datetime import os import re -try: - set -except NameError: - from sets import Set as set from babel import __version__ as VERSION from babel.messages.catalog import Catalog, Message -from babel.util import wraptext, LOCALTZ +from babel.util import set, wraptext, LOCALTZ __all__ = ['read_po', 'write_po'] __docformat__ = 'restructuredtext en' @@ -195,7 +191,9 @@ translations[-1][1] += u'\n' + line.rstrip() for lineno, line in enumerate(fileobj.readlines()): - line = line.strip().decode(catalog.charset) + line = line.strip() + if not isinstance(line, unicode): + line = line.decode(catalog.charset) if line.startswith('#'): in_msgid[0] = in_msgstr[0] = False if messages and translations: