Ejemplo n.º 1
0
def main():
    # template munching
    packages = [
        'roundup',
        'roundup.anypy',
        'roundup.cgi',
        'roundup.cgi.PageTemplates',
        'roundup.cgi.TAL',
        'roundup.cgi.ZTUtils',
        'roundup.backends',
        'roundup.scripts',
    ]

    # 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':
        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('share/roundup/templates').values()]
    for tdir in templates:
        for idir in '. detectors extensions html html/layout static'.split():
            data_files.append(include(os.path.join(tdir, idir), '*'))

    # add message files
    for (_dist_file, _mo_file) in list_message_files():
        data_files.append((os.path.dirname(_mo_file),
                           [os.path.join("build", _mo_file)]))

    # add docs
    data_files.append(include('share/doc/roundup/html', '*'))
    data_files.append(include('share/doc/roundup/html/_images', '*'))
    data_files.append(include('share/doc/roundup/html/_sources', '*'))
    data_files.append(include('share/doc/roundup/html/_static', '*'))

    # perform the setup action
    from roundup import __version__

    # long_description may not contain non-ascii characters. Distutils
    # will produce an non-installable installer on linux *and* we can't
    # run the bdist_wininst on Linux if there are non-ascii characters
    # because the distutils installer will try to use the mbcs codec
    # which isn't available on non-windows platforms. See also
    # http://bugs.python.org/issue10945
    long_description=open('doc/announcement.txt').read()
    try:
        # attempt to interpret string as 'ascii'
        long_description = long_description.encode('ascii')
    except UnicodeEncodeError, cause:
        print >> sys.stderr, "doc/announcement.txt contains non-ascii: %s" \
            % cause
        sys.exit(42)
Ejemplo n.º 2
0
def main():
    # template munching
    packages = [
        'roundup',
        'roundup.anypy',
        'roundup.cgi',
        'roundup.cgi.PageTemplates',
        'roundup.cgi.TAL',
        'roundup.cgi.ZTUtils',
        'roundup.backends',
        'roundup.scripts',
    ]

    # build list of scripts from their implementation modules
    scripts = [mapscript(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':
        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('share/roundup/templates').values()
    ]
    for tdir in templates:
        for idir in '. detectors extensions html html/layout static'.split():
            data_files.append(include(os.path.join(tdir, idir), '*'))

    # add message files
    for (_dist_file, _mo_file) in list_message_files():
        data_files.append(
            (os.path.dirname(_mo_file), [os.path.join("build", _mo_file)]))

    # add docs
    data_files.append(include('share/doc/roundup/html', '*'))
    data_files.append(include('share/doc/roundup/html/_images', '*'))
    data_files.append(include('share/doc/roundup/html/_sources', '*'))
    data_files.append(include('share/doc/roundup/html/_static', '*'))

    # perform the setup action
    from roundup import __version__

    # long_description may not contain non-ascii characters. Distutils
    # will produce an non-installable installer on linux *and* we can't
    # run the bdist_wininst on Linux if there are non-ascii characters
    # because the distutils installer will try to use the mbcs codec
    # which isn't available on non-windows platforms. See also
    # http://bugs.python.org/issue10945
    long_description = open('doc/announcement.txt').read().decode('utf8')
    try:
        long_description = long_description.encode('ascii')
    except UnicodeEncodeError, cause:
        print >> sys.stderr, "doc/announcement.txt contains non-ascii: %s" \
            % cause
        sys.exit(42)
Ejemplo n.º 3
0
def main():
    # template munching
    packages = [
        "roundup",
        "roundup.anypy",
        "roundup.cgi",
        "roundup.cgi.PageTemplates",
        "roundup.cgi.TAL",
        "roundup.cgi.ZTUtils",
        "roundup.backends",
        "roundup.scripts",
    ]
    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":
        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("share/roundup/templates").values()]
    for tdir in templates:
        for idir in ". detectors extensions html".split():
            data_files.append(include(os.path.join(tdir, idir), "*"))

    # add message files
    for (_dist_file, _mo_file) in list_message_files():
        data_files.append((os.path.dirname(_mo_file), [os.path.join("build", _mo_file)]))

    # add docs
    data_files.append(include("share/doc/roundup/html", "*"))

    # perform the setup action
    from roundup import __version__

    # long_description may not contain non-ascii characters. Distutils
    # will produce an non-installable installer on linux *and* we can't
    # run the bdist_wininst on Linux if there are non-ascii characters
    # because the distutils installer will try to use the mbcs codec
    # which isn't available on non-windows platforms. See also
    # http://bugs.python.org/issue10945
    long_description = open("doc/announcement.txt").read().decode("utf8")
    try:
        long_description = long_description.encode("ascii")
    except UnicodeEncodeError, cause:
        print >>sys.stderr, "doc/announcement.txt contains non-ascii: %s" % cause
        sys.exit(42)
Ejemplo n.º 4
0
def main():
    # template munching
    packages = [
        'roundup',
        'roundup.anypy',
        'roundup.cgi',
        'roundup.cgi.PageTemplates',
        'roundup.cgi.TAL',
        'roundup.cgi.ZTUtils',
        'roundup.backends',
        'roundup.scripts',
    ]

    # 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':
        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('share/roundup/templates').values()
    ]
    for tdir in templates:
        for idir in '. detectors extensions html html/layout static'.split():
            data_files.append(include(os.path.join(tdir, idir), '*'))

    # add message files
    for (_dist_file, _mo_file) in list_message_files():
        data_files.append(
            (os.path.dirname(_mo_file), [os.path.join("build", _mo_file)]))

    # add docs
    data_files.append(include('share/doc/roundup/html', '*'))
    data_files.append(include('share/doc/roundup/html/_images', '*'))
    data_files.append(include('share/doc/roundup/html/_sources', '*'))
    data_files.append(include('share/doc/roundup/html/_static', '*'))

    # perform the setup action
    from roundup import __version__

    # long_description may not contain non-ascii characters. Distutils
    # will produce an non-installable installer on linux *and* we can't
    # run the bdist_wininst on Linux if there are non-ascii characters
    # because the distutils installer will try to use the mbcs codec
    # which isn't available on non-windows platforms. See also
    # http://bugs.python.org/issue10945
    long_description = open('doc/announcement.txt').read()
    try:
        # attempt to interpret string as 'ascii'
        long_description.encode('ascii')
    except UnicodeEncodeError as cause:
        print("doc/announcement.txt contains non-ascii: %s" % cause,
              file=sys.stderr)
        sys.exit(42)

    setup(
        name='roundup',
        version=__version__,
        author="Richard Jones",
        author_email="*****@*****.**",
        maintainer="Ralf Schlatterbeck",
        maintainer_email="*****@*****.**",
        description="A simple-to-use and -install issue-tracking system"
        " with command-line, web and e-mail interfaces. Highly"
        " customisable.",
        long_description=long_description,
        url='https://www.roundup-tracker.org',
        download_url='https://pypi.org/project/roundup',
        classifiers=[
            'Development Status :: 5 - Production/Stable',
            #'Development Status :: 4 - Beta',
            #'Development Status :: 3 - Alpha',
            'Environment :: Console',
            'Environment :: Web Environment',
            'Intended Audience :: Customer Service',
            'Intended Audience :: Information Technology',
            'Intended Audience :: End Users/Desktop',
            'Intended Audience :: Developers',
            'Intended Audience :: System Administrators',
            'License :: OSI Approved :: MIT License',
            'Operating System :: MacOS :: MacOS X',
            'Operating System :: Microsoft :: Windows',
            'Operating System :: POSIX',
            'Programming Language :: Python',
            'Programming Language :: Python :: 2',
            'Programming Language :: Python :: 2.7',
            'Programming Language :: Python :: 3',
            'Programming Language :: Python :: 3.4',
            'Programming Language :: Python :: 3.5',
            'Programming Language :: Python :: 3.6',
            'Programming Language :: Python :: 3.7',
            'Programming Language :: Python :: 3.8',
            'Programming Language :: Python :: 3.9',
            'Topic :: Communications :: Email',
            'Topic :: Office/Business',
            'Topic :: Software Development :: Bug Tracking',
            'Topic :: Internet :: WWW/HTTP :: WSGI :: Application',
        ],

        # Override certain command classes with our own ones
        cmdclass={
            'build_doc': build_doc,
            'build_scripts': build_scripts,
            'build': build,
            'bdist_rpm': bdist_rpm,
            'install_lib': install_lib,
        },
        packages=packages,
        scripts=scripts,
        data_files=data_files)
Ejemplo n.º 5
0
def main():
    # template munching
    packages = [
        'roundup',
        'roundup.anypy',
        'roundup.cgi',
        'roundup.cgi.PageTemplates',
        'roundup.cgi.TAL',
        'roundup.cgi.ZTUtils',
        'roundup.backends',
        'roundup.scripts',
        'roundup.test',
    ]

    # build list of scripts from their implementation modules
    scripts = [mapscript(f) for f in glob('roundup/scripts/[!_]*.py')]

    # build list of zope files/directories
    Zope = {}
    Zope['module'] = [f for f in glob('frontends/ZRoundup/*.py')]
    Zope['module'].append('frontends/ZRoundup/refresh.txt');
    Zope['icons'] = [f for f in glob('frontends/ZRoundupscripts/*.gif')]
    Zope['dtml'] = [f for f in glob('frontends/ZRoundupscripts/*.dtml')]

    data_files = [
        ('share/roundup/cgi-bin', ['frontends/roundup.cgi']),
        ('share/roundup/frontends', ['frontends/wsgi.py']),
        ('share/roundup/frontends/Zope', Zope['module']),
        ('share/roundup/frontends/Zope/icons', Zope['icons']),
        ('share/roundup/frontends/Zope/dtml', Zope['dtml'])
    ]
    # install man pages on POSIX platforms
    if os.name == 'posix':
        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('share/roundup/templates').values()]
    for tdir in templates:
        for idir in '. detectors extensions html html/layout static'.split():
            data_files.append(include(os.path.join(tdir, idir), '*'))

    # add message files
    for (_dist_file, _mo_file) in list_message_files():
        data_files.append((os.path.dirname(_mo_file),
                           [os.path.join("build", _mo_file)]))

    # add docs
    data_files.append(include('share/doc/roundup/html', '*'))
    data_files.append(include('share/doc/roundup/html/_images', '*'))
    data_files.append(include('share/doc/roundup/html/_sources', '*'))
    data_files.append(include('share/doc/roundup/html/_static', '*'))

    data_files = make_data_files_absolute(data_files, get_prefix())

    # when running under python2, even if called from setup, it tries
    # and fails to perform an egg easy install even though it shouldn't:
    # https://issues.roundup-tracker.org/issue2551185
    # Add this argument if we are an install to prevent this.
    # This works right under python3.
    # FIXME there has to be a better way than this
    # https://issues.roundup-tracker.org/issue2551185

    if sys.version_info[0] < 3:
        for arg in sys.argv:
            if arg == 'install':
                sys.argv.append('--old-and-unmanageable')

    # perform the setup action
    from roundup import __version__

    # long_description may not contain non-ascii characters. Distutils
    # will produce an non-installable installer on linux *and* we can't
    # run the bdist_wininst on Linux if there are non-ascii characters
    # because the distutils installer will try to use the mbcs codec
    # which isn't available on non-windows platforms. See also
    # http://bugs.python.org/issue10945
    long_description=open('doc/announcement.txt').read()
    try:
        # attempt to interpret string as 'ascii'
        long_description.encode('ascii')
    except UnicodeEncodeError as cause:
        print("doc/announcement.txt contains non-ascii: %s"
              % cause, file=sys.stderr)
        sys.exit(42)

    setup(name='roundup',
          version=__version__,
          author="Richard Jones",
          author_email="*****@*****.**",
          maintainer="Ralf Schlatterbeck",
          maintainer_email="*****@*****.**",
          description="A simple-to-use and -install issue-tracking system"
            " with command-line, web and e-mail interfaces. Highly"
            " customisable.",
          long_description=long_description,
          long_description_content_type='text/x-rst',
          url='https://www.roundup-tracker.org',
          download_url='https://pypi.org/project/roundup',
          classifiers=['Development Status :: 5 - Production/Stable',
                       #'Development Status :: 4 - Beta',
                       #'Development Status :: 3 - Alpha',
                       'Environment :: Console',
                       'Environment :: Web Environment',
                       'Intended Audience :: Customer Service',
                       'Intended Audience :: Information Technology',
                       'Intended Audience :: End Users/Desktop',
                       'Intended Audience :: Developers',
                       'Intended Audience :: System Administrators',
                       'License :: OSI Approved',
                       'License :: OSI Approved :: MIT License',
                       'License :: OSI Approved :: Zope Public License',
                       'Operating System :: MacOS :: MacOS X',
                       'Operating System :: Microsoft :: Windows',
                       'Operating System :: POSIX',
                       'Programming Language :: Python',
                       'Programming Language :: Python :: 2',
                       'Programming Language :: Python :: 2.7',
                       'Programming Language :: Python :: 3',
                       'Programming Language :: Python :: 3.6',
                       'Programming Language :: Python :: 3.7',
                       'Programming Language :: Python :: 3.8',
                       'Programming Language :: Python :: 3.9',
                       'Programming Language :: Python :: 3.10',
                       'Topic :: Communications :: Email',
                       'Topic :: Office/Business',
                       'Topic :: Software Development :: Bug Tracking',
                       'Topic :: Internet :: WWW/HTTP :: WSGI :: Application',
                       ],

          # Override certain command classes with our own ones
          cmdclass= {'build_doc': build_doc,
                     'build': build,
                     'bdist_rpm': bdist_rpm,
                     'install_lib': install_lib,
                     },
          packages=packages,
          entry_points={
              'console_scripts': scripts
          },
          data_files=data_files)
Ejemplo n.º 6
0
def main():
    # template munching
    packages = [
        'roundup',
        'roundup.anypy',
        'roundup.cgi',
        'roundup.cgi.PageTemplates',
        'roundup.cgi.TAL',
        'roundup.cgi.ZTUtils',
        'roundup.backends',
        'roundup.scripts',
    ]
    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':
        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('share/roundup/templates').values()]
    for tdir in templates:
        for idir in '. detectors extensions html'.split():
            data_files.append(include(os.path.join(tdir, idir), '*'))

    # add message files
    for (_dist_file, _mo_file) in list_message_files():
        data_files.append((os.path.dirname(_mo_file),
                           [os.path.join("build", _mo_file)]))

    # add docs
    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="*****@*****.**",
          description="A simple-to-use and -install issue-tracking system"
            " with command-line, web and e-mail interfaces. Highly"
            " customisable.",
          long_description='''
1.4.8 fixes some regressions:

- bug introduced into hyperdb filter (issue 2550505)
- bug introduced into CVS export and view (issue 2550529)
- bugs introduced in the migration to the email package (issue 2550531)

And adds a couple of other fixes:

- handle bogus pagination values (issue 2550530)
- fix TLS handling with some SMTP servers (issues 2484879 and 1912923)

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 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 [email protected].

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+ installation. It
doesn't even need to be "installed" to be operational, though a
disutils-based 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',
                       'Environment :: Console',
                       'Environment :: Web Environment',
                       'Intended Audience :: End Users/Desktop',
                       'Intended Audience :: Developers',
                       'Intended Audience :: System Administrators',
                       'License :: OSI Approved :: Python Software Foundation License',
                       'Operating System :: MacOS :: MacOS X',
                       'Operating System :: Microsoft :: Windows',
                       'Operating System :: POSIX',
                       'Programming Language :: Python',
                       'Topic :: Communications :: Email',
                       'Topic :: Office/Business',
                       'Topic :: Software Development :: Bug Tracking',
                       ],

          # Override certain command classes with our own ones
          cmdclass= {'build_doc': build_doc,
                     'build_scripts': build_scripts,
                     'build_py': build_py,
                     'build': build,
                     'bdist_rpm': bdist_rpm,
                     },
          packages=packages,
          py_modules=py_modules,
          scripts=scripts,
          data_files=data_files)
Ejemplo n.º 7
0
def main():
    # template munching
    packages = [
        'roundup',
        'roundup.anypy',
        'roundup.cgi',
        'roundup.cgi.PageTemplates',
        'roundup.cgi.TAL',
        'roundup.cgi.ZTUtils',
        'roundup.backends',
        'roundup.scripts',
    ]
    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':
        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('share/roundup/templates').values()]
    for tdir in templates:
        for idir in '. detectors extensions html'.split():
            data_files.append(include(os.path.join(tdir, idir), '*'))

    # add message files
    for (_dist_file, _mo_file) in list_message_files():
        data_files.append((os.path.dirname(_mo_file),
                           [os.path.join("build", _mo_file)]))

    # add docs
    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="*****@*****.**",
          description="A simple-to-use and -install issue-tracking system"
            " with command-line, web and e-mail interfaces. Highly"
            " customisable.",
          long_description=open('doc/announcement.txt').read().decode('utf8'),
          url='http://www.roundup-tracker.org',
          download_url='http://pypi.python.org/pypi/roundup',
          classifiers=['Development Status :: 5 - Production/Stable',
                       'Environment :: Console',
                       'Environment :: Web Environment',
                       'Intended Audience :: End Users/Desktop',
                       'Intended Audience :: Developers',
                       'Intended Audience :: System Administrators',
                       'License :: OSI Approved :: Python Software Foundation License',
                       'Operating System :: MacOS :: MacOS X',
                       'Operating System :: Microsoft :: Windows',
                       'Operating System :: POSIX',
                       'Programming Language :: Python',
                       'Topic :: Communications :: Email',
                       'Topic :: Office/Business',
                       'Topic :: Software Development :: Bug Tracking',
                       ],

          # Override certain command classes with our own ones
          cmdclass= {'build_doc': build_doc,
                     'build_scripts': build_scripts,
                     'build_py': build_py,
                     'build': build,
                     'bdist_rpm': bdist_rpm,
                     },
          packages=packages,
          py_modules=py_modules,
          scripts=scripts,
          data_files=data_files)