Blob Blame History Raw
---
document: modulemd
version: 2
data:
    name: python39
    stream: 3.9-bootstrap
    summary: Python programming language, version 3.9
    description: |-
        This module gives users access to the internal Python 3.9 in RHEL8, as
        well as provides some additional Python packages the users might need.
        In addition to these you can install any python3-* package available
        in RHEL and use it with Python from this module.
    license:
        module:
            - MIT
    dependencies:
        - buildrequires:
              platform: [el8.4.0]

              # Depending on our selves for bootstrapping
              # This is not needed in bootstrap phase 1 and can be disabled
              python39: [3.9-bootstrap]

              # sicpy needs package swig
              swig: [3.0]
              # mod_wsgi needs several packages from httpd
              httpd: [2.4]
          requires:
              platform: [el8]
    references:
        community: https://www.python.org/
        documentation: https://docs.python.org/3.9/
    profiles:
        common:
            rpms:
                - python39
        build:
            rpms:
                - python39
                - python39-devel
                - python39-rpm-macros
    buildopts:
        rpms:
                # === Bootstrap phase 1 ===
                #
                # %python3_pkgversion 39
                # # python39
                # %_without_rpmwheels 1
                # %_without_optimizations 1
                # # python39, setuptools, wheel
                # %_with_bootstrap 1
                # # python39, setuptools, pip
                # %_without_tests 1
                # # pip
                # %_without_doc 1

                # === Bootstrap phase 2 ===
                #
                # %python3_pkgversion 39
                # # setuptools, pip, ...
                # %_without_tests 1


            # Macros bootstrapping info:
            #   Only the macros that are below the `macros: |` declaration are
            #   being used in the module at a given time. If you want to switch
            #   to a different bootstrap phase, comment out the current
            #   bootstrap phase macros, move them above this section. And take
            #   the bootstrap phase you want to use, uncomment it, and move it
            #   here, below the `macros: |` line.
            # Explanation:
            #   Macros are expanded even when they are commented out using '#',
            #   therefore it's safer to just move them out of the macros
            #   section entirely to avoid possible issues.
            macros: |
                # === Bootstrap phase 3 ===
                #
                %python3_pkgversion 39
                # scipy needs pybind11 to build and pybind11 needs scipy for tests
                %_without_tests 1

    components:
        rpms:
            # === Bootstrap phase 1 ===
            #
            # python39:
            #     rationale: The main Python interpreter
            #     ref: 93a1c0a50478623f84220798338b4d66a2e7117c
            #     buildorder: 10
            # python3x-setuptools:
            #     rationale: Packaging tool
            #     ref: 1950ae3d8549d4df835b6e31337bebd9a40bf4f8
            #     buildorder: 20
            # python-wheel:
            #     rationale: Packaging tool
            #     ref: 1d3137dab7dbb7c7fa4526224de74ab47cadbd95
            #     buildorder: 30
            # python3x-pip:
            #     rationale: Packaging tool
            #     ref: 0bf48e6304b1048952635f8811b3f8992347623b
            #     buildorder: 40


            # === Bootstrap phase 2 ===
            #
            # python3x-setuptools:
            #     rationale: Packaging tool
            #     ref: 1950ae3d8549d4df835b6e31337bebd9a40bf4f8
            #     buildorder: 10
            # python3x-pyparsing:
            #     rationale: Python component
            #     ref: ad9334c8fb4a6a6e24252c4a94f64523044b0368
            #     buildorder: 20
            # python39:
            #     rationale: The main Python interpreter
            #     ref: 93a1c0a50478623f84220798338b4d66a2e7117c
            #     buildorder: 30
            # python-wheel:
            #     rationale: Packaging tool
            #     ref: 1d3137dab7dbb7c7fa4526224de74ab47cadbd95
            #     buildorder: 40
            # python3x-pip:
            #     rationale: Packaging tool
            #     ref: 0bf48e6304b1048952635f8811b3f8992347623b
            #     buildorder: 40
            # python3x-six:
            #     rationale: Python component
            #     ref: 3930eca3dcbfbe7c80ab9c0f4d385e3f818016eb
            #     buildorder: 40
            # python-py:
            #     rationale: Python component
            #     ref: f98dc1297bfd38a5356aee346c59259cd983bfaa
            #     buildorder: 40
            # python-chardet:
            #     rationale: Python component
            #     # stream branch shared with python38 module
            #     ref: 04b5d1be6d2e14ece3a43caa87b79216ea35b65a
            #     buildorder: 40
            # python-attrs:
            #     rationale: Python component
            #     ref: b68e1e37d4944f9a20e452bb3596e5f75b9506be
            #     buildorder: 40
            # python-pluggy:
            #     rationale: Python component
            #     ref: 2abffaab2ce5b6a5e0121442bdd5a49eb4c4f752
            #     buildorder: 40
            # python-pysocks:
            #     rationale: Python component
            #     # stream branch shared with python38 module
            #     ref: 483216203ae75373f15aea373c80ee0585c13e63
            #     buildorder: 40
            # python-wcwidth:
            #     rationale: Python component
            #     ref: d45e8c1e3fcd02f21d6bdd008f877380c1dd69c1
            #     buildorder: 40
            # python-packaging:
            #     rationale: Python component
            #     ref: d6dd7925507609cedacc346a2793842dfbdcdf72
            #     buildorder: 40
            # python-toml:
            #     rationale: Python component
            #     ref: dc3e570c0f28ba1c9b9bbca871b122e0a5f8a2ff
            #     buildorder: 40
            # python-iniconfig:
            #     rationale: Python component
            #     ref: f707fca709c2a1d006dcff691dfa2b9b648ecb7f
            #     buildorder: 40
            # python-more-itertools:
            #     rationale: Python component
            #     ref: 4c7d27c844b65549cf4162977488b7b63288b377
            #     buildorder: 50
            # pytest:
            #     rationale: Python component
            #     ref: 0e0110864115c99e4e69ed78021a478fac350f33
            #     buildorder: 60


            # === Bootstrap phase 3/4 ===
            # For bootstrap phase 3 uncomment all `buildorder:` lines below,
            # for bootstrap phase 4 comment them out.
            #
            python3x-setuptools:
                rationale: Packaging tool
                ref: 1950ae3d8549d4df835b6e31337bebd9a40bf4f8
            python3x-pyparsing:
                rationale: Python component
                ref: ad9334c8fb4a6a6e24252c4a94f64523044b0368
            python39:
                rationale: The main Python interpreter
                ref: 93a1c0a50478623f84220798338b4d66a2e7117c
            python-wheel:
                rationale: Packaging tool
                ref: 1d3137dab7dbb7c7fa4526224de74ab47cadbd95
            python3x-pip:
                rationale: Packaging tool
                ref: 0bf48e6304b1048952635f8811b3f8992347623b

            python3x-six:
                rationale: Python component
                ref: 3930eca3dcbfbe7c80ab9c0f4d385e3f818016eb
            python-py:
                rationale: Python component
                ref: f98dc1297bfd38a5356aee346c59259cd983bfaa
            python-chardet:
                rationale: Python component
                # stream branch shared with python38 module
                ref: 04b5d1be6d2e14ece3a43caa87b79216ea35b65a
            python-attrs:
                rationale: Python component
                ref: b68e1e37d4944f9a20e452bb3596e5f75b9506be
            python-pluggy:
                rationale: Python component
                ref: 2abffaab2ce5b6a5e0121442bdd5a49eb4c4f752
            python-pysocks:
                rationale: Python component
                # stream branch shared with python38 module
                ref: 483216203ae75373f15aea373c80ee0585c13e63
            python-wcwidth:
                rationale: Python component
                ref: d45e8c1e3fcd02f21d6bdd008f877380c1dd69c1
            python-packaging:
                rationale: Python component
                ref: d6dd7925507609cedacc346a2793842dfbdcdf72
            python-toml:
                rationale: Python component
                ref: dc3e570c0f28ba1c9b9bbca871b122e0a5f8a2ff
            python-iniconfig:
                rationale: Python component
                ref: f707fca709c2a1d006dcff691dfa2b9b648ecb7f
            python-more-itertools:
                rationale: Python component
                ref: 4c7d27c844b65549cf4162977488b7b63288b377
            pytest:
                rationale: Python component
                ref: 0e0110864115c99e4e69ed78021a478fac350f33

            python-idna:
                rationale: Python component
                ref: 96079b9187a3c449211a2dc1a4e910ef9956b7e9
            python-urllib3:
                rationale: Python component
                ref: 6b6e02d630b786437deed074d421051cc2acbe87
            Cython:
                rationale: Python component
                ref: 8c789216e7ce6b5e929c5046a27d5d890423c750
            python-ply:
                rationale: Python component
                # stream branch shared with python38 module
                ref: f113e7017224318a0e816f6e78f938187ff60515
            python-psutil:
                rationale: Python component
                ref: b24769857571306e8bb21f72c53c1ef1a6fb95f6
            python-psycopg2:
                rationale: Python component
                ref: 439d6fa4527303c38f65ae247c709410adb5821a
            mod_wsgi:
                rationale: Python component
                ref: 83f89e967cf6729d4e78591b29ebde950ff12aea
            python-requests:
                rationale: Python component
                ref: f99a3f5bab770a5fea956ceef8e9d0cd506b6379
                buildorder: 10
            numpy:
                rationale: Python component
                ref: 593d45b8a06077089786e5c3818950d295e85871
                buildorder: 10
            PyYAML:
                rationale: Python component
                ref: fadfcf8207e37e3910989e51f9d2e2ebcf783051
                buildorder: 10
            python-pycparser:
                rationale: Python component
                ref: ca7845af04898c3f98db25937fa93a58e5166cf4
                buildorder: 10
            python-lxml:
                rationale: Python component
                ref: 594c36cb17094416e72ceb7c1b9aefa9bc2857b7
                buildorder: 10
            python-cffi:
                rationale: Python component
                ref: b66960cca0cb1074520655088cae60899bd8fd00
                buildorder: 20
            pybind11:
                rationale: Python component
                ref: c5ded38bf8d331512fc09d82e8621fbf288f221f
                # needs numpy
                buildorder: 20
            scipy:
                rationale: Python component
                ref: 0c42ffd27fafcf93fe7ca76033dedf8f4052ddcc
                # needs pybind11
                buildorder: 30
            python-cryptography:
                rationale: Python component
                ref: e304a6883592ff881d6396fcd4a95c9f62eab810
                # needs cffi
                buildorder: 30
            python-PyMySQL:
                rationale: Python component
                ref: dc5bc3753d271278f5da87a774ce58e924ed66b8
                # needs cryptography
                buildorder: 40
...