Code

Fix traceback on .../msgN/ url, this requests the file content and for
[roundup.git] / setup.py
index 27d533de624900485dc3d4ae739048c4f2d44965..c2589f11850d66d29dbda17943aec83c9f6bfe36 100644 (file)
--- a/setup.py
+++ b/setup.py
@@ -40,7 +40,7 @@ def include(d, e):
     'd' -- A directory
 
     'e' -- A glob pattern"""
-    
+
     return (d, [f for f in glob('%s/%s'%(d, e)) if os.path.isfile(f)])
 
 def scriptname(path):
@@ -52,12 +52,10 @@ def scriptname(path):
     return script
 
 def main():
-    # build list of scripts from their implementation modules
-    roundup_scripts = map(scriptname, glob('roundup/scripts/[!_]*.py'))
-
     # template munching
-    packagelist = [
+    packages = [
         'roundup',
+        'roundup.anypy',
         'roundup.cgi',
         'roundup.cgi.PageTemplates',
         'roundup.cgi.TAL',
@@ -65,55 +63,107 @@ def main():
         'roundup.backends',
         'roundup.scripts',
     ]
-    installdatafiles = [
-        ('share/roundup/cgi-bin', ['frontends/roundup.cgi']),
-    ]
     py_modules = ['roundup.demo',]
 
+    # build list of scripts from their implementation modules
+    scripts = [scriptname(f) for f in glob('roundup/scripts/[!_]*.py')]
+
+    data_files = [
+        ('share/roundup/cgi-bin', ['frontends/roundup.cgi']),
+    ]
     # install man pages on POSIX platforms
     if os.name == 'posix':
-        installdatafiles.append(('man/man1', ['doc/roundup-admin.1',
-            'doc/roundup-mailgw.1', 'doc/roundup-server.1',
-            'doc/roundup-demo.1']))
+        data_files.append(include('share/man/man1', '*'))
 
     # add the templates to the data files lists
     from roundup.init import listTemplates
-    templates = [t['path'] for t in listTemplates('templates').values()]
+    templates = [t['path']
+                 for t in listTemplates('share/roundup/templates').values()]
     for tdir in templates:
-        # scan for data files
         for idir in '. detectors extensions html'.split():
-            idir = os.path.join(tdir, idir)
-            if not os.path.isdir(idir):
-                continue
-            tfiles = []
-            for f in os.listdir(idir):
-                if f.startswith('.'):
-                    continue
-                ifile = os.path.join(idir, f)
-                if os.path.isfile(ifile):
-                    tfiles.append(ifile)
-            installdatafiles.append(
-                (os.path.join('share', 'roundup', idir), tfiles)
-            )
+            data_files.append(include(os.path.join(tdir, idir), '*'))
 
     # add message files
     for (_dist_file, _mo_file) in list_message_files():
-        installdatafiles.append((os.path.dirname(_mo_file),
-            [os.path.join("build", _mo_file)]))
+        data_files.append((os.path.dirname(_mo_file),
+                           [os.path.join("build", _mo_file)]))
 
     # add docs
-    installdatafiles.append(include(os.path.join('share', 'doc', 'roundup', 'html'), '*'))
+    data_files.append(include('share/doc/roundup/html', '*'))
 
     # perform the setup action
     from roundup import __version__
-    
+
     setup(name='roundup',
           version=__version__,
           author="Richard Jones",
           author_email="richard@users.sourceforge.net",
-          description='Issue-tracking System.',
-          long_description="""Roundup is a simple-to-use and -install issue-tracking system
-with command-line, web and e-mail interfaces. Highly customisable.""",
+          description="A simple-to-use and -install issue-tracking system"
+            " with command-line, web and e-mail interfaces. Highly"
+            " customisable.",
+          long_description='''This version of Roundup fixes some bugs:
+
+- Minor update of doc/developers.txt to point to the new resources
+  on www.roundup-tracker.org (Bernhard Reiter)
+- Small CSS improvements regaring the search box (thanks Thomas Arendsan Hein)
+  (issue 2550589)
+- Indexers behaviour made more consistent regarding length of indexed words
+  and stopwords (thanks Thomas Arendsen Hein, Bernhard Reiter)(issue 2550584)
+- fixed typos in the installation instructions (thanks Thomas Arendsen Hein)
+  (issue 2550573) 
+- New config option csv_field_size: Pythons csv module (which is used
+  for export/import) has a new field size limit starting with python2.5.
+  We now issue a warning during export if the limit is too small and use
+  the csv_field_size configuration during import to set the limit for
+  the csv module.
+- Small fix for CGI-handling of XMLRPC requests for python2.4, this
+  worked only for 2.5 and beyond due to a change in the xmlrpc interface
+  in python
+- Document filter method of xmlrpc interface
+- Fix interaction of SSL and XMLRPC, now XMLRPC works with SSL
+
+If you're upgrading from an older version of Roundup you *must* follow
+the "Software Upgrade" guidelines given in the maintenance documentation.
+
+Roundup requires python 2.3 or later (but not 3+) for correct operation.
+
+To give Roundup a try, just download (see below), unpack and run::
+
+    roundup-demo
+
+Documentation is available at the website:
+     http://roundup.sourceforge.net/
+Mailing lists - the place to ask questions:
+     http://sourceforge.net/mail/?group_id=31577
+
+About Roundup
+=============
+
+Roundup is a simple-to-use and -install issue-tracking system with
+command-line, web and e-mail interfaces. It is based on the winning design
+from Ka-Ping Yee in the Software Carpentry "Track" design competition.
+
+Note: Ping is not responsible for this project. The contact for this
+project is richard@users.sourceforge.net.
+
+Roundup manages a number of issues (with flexible properties such as
+"description", "priority", and so on) and provides the ability to:
+
+(a) submit new issues,
+(b) find and edit existing issues, and
+(c) discuss issues with other participants.
+
+The system will facilitate communication among the participants by managing
+discussions and notifying interested parties when issues are edited. One of
+the major design goals for Roundup that it be simple to get going. Roundup
+is therefore usable "out of the box" with any python 2.3+ (but not 3+)
+installation. It doesn't even need to be "installed" to be operational,
+though an install script is provided.
+
+It comes with two issue tracker templates (a classic bug/feature tracker and
+a minimal skeleton) and five database back-ends (anydbm, sqlite, metakit,
+mysql and postgresql).
+''',
           url='http://www.roundup-tracker.org',
           download_url='http://pypi.python.org/pypi/roundup',
           classifiers=['Development Status :: 5 - Production/Stable',
@@ -139,10 +189,10 @@ with command-line, web and e-mail interfaces. Highly customisable.""",
                      'build': build,
                      'bdist_rpm': bdist_rpm,
                      },
-          packages=packagelist,
+          packages=packages,
           py_modules=py_modules,
-          scripts=roundup_scripts,
-          data_files=installdatafiles)
+          scripts=scripts,
+          data_files=data_files)
 
 if __name__ == '__main__':
     main()