annotate 0.8.x/setup.py @ 557:3c590f6f5dfa stable tip

Merged revisions 607 via svnmerge from http://svn.edgewall.org/repos/babel/trunk ........ r607 | pjenvey | 2011-04-24 21:41:23 -0700 (Sun, 24 Apr 2011) | 3 lines keywords only support space separated values, not comma separated thanks agronholm ........
author pjenvey
date Mon, 25 Apr 2011 04:44:13 +0000
parents 79565db4faf0
children
rev   line source
142
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
1 #!/usr/bin/env python
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
2 # -*- coding: utf-8 -*-
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
3 #
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
4 # Copyright (C) 2007 Edgewall Software
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
5 # All rights reserved.
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
6 #
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
7 # This software is licensed as described in the file COPYING, which
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
8 # you should have received as part of this distribution. The terms
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
9 # are also available at http://babel.edgewall.org/wiki/License.
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
10 #
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
11 # This software consists of voluntary contributions made by many
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
12 # individuals. For the exact contribution history, see the revision
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
13 # history and logs, available at http://babel.edgewall.org/log/.
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
14
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
15 from distutils.cmd import Command
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
16 import doctest
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
17 from glob import glob
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
18 import os
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
19 try:
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
20 from setuptools import setup
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
21 except ImportError:
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
22 from distutils.core import setup
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
23 import sys
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
24
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
25
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
26 class build_doc(Command):
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
27 description = 'Builds the documentation'
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
28 user_options = [
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
29 ('force', None,
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
30 "force regeneration even if no reStructuredText files have changed"),
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
31 ('without-apidocs', None,
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
32 "whether to skip the generation of API documentaton"),
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
33 ]
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
34 boolean_options = ['force', 'without-apidocs']
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
35
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
36 def initialize_options(self):
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
37 self.force = False
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
38 self.without_apidocs = False
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
39
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
40 def finalize_options(self):
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
41 pass
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
42
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
43 def run(self):
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
44 from docutils.core import publish_cmdline
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
45 from docutils.nodes import raw
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
46 from docutils.parsers import rst
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
47
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
48 docutils_conf = os.path.join('doc', 'conf', 'docutils.ini')
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
49 epydoc_conf = os.path.join('doc', 'conf', 'epydoc.ini')
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
50
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
51 try:
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
52 from pygments import highlight
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
53 from pygments.lexers import get_lexer_by_name
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
54 from pygments.formatters import HtmlFormatter
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
55
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
56 def code_block(name, arguments, options, content, lineno,
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
57 content_offset, block_text, state, state_machine):
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
58 lexer = get_lexer_by_name(arguments[0])
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
59 html = highlight('\n'.join(content), lexer, HtmlFormatter())
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
60 return [raw('', html, format='html')]
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
61 code_block.arguments = (1, 0, 0)
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
62 code_block.options = {'language' : rst.directives.unchanged}
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
63 code_block.content = 1
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
64 rst.directives.register_directive('code-block', code_block)
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
65 except ImportError:
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
66 print 'Pygments not installed, syntax highlighting disabled'
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
67
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
68 for source in glob('doc/*.txt'):
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
69 dest = os.path.splitext(source)[0] + '.html'
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
70 if self.force or not os.path.exists(dest) or \
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
71 os.path.getmtime(dest) < os.path.getmtime(source):
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
72 print 'building documentation file %s' % dest
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
73 publish_cmdline(writer_name='html',
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
74 argv=['--config=%s' % docutils_conf, source,
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
75 dest])
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
76
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
77 if not self.without_apidocs:
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
78 try:
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
79 from epydoc import cli
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
80 old_argv = sys.argv[1:]
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
81 sys.argv[1:] = [
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
82 '--config=%s' % epydoc_conf,
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
83 '--no-private', # epydoc bug, not read from config
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
84 '--simple-term',
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
85 '--verbose'
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
86 ]
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
87 cli.cli()
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
88 sys.argv[1:] = old_argv
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
89
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
90 except ImportError:
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
91 print 'epydoc not installed, skipping API documentation.'
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
92
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
93
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
94 class test_doc(Command):
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
95 description = 'Tests the code examples in the documentation'
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
96 user_options = []
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
97
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
98 def initialize_options(self):
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
99 pass
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
100
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
101 def finalize_options(self):
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
102 pass
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
103
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
104 def run(self):
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
105 for filename in glob('doc/*.txt'):
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
106 print 'testing documentation file %s' % filename
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
107 doctest.testfile(filename, False, optionflags=doctest.ELLIPSIS)
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
108
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
109
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
110 setup(
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
111 name = 'Babel',
197
79565db4faf0 Bump up version number on 0.8.x branch.
cmlenz
parents: 195
diff changeset
112 version = '0.8.2',
142
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
113 description = 'Internationalization utilities',
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
114 long_description = \
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
115 """A collection of tools for internationalizing Python applications.""",
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
116 author = 'Edgewall Software',
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
117 author_email = 'info@edgewall.org',
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
118 license = 'BSD',
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
119 url = 'http://babel.edgewall.org/',
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
120 download_url = 'http://babel.edgewall.org/wiki/Download',
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
121 zip_safe = False,
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
122
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
123 classifiers = [
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
124 'Development Status :: 4 - Beta',
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
125 'Environment :: Web Environment',
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
126 'Intended Audience :: Developers',
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
127 'License :: OSI Approved :: BSD License',
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
128 'Operating System :: OS Independent',
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
129 'Programming Language :: Python',
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
130 'Topic :: Software Development :: Libraries :: Python Modules',
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
131 ],
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
132 packages = ['babel', 'babel.messages'],
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
133 package_data = {'babel': ['localedata/*.dat']},
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
134 test_suite = 'babel.tests.suite',
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
135
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
136 entry_points = """
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
137 [console_scripts]
195
554d7e8462de Merged revisions [192] and [195] via svnmerge from [source:/trunk].
cmlenz
parents: 142
diff changeset
138 pybabel = babel.messages.frontend:main
142
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
139
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
140 [distutils.commands]
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
141 extract_messages = babel.messages.frontend:extract_messages
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
142 new_catalog = babel.messages.frontend:new_catalog
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
143
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
144 [distutils.setup_keywords]
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
145 message_extractors = babel.messages.frontend:check_message_extractors
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
146
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
147 [babel.extractors]
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
148 ignore = babel.messages.extract:extract_nothing
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
149 python = babel.messages.extract:extract_python
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
150 """,
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
151
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
152 cmdclass = {'build_doc': build_doc, 'test_doc': test_doc}
4a7af44e6695 Create branch for 0.8.x releases.
cmlenz
parents:
diff changeset
153 )
Copyright (C) 2012-2017 Edgewall Software