Blame SOURCES/modulemd.src.txt

92e356
document: modulemd
92e356
version: 2
92e356
data:
92e356
    name: python36
92e356
    stream: 3.6
92e356
    summary: Python programming language, version 3.6
92e356
    description: |-
92e356
        This module gives users access to the internal Python 3.6 in RHEL8, as
92e356
        well as provides some additional Python packages the users might need.
92e356
        In addition to these you can install any python3-* package available
92e356
        in RHEL and use it with Python from this module.
92e356
    license:
92e356
        module:
92e356
            - MIT
92e356
    dependencies:
92e356
        - buildrequires:
92e356
              platform: [el8]
92e356
              # python-pymongo needs mongodb for tests
92e356
              # - mongodb version `3.6` being the same as version of Python 3.6
92e356
              #   is a coincidence.
92e356
              mongodb: [3.6]
92e356
          requires:
92e356
              platform: [el8]
92e356
    references:
92e356
        community: https://www.python.org/
92e356
        documentation: https://docs.python.org/3.6/
92e356
    profiles:
92e356
        common:
92e356
            rpms:
92e356
                - python36
92e356
        build:
92e356
            rpms:
92e356
                - python36
92e356
                - python36-devel
92e356
                - python36-rpm-macros
92e356
    filter:
92e356
        rpms:
92e356
            - python2-PyMySQL
92e356
            - python2-docutils
92e356
            - python2-nose
92e356
            - python2-pygments
92e356
            - python2-scipy
92e356
            - python2-sqlalchemy
92e356
            - python2-virtualenv
92e356
    api:
92e356
        rpms:
92e356
            - python-sqlalchemy-doc
92e356
            - python-virtualenv-doc
92e356
            - python3-PyMySQL
92e356
            - python3-bson
92e356
            - python3-distro
92e356
            - python3-docs
92e356
            - python3-docutils
92e356
            - python3-nose
92e356
            - python3-pygments
92e356
            - python3-pymongo
92e356
            - python3-pymongo-gridfs
92e356
            - python3-scipy
92e356
            - python3-sqlalchemy
92e356
            - python3-virtualenv
92e356
            - python3-wheel
92e356
            - python36
92e356
            - python36-debug
92e356
            - python36-devel
92e356
            - python36-rpm-macros
92e356
    buildopts:
92e356
        rpms:
92e356
            macros: |
92e356
                %_without_python2 1
92e356
92e356
                # For packages depending on python36, so that they
92e356
                # BuildRequire python36-devel/debug/rpm-macros instead of python3-*
92e356
                #
92e356
                # This won't be necessary for python37 and later. There we can
92e356
                # set %{python3_pkgversion}, because all packages will need to
92e356
                # have the pythonXY prefix. Whereas for Python 3.6 the packages
92e356
                # are split between non-modular RHEL and the python36 module,
92e356
                # and so it was easier and less confusing to keep the prefix at
92e356
                # python3- except for the devel/debug/rpm/macros packages.
92e356
                %_with_python36_module 1
92e356
    components:
92e356
        rpms:
92e356
            python36:
92e356
                # This package needs to be built before all others due to containing python36-rpm-macros
92e356
                rationale:
92e356
                    Contains the symlink to the platform-python interpreter.
92e356
                    Also contains python36-rpm-macros needed to build the
92e356
                    remaining packages.
92e356
                ref: stream-3.6-rhel-8.1.0
92e356
                buildorder: 10
92e356
            python-PyMySQL:
92e356
                rationale: Python adapter for the MySQL/MariaDB databases
92e356
                # PyMySQL [0] vs. mysqlclient-python [1]
92e356
                # - PyMySQL was originally chosen for the rh-python35 RH
92e356
                #   Software collection due to the opinion that maintaining
92e356
                #   mysqlclient-python would take much more resources (bad
92e356
                #   communication with upstream, backward incompatibilities in
92e356
                #   test suite, ...)[2]. PyMySQL was deemed the better
92e356
                #   alternative.
92e356
                # - When creating this module, this decision was reassessed,
92e356
                #   because mysqlclient-python seems to be faster than PyMySQL,
92e356
                #   but the choice was reaffirmed due to the customers already
92e356
                #   being familiar with PyMySQL from the abovementioned RHSCLs,
92e356
                #   and due to wider popularity of PyMySQL upstream.[3]
92e356
                # [0] https://github.com/PyMySQL/PyMySQL
92e356
                # [1] https://github.com/PyMySQL/mysqlclient-python
92e356
                # [2] https://bugzilla.redhat.com/show_bug.cgi?id=1012475
92e356
                # [3] python-maint@redhat.com mailing list, 2018-04-30, subject
92e356
                #     "python-MySQL vs PyMySQL"
92e356
                ref: stream-0.8.0-rhel-8.1.0
92e356
                buildorder: 20
92e356
            python-docutils:
92e356
                rationale: System for processing plaintext documentation
92e356
                ref: stream-0.14-rhel-8.1.0
92e356
                buildorder: 20
92e356
            python-nose:
92e356
                rationale: Discovery-based unit test extension for Python
92e356
                ref: stream-1.3.7-rhel-8.1.0
92e356
                buildorder: 20
92e356
            python-pygments:
92e356
                rationale: Syntax highlighting engine written in Python
92e356
                ref: stream-2.2.0-rhel-8.1.0
92e356
                buildorder: 20
92e356
            python-pymongo:
92e356
                # Package maintainer: mskalick
92e356
                rationale: Python driver for MongoDB
92e356
                ref: stream-3.6.1-rhel-8.1.0
92e356
                buildorder: 20
92e356
            python-sqlalchemy:
92e356
                rationale: Modular and flexible ORM library for python
92e356
                ref: stream-1.3.2-rhel-8.1.0
92e356
                buildorder: 20
92e356
            python-virtualenv:
92e356
                rationale: Tool to create isolated Python environments
92e356
                ref: stream-15.1.0-rhel-8.1.0
92e356
                buildorder: 20
92e356
            python-wheel:
92e356
                rationale: Built-package format for Python
92e356
                ref: stream-0.30.0-rhel-8.1.0
92e356
                buildorder: 20
92e356
            scipy:
92e356
                rationale: Scientific Tools for Python
92e356
                ref: stream-1.0.0-rhel-8.1.0
92e356
                buildorder: 20
92e356
            python-docs:
92e356
                rationale: Documentation for Python
92e356
                ref: stream-3.6-rhel-8.1.0
92e356
                buildorder: 20
92e356
            python-distro:
92e356
                rationale: Linux Distribution - a Linux OS platform information API
92e356
                ref: stream-1.4-rhel-8.1.0
92e356
                buildorder: 20