Blob Blame History Raw
document: modulemd
version: 1
data:
    summary: Python programming language, version 2
    description: >-
        Python is an interpreted, interactive, object-oriented programming
        language often compared to Tcl, Perl, Scheme or Java. Python includes
        modules, classes, exceptions, very high level dynamic data types
        and dynamic typing. Python supports interfaces to many system calls and
        libraries, as well as to various windowing systems (X11, Motif, Tk,
        Mac and MFC).

        Programmers can write new built-in modules for Python in C or C++.
        Python can be used as an extension language for applications that
        need a programmable interface.
    license:
        module:
            - MIT
    dependencies:
        buildrequires:
            bootstrap: master

            # Need an already built Python interpreter
            python2-bootstrap: master

            # python2-devel buildrequires python3-rpm-generators which
            # requires python3 and python3-setuptools
            python3: master

            # tk-devel buildrequires /usr/bin/perl
            perl: master
        requires:
            platform: master
            platform-placeholder: master
    references:
        community: https://www.python.org/
        documentation: https://docs.python.org/2/
        tracker: https://pkgs.fedoraproject.org/modules/python2
    profiles:
        minimal:
            rpms:
                - python2
                - python2-libs
                - python2-pip
                - python2-setuptools
        default:
            rpms:
                - python2
                - python2-libs
                - python2-pip
                - python2-setuptools
                - python2-tools
        full:
            rpms:
                - python2
                - python2-debug
                - python2-debuginfo
                - python2-debugsource
                - python2-devel
                - python2-libs
                - python2-pip
                - python2-setuptools
                - python2-tools
                - python2-wheel
    filter:
        rpms:
            - python2-tkinter
            - python3-wheel
            - python3-setuptools
            - python3-pip
    api:
        rpms:
            - python2
            - python2-debug
            - python2-devel
            - python2-libs
            - python2-pip
            - python2-setuptools
            - python2-tools
            - python2-wheel
    buildopts:
        rpms:
            macros: |
                # setuptools
                %_without_platform_python 1

                # Note that we cannot disable building of Python 3 subpackages,
                # because python2-devel (needed to build all Python 2 packages)
                # has a runtime dependency on python3-rpm-generators, and that
                # package requires python3-setuptools at runtime. By rebuilding
                # python-setuptools SRPM with only python2, we overshadow the
                # already built python3 subpackage and it is no longer
                # available for python3-rpm-generators when building python-pip
                # (or any other Python package).
    components:
        rpms:
            python-wheel:
                rationale: Used for unbundling of pip and setuptools
                ref: master
                buildorder: 10
            python-setuptools:
                rationale: Python Packaging ecosystem
                ref: master
                buildorder: 20
            python-pip:
                rationale: Python Packaging ecosystem
                ref: master
                buildorder: 30
            python2:
                rationale: Main Python language interpreter
                ref: master
                buildorder: 40