---
document: modulemd
version: 2
data:
name: python38
stream: "3.8"
summary: Python programming language, version 3.8
description: |-
This module gives users access to the internal Python 3.8 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.6.0]
# Depending on our selves for bootstrapping
# This is not needed in bootstrap phase 1 and can be disabled
python38: [3.8-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.8/
profiles:
common:
rpms:
- python38
build:
rpms:
- python38
- python38-devel
- python38-rpm-macros
filter:
rpms:
- python38-pyparsing
- python38-atomicwrites
- python38-attrs
- python38-packaging
- python38-py
- python38-pytest
- python38-more-itertools
- python38-pluggy
- python38-wcwidth
api:
rpms:
- python38
- python38-Cython
- python38-PyMySQL
- python38-asn1crypto
- python38-babel
- python38-cffi
- python38-chardet
- python38-cryptography
- python38-devel
- python38-idle
- python38-idna
- python38-jinja2
- python38-libs
- python38-lxml
- python38-markupsafe
- python38-mod_wsgi
- python38-numpy
- python38-numpy-f2py
- python38-pip
- python38-pip-wheel
- python38-ply
- python38-psutil
- python38-psycopg2
- python38-pycparser
- python38-pysocks
- python38-pytz
- python38-pyyaml
- python38-requests
- python38-rpm-macros
- python38-scipy
- python38-setuptools
- python38-setuptools-wheel
- python38-six
- python38-test
- python38-tkinter
- python38-urllib3
- python38-wheel
- python38-wheel-wheel
buildopts:
rpms:
# === Bootstrap phase 1 ===
#
# %python3_pkgversion 38
# %_without_python2 1
# # python38, setuptools, wheel
# %_with_bootstrap 1
# # python38
# %_without_rpmwheels 1
# # python38, setuptools, pip
# %_without_tests 1
# # pip
# %_without_doc 1
# === Bootstrap phase 2 ===
#
# %python3_pkgversion 38
# %_without_python2 1
# # python38, setuptools, six, py, chardet, attrs, pluggy, pysocks,
# # atomicwrites, wcwidth, packaging
# %_without_tests 1
# # py, pyparsing, atomicwrites, packaging, pytest
# %_without_docs 1
# # pytest
# %_without_timeout 1
# %_without_optional_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/4 ===
#
%python3_pkgversion 38
%_without_python2 1
# py, pyparsing, atomicwrites, packaging, pytest
%_without_docs 1
components:
rpms:
# === Bootstrap phase 1 ===
#
# python38:
# rationale: The main Python interpreter
# ref: c71d4e501fdee9d0c0606c346328b9e733f40a22
# buildorder: 10
# python3x-setuptools:
# rationale: Packaging tool
# ref: 56fb730eaa8459d2f8b0c76104722b751761518a
# buildorder: 20
# python-wheel:
# rationale: Packaging tool
# ref: 978b5e98e50979fd0d5e9c3fecee62dab896bcc9
# buildorder: 30
# python3x-pip:
# rationale: Packaging tool
# ref: 84aa07c0a0800bec16dc78951d15748d6af75a7d
# buildorder: 40
# === Bootstrap phase 2 ===
#
# python3x-setuptools:
# rationale: Packaging tool
# ref: 56fb730eaa8459d2f8b0c76104722b751761518a
# buildorder: 10
# python38:
# rationale: The main Python interpreter
# ref: c71d4e501fdee9d0c0606c346328b9e733f40a22
# buildorder: 20
# python-wheel:
# rationale: Packaging tool
# ref: 978b5e98e50979fd0d5e9c3fecee62dab896bcc9
# buildorder: 30
# python3x-pip:
# rationale: Packaging tool
# ref: 84aa07c0a0800bec16dc78951d15748d6af75a7d
# buildorder: 30
# python3x-six:
# rationale: Python component
# ref: 79212410a62640d6ba6fb9bee8c6f8ed88a7401f
# buildorder: 30
# python-py:
# rationale: Python component
# ref: 725721338027fabba187fcee663ee3e9bd3290d7
# buildorder: 30
# python-chardet:
# rationale: Python component
# ref: 04b5d1be6d2e14ece3a43caa87b79216ea35b65a
# buildorder: 30
# python-attrs:
# rationale: Python component
# ref: e9bcb854a4017201a396d14a2f941a37a13010f3
# buildorder: 30
# python-pluggy:
# rationale: Python component
# ref: ba5dde76d5398b1c869eaaf2619bf7061d472fb6
# buildorder: 30
# python-markupsafe:
# rationale: Python component
# ref: 411ed0ff3ec0682aeef30fead3696673096fca82
# buildorder: 30
# python-pysocks:
# rationale: Python component
# ref: 483216203ae75373f15aea373c80ee0585c13e63
# buildorder: 30
# python3x-pyparsing:
# rationale: Python component
# ref: 83e48edf172c5764192df37c87f61509132e98cc
# buildorder: 30
# python-atomicwrites:
# rationale: Python component
# ref: b94fddf57c6fbd09c9d7bd5a9d7dd666376e5386
# buildorder: 30
# python-wcwidth:
# rationale: Python component
# ref: be8f2b04d24c914cf2743628f95138cd91d58b44
# buildorder: 30
# python-more-itertools:
# rationale: Python component
# ref: e1d5d8a6b5d705f7dd4e3253ae33c7560cbd2150
# buildorder: 40
# python-packaging:
# rationale: Python component
# ref: 419429934421600cc834be5890be0400bfb7620a
# buildorder: 40
# pytest:
# rationale: Python component
# ref: d2854f6746913377d27f49ac2be01c1e6aa16ff5
# buildorder: 50
# === Bootstrap phase 3/4 ===
# For bootstrap phase 3 uncomment all `buildorder:` lines below,
# for bootstrap phase 4 comment them out.
#
python38:
rationale: The main Python interpreter
ref: c71d4e501fdee9d0c0606c346328b9e733f40a22
python3x-setuptools:
rationale: Packaging tool
ref: 56fb730eaa8459d2f8b0c76104722b751761518a
python-wheel:
rationale: Packaging tool
ref: 978b5e98e50979fd0d5e9c3fecee62dab896bcc9
python3x-pip:
rationale: Packaging tool
ref: 84aa07c0a0800bec16dc78951d15748d6af75a7d
python3x-six:
rationale: Python component
ref: 79212410a62640d6ba6fb9bee8c6f8ed88a7401f
python-py:
rationale: Python component
ref: 725721338027fabba187fcee663ee3e9bd3290d7
python-chardet:
rationale: Python component
ref: 04b5d1be6d2e14ece3a43caa87b79216ea35b65a
python-attrs:
rationale: Python component
ref: e9bcb854a4017201a396d14a2f941a37a13010f3
python-pluggy:
rationale: Python component
ref: ba5dde76d5398b1c869eaaf2619bf7061d472fb6
python-markupsafe:
rationale: Python component
ref: 411ed0ff3ec0682aeef30fead3696673096fca82
python-pysocks:
rationale: Python component
ref: 483216203ae75373f15aea373c80ee0585c13e63
python3x-pyparsing:
rationale: Python component
ref: 83e48edf172c5764192df37c87f61509132e98cc
python-atomicwrites:
rationale: Python component
ref: b94fddf57c6fbd09c9d7bd5a9d7dd666376e5386
python-wcwidth:
rationale: Python component
ref: be8f2b04d24c914cf2743628f95138cd91d58b44
python-more-itertools:
rationale: Python component
ref: e1d5d8a6b5d705f7dd4e3253ae33c7560cbd2150
python-packaging:
rationale: Python component
ref: 419429934421600cc834be5890be0400bfb7620a
pytest:
rationale: Python component
ref: d2854f6746913377d27f49ac2be01c1e6aa16ff5
pytz:
rationale: Python component
ref: e511e149f15c72f6899fcb6ec77d16b5f601b6bd
babel:
rationale: Python component
ref: 227108b6f0c0f9686193e5c738c8ce70ff43db9e
python-idna:
rationale: Python component
ref: f31aae82e6cc6bf72df28f33a6f79e0d9869dc18
python-urllib3:
rationale: Python component
ref: f4a8dde4dc7d391cb3ee1902ff409fb145cb1c6d
Cython:
rationale: Python component
ref: 6fd15dc5dd8beba861c7dd2cae96c6ffdce479b1
python-asn1crypto:
rationale: Python component
ref: a76406f22f1df8af46439738f675f42c38c55328
python-ply:
rationale: Python component
ref: f113e7017224318a0e816f6e78f938187ff60515
python-psutil:
rationale: Python component
ref: e9f4c9756ebddcc6b2ebdc20050bc90a64a9f50f
python-psycopg2:
rationale: Python component
ref: d5342d2c15e078b550a5142647bed6310e34a9e7
mod_wsgi:
rationale: Python component
ref: 8add44143f3b76d4eb0a4e5237b86d7770afd971
python-requests:
rationale: Python component
ref: 4f3cf0a863b3375816762185a43f454db4485c18
# buildorder: 10
python-jinja2:
rationale: Python component
ref: aa2c5985d72f71ebc735ac40b42f3e594cf72eed
# buildorder: 10
numpy:
rationale: Python component
ref: dfb61a142f90c0b8495f4645d2835f8ba8383257
# buildorder: 10
PyYAML:
rationale: Python component
ref: 9a5a9a0393de544d88cb78a4fcfda18efc4759c5
# buildorder: 10
python-pycparser:
rationale: Python component
ref: d8780afffcee334655c6afc845213e51cc118423
# buildorder: 10
python-lxml:
rationale: Python component
ref: 5c21380f82866c4871dc6bd8297fe29cfda7316c
# buildorder: 10
python-cffi:
rationale: Python component
ref: 7863c65b2cc9d3caf9e21d8a0da66430f38dbca2
# buildorder: 20
scipy:
rationale: Python component
ref: 9b831368aba1a84483e855a720a7c74799fb9aa7
# buildorder: 20
python-cryptography:
rationale: Python component
ref: 5c743a97fdb06d99fc583a7be55ea1dd0050dd6f
# needs cffi
# buildorder: 30
python-PyMySQL:
rationale: Python component
ref: 173146ccc90488b5c442d4011464ab13673e5e0e
# needs cryptography
# buildorder: 40
...