| Index | index by Group | index by Distribution | index by Vendor | index by creation date | index by Name | Mirrors | Help | Search |
| Name: python311-extra-platforms | Distribution: openSUSE Tumbleweed |
| Version: 11.0.0 | Vendor: openSUSE |
| Release: 1.1 | Build date: Mon Mar 2 08:05:46 2026 |
| Group: Unspecified | Build host: reproducible |
| Size: 560038 | Source RPM: python-extra-platforms-11.0.0-1.1.src.rpm |
| Packager: https://bugs.opensuse.org | |
| Url: https://github.com/kdeldycke/extra-platforms | |
| Summary: Detect platforms and group them by family | |
Detect platforms and group them by family
Apache-2.0
* Mon Mar 02 2026 Johannes Kastl <opensuse_buildservice@ojkastl.de>
- update to 11.0.0:
* Switch license from GPL-2.0+ to Apache-2.0
* Mon Mar 02 2026 Johannes Kastl <opensuse_buildservice@ojkastl.de>
- update to 10.0.0:
* Replace distro dependency with built-in /etc/os-release parser,
making the package dependency-free. macOS Platform.info() now
returns distro_id: None instead of distro_id: "darwin".
* Add new Agent trait type for detecting AI coding agents.
* Add 3 agent definitions: CLAUDE_CODE, CLINE, CURSOR.
* Add current_agent() detection function.
* Add agent group: ALL_AGENTS.
* Add @skip_<agent> and @unless_<agent> pytest decorators for all
agents and agent groups.
* Add GENERIC_LINUX platform for Linux environments where distro
cannot identify the specific distribution (e.g., minimal
containers or build chroots without /etc/os-release). Closes
[#479].
* Show detected agent in extra-platforms CLI output.
* Use TERM, CI, and LLM environment variables to distinguish
unrecognized terminals, CI systems, and agents from absent
ones.
* Tue Feb 17 2026 Johannes Kastl <opensuse_buildservice@ojkastl.de>
- update to 9.2.0:
* Add new Terminal trait type for detecting terminal emulators.
Closes #459.
* Add 20 terminal definitions: ALACRITTY, APPLE_TERMINAL,
CONTOUR, FOOT, GHOSTTY, GNOME_TERMINAL, GNU_SCREEN, HYPER,
ITERM2, KITTY, KONSOLE, RIO, TABBY, TILIX, TMUX,
VSCODE_TERMINAL, WEZTERM, WINDOWS_TERMINAL, XTERM, ZELLIJ.
* Add current_terminal() detection function.
* Add terminal groups: ALL_TERMINALS, GPU_TERMINALS,
MULTIPLEXERS, NATIVE_TERMINALS, WEB_TERMINALS.
* Add @skip_<terminal> and @unless_<terminal> pytest decorators
for all terminals and terminal groups.
* Display all detected traits and groups in extra-platforms CLI.
* Fix emoji column alignment in CLI.
- update to 9.1.0:
* Add extra-platforms CLI command.
* Skip Nuitka binary builds.
* Add new ALPINE, KALI, MANJARO, OPENWRT platform definitions.
* Replace filesystem-based shell detection with parent process
tree walking via /proc on Linux.
* Make is_powershell() detection cross-platform (Linux, macOS,
Windows) via PSModulePath environment variable and process tree
inspection.
* Fix CLI crash on Windows due to cp1252 encoding not supporting
Unicode output.
* Tweak some icons.
* Add issue template with detection results reporting.
* Thu Feb 12 2026 Johannes Kastl <opensuse_buildservice@ojkastl.de>
- update to 9.0.0:
* Add new Shell trait type for detecting command-line
interpreters.
* Add 12 shell definitions: ASH, BASH, CMD, CSH, DASH, FISH, KSH,
NUSHELL, POWERSHELL, TCSH, XONSH, ZSH.
* Add current_shell() detection function.
* Add shell groups: ALL_SHELLS, BOURNE_SHELLS, C_SHELLS,
OTHER_SHELLS, WINDOWS_SHELLS.
* Add @skip_<shell> and @unless_<shell> pytest decorators for all
shells and shell groups.
* Fix icons conflicts.
* Fix crash in compiled binaries (Nuitka, PyInstaller, cx_Freeze)
caused by missing source files for docstring extraction.
* Force Sphinx documentation builds to use Python >= 3.12 via
[tool.uv.dependency-groups].
* Remove all deprecated backward-compatibility aliases:
- Remove ALL_PLATFORM_IDS (use ALL_TRAIT_IDS).
- Remove ALL_PLATFORMS_WITHOUT_CI (use ALL_PLATFORMS).
- Remove UNKNOWN_LINUX (use UNKNOWN_PLATFORM).
- Remove ANY_ARM, ANY_MIPS, ANY_SPARC, ANY_WINDOWS (use
ALL_ARM, ALL_MIPS, ALL_SPARC, ALL_WINDOWS).
- Remove OTHER_UNIX (use OTHER_POSIX).
- Remove current_os() (use current_platform()).
- Remove current_platforms() (use current_traits()).
- Remove platforms_from_ids() (use traits_from_ids()).
- Remove is_unknown_linux() (use is_unknown_platform()).
- Remove is_all_architectures(), is_all_platforms(),
is_all_ci(), is_all_traits() (use is_any_architecture(),
is_any_platform(), is_any_ci(), is_any_trait()).
- Remove is_all_platforms_without_ci() (use is_any_platform()).
- Remove is_ci() (use is_any_ci()).
- Remove is_other_unix() (use is_other_posix()).
- Remove is_bsd_without_macos() (use is_bsd_not_macos()).
- Remove is_unix_without_macos() (use is_unix_not_macos()).
- Remove Group._extract_members() and
Group._extract_platforms() (use extract_members()).
- Remove deprecated module shims for extra_platforms.platform
and extra_platforms.operations.
* Remove '_deprecated.py' module.
* Tue Feb 03 2026 Johannes Kastl <opensuse_buildservice@ojkastl.de>
- update to 8.0.0:
* Add aliases field to Trait class, allowing alternative IDs that
resolve to the canonical ID.
* Add aliases for common architecture names:
- arm64 → aarch64
- amd64 → x86_64
- armhf, armv7 → armv7l
- i486 → i386
- powerpc64le, ppc64el → ppc64le
* Emit a UserWarning when an alias is used, encouraging use of
the canonical ID.
* Change Trait.aliases type from tuple to frozenset for better
semantics.
* Add new BIG_ENDIAN and LITTLE_ENDIAN groups to classify
architectures by endianness, with is_big_endian() and
is_little_endian() detection functions.
* Remove operations.py and move content to group and group_data
modules.
* Rename Group._extract_members() to extract_members() and make
it public.
* Simplify reduce() algorithm from brute-force enumeration to a
greedy approximation for better performance.
* Move current_*() and is_unknown_*() functions to detection.py
module.
* Create new platform_info.py module for platform-specific info
gathering.
* Add claude.md documentation file.
* Mon Jan 19 2026 Johannes Kastl <opensuse_buildservice@ojkastl.de>
- update to 7.0.0:
- Add new ARMV5TEL architecture.
- Add new DRAGONFLY_BSD, HAIKU and ILLUMOS platforms.
- Add new ARCH_32_BIT, ARCH_64_BIT and UNKNOWN groups.
- Add new detection functions:
- is_armv5tel()
- is_dragonfly_bsd()
- is_haiku()
- is_illumos()
- is_arch_32_bit()
- is_arch_64_bit()
- is_unknown()
- Fix detection of AARCH64 on Windows ARM runners.
- Rename UNKNOWN_LINUX trait to UNKNOWN_PLATFORM.
- Remove UNKNOWN_ARCHITECTURE trait from ALL_ARCHITECTURES
group.
- Remove UNKNOWN_LINUX trait from ALL_PLATFORMS group.
- Remove UNKNOWN_CI trait from ALL_CI group.
- current_architecture(), current_platform() and current_ci()
functions now returns UNKNOWN_ARCHITECTURE, UNKNOWN_PLATFORM
and UNKNOWN_CI if detection fails. Add strict mode to raise
an exception instead.
- Rename groups:
- OTHER_UNIX → OTHER_POSIX
- ANY_ARM → ALL_ARM
- ANY_MIPS → ALL_MIPS
- ANY_SPARC → ALL_SPARC
- ANY_WINDOWS → ALL_WINDOWS
- Rename detection functions:
- is_other_unix() → is_other_posix()
- is_all_architectures() → is_any_architecture()
- is_all_platforms() → is_any_platform()
- is_all_ci() → is_any_ci()
- is_all_traits() → is_any_trait()
- is_unknown_linux() → is_unknown_platform()
- is_bsd_without_macos() → is_bsd_not_macos()
- is_unix_without_macos() → is_unix_not_macos()
- Re-introduce aliases removed in v6.0.0 for backward
compatibility:
- Group._extract_platforms() → Group._extract_members()
- is_all_platforms_without_ci() → is_any_platform()
- is_ci() → is_any_ci()
- Rename Pytest decorators:
- @skip/@unless_unknown_linux →
@skip/@unless_unknown_platform
- @skip/@unless_bsd_without_macos →
@skip/@unless_bsd_not_macos
- @skip/@unless_unix_without_macos →
@skip/@unless_unix_not_macos
- Deprecate renamed symbols and detection functions with
aliases.
- Pre-compute traits and groups metadata to enforce conventions
for data definitions, detection functions, Pytest decorators
and document generation.
- Mark all canonical groups with the ⬥ symbol everywhere in the
documentation.
- Cross-link all traits, groups and detection functions in the
documentation.
* Fri Jan 16 2026 Johannes Kastl <opensuse_buildservice@ojkastl.de>
- update to 6.0.0:
* Add architecture detection: aarch64, arm, armv6l, armv7l,
armv8l, i386, i586, i686, loongarch64, mips, mips64, mips64el,
mipsel, ppc, ppc64, ppc64le, riscv32, riscv64, s390x, sparc,
sparc64, unknown_architecture, wasm32, wasm64, x86_64.
* Architectures, platforms and CI systems are now known as
traits.
* Add new current_traits() method to return all traits matching
the current environment: architecture, platforms and CI
systems. Deprecate current_platforms() in favor of it.
* Add new current_architecture() and current_ci() methods to
return the current architecture and CI system.
* Rename:
- current_os() to current_platform().
- platforms_from_ids() to traits_from_ids().
- CI group to ALL_CI. CI now refers to the CI(Trait) class.
- ALL_PLATFORM_IDS constant to ALL_TRAIT_IDS.
- Group.platforms to Group.members.
- Group.platform_ids to Group.member_ids.
- Group._extract_platforms() to Group._extract_members()
* Group.members is now an immutable MappingProxyType.
* Add more in-place operators (|=, &=, -=, ^=) and set-like
behavior to Group.
* Add canonical attribute to Group.
* Add new ALL_ARCHITECTURES, ANY_ARM, X86, LOONGARCH, ANY_MIPS,
POWERPC, RISCV, ANY_SPARC, IBM_MAINFRAME, WEBASSEMBLY and
ALL_TRAITS groups.
* Deprecate ALL_PLATFORMS_WITHOUT_CI group is favor of
ALL_PLATFORMS.
* Add new ALL_ARCHITECTURE_GROUPS, ALL_PLATFORM_GROUPS and
ALL_CI_GROUPS collections of groups.
* Remove utilization workaround for macos-15-intel.
* Replace deprecated codecov/test-results-action by
codecov/codecov-action.
* Move auto-lock time from 8:43 to 4:43.
- switch to tarball from GitHub, as the one from PyPi does no
longer container the tests directory
* Tue Dec 09 2025 Johannes Kastl <opensuse_buildservice@ojkastl.de>
- update to 5.1.0:
* Change Amazon Linux icon.
* Add cooldown period for dependabot and uv.lock updates.
* Merge all label jobs into a single one.
* Change the test, typing and docs extra dependency groups into
development dependency groups.
* Uncap all dependencies.
* Run tests on Python 3.14t and 3.15t free-threaded variants.
* Run tests on ubuntu-slim GitHub Actions runner.
* Run docs update job on ubuntu-slim runner.
* Unlock a CPU core stuck at 100% utilization on macos-15-intel.
* Mon Nov 17 2025 Johannes Kastl <opensuse_buildservice@ojkastl.de>
- update to 5.0.1:
* Add detection of CachyOS. Closes #341.
* Tue Nov 04 2025 Johannes Kastl <opensuse_buildservice@ojkastl.de>
- update to 5.0.0
* Changes
- Relax dependencies to support Python 3.10.
- Re-introduce tomli dependency for Python 3.10 users.
- Skip tests on intermediate Python versions (3.11, 3.12 and 3.13)
to reduce CI load.
* Sun Nov 02 2025 Johannes Kastl <opensuse_buildservice@ojkastl.de>
- update to 4.1.1:
* Add detection of Ultramarine Linux. Closes #329.
* Wed Oct 22 2025 Johannes Kastl <opensuse_buildservice@ojkastl.de>
- update to 4.1.0:
* Add new invalidate_caches() method to invalidate internal
caches used for platform detection.
* Remove dependency on boltons.
* Add all Operating System :: trove classifiers.
* Add all platform names as package keywords.
- update to 4.0.0:
* Fix detection of GNU/Hurd. Closes #308.
* Move all typing-related imports behind a hard-coded
TYPE_CHECKING guard to avoid runtime imports.
* Remove maximum capped version of all dependencies (relax all ~=
specifiers to >=). This gives more freedom to downstream and
upstream packagers. Document each minimal version choice.
* Add official support of Python 3.14.
* Run tests on Python 3.15.
* Skip tests on Python 3.12 and 3.13 to reduce CI load.
* Use astral-sh/setup-uv action to install uv instead of manually
installing it with pip.
* Run tests on macos-26 and macos-15-intel runners.
* Remove tests on EOL'ed windows-2019 and macos-13.
* Support GitHub admonitions in Sphinx/MyST documentation.
* Wed Aug 06 2025 Johannes Kastl <opensuse_buildservice@ojkastl.de>
- update to 3.2.3:
* Add detection of macOS Tahoe (v26.x)
* Sun May 25 2025 Johannes Kastl <opensuse_buildservice@ojkastl.de>
- update to 3.2.2:
* Fix detection of UNKNOWN_CI
* Sun May 18 2025 Johannes Kastl <opensuse_buildservice@ojkastl.de>
- update to 3.2.1:
* Add convenient ALL_PLATFORMS_WITHOUT_CI group to exclude all CI
systems from ALL_PLATFORMS
* Sun May 18 2025 Johannes Kastl <opensuse_buildservice@ojkastl.de>
- update to 3.2.0:
* Add detection of CI systems: GITHUB_CI, GITLAB_CI and
UNKNOWN_CI.
* Add new CI group to group all CI platforms.
* Move OS families diagrams to group documentation page.
* Remove ALL_PLATFORMS from Sankey diagram.
* Run tests on windows-11-arm runners.
* Remove tests on EOL ubuntu-20-04.
* Wed Mar 05 2025 Johannes Kastl <opensuse_buildservice@ojkastl.de>
- update to 3.1.0:
* Allow platform ID membership test on groups.
* Add items() method to Group.
* Allow None values in nested references to platforms and groups.
* Keep initial order of data from platforms_from_ids() and
groups_from_ids() results.
* Allow arbitrary arguments number in Group._extract_platforms().
* Wed Mar 05 2025 Johannes Kastl <opensuse_buildservice@ojkastl.de>
- update to 3.0.0:
* Allow set operations to resolve group and Platform IDs.
* Make resolution of platform and group IDs case-insensitive.
* Only runs website tests on Linux to prevent DOSing them.
* Drop supports for Python 3.10.
* Remove tomli dependency.
* Thu Feb 20 2025 Johannes Kastl <opensuse_buildservice@ojkastl.de>
- update to 2.1.0:
* Add new platforms_from_ids and groups_from_ids methods to
retrieve platforms and groups from a collection of IDs.
* Allow a platform to be fetched by its ID from a group with the
group[platform_id] item getter syntax.
* Add new ALL_PLATFORM_IDS, ALL_GROUP_IDS and ALL_IDS constants.
* Removes ALL_OS_LABELS.
* Add windows-2025 to the test matrix.
* Mark Python 3.14 tests as stable.
* Fri Jan 03 2025 Johannes Kastl <opensuse_buildservice@ojkastl.de>
- update to 2.0.0:
* Add support for Nobara detection.
* Fix current_os() to always return a single platform. Closes
[#158].
* Add new current_platforms() method to return all platforms
matching the current environment.
* Generate a pair of Pytest @skip_<id>/@unless_<id> decorators
for each platform and group.
* Change all group membership check utilities to be functions
instead of variables. You now have to call is_<group_id>()
instead of is_<group_id>.
* Cache the result of is_<group_id>() group membership check
utilities.
* Do not call all detection heuristics on module import. Instead,
call them lazily when needed.
* Make URLs required on all platforms.
* Invite users in error messages and logs to contribute back
edge-cases to improve detection heuristics.
* Upload test results to coverage.
* Tue Dec 03 2024 Johannes Kastl <opensuse_buildservice@ojkastl.de>
- update to 1.7.0:
* Display the hierarchy of non-overlapping groups as a mindmap.
* Add URL on all platforms.
* Add support for openSUSE Tumbleweed detection. Closes #133.
* Do not allow icons on platforms and groups to be empty.
* Run tests in parallel to speed up CI.
* Thu Nov 28 2024 Johannes Kastl <opensuse_buildservice@ojkastl.de>
- enable builds for python3.13
* Wed Nov 20 2024 Johannes Kastl <opensuse_buildservice@ojkastl.de>
- new package python-extra-platforms, required by
python-click-extra
/usr/bin/extra-platforms /usr/bin/extra-platforms-3.11 /usr/lib/python3.11/site-packages/extra_platforms /usr/lib/python3.11/site-packages/extra_platforms-11.0.0.dist-info /usr/lib/python3.11/site-packages/extra_platforms-11.0.0.dist-info/INSTALLER /usr/lib/python3.11/site-packages/extra_platforms-11.0.0.dist-info/METADATA /usr/lib/python3.11/site-packages/extra_platforms-11.0.0.dist-info/RECORD /usr/lib/python3.11/site-packages/extra_platforms-11.0.0.dist-info/REQUESTED /usr/lib/python3.11/site-packages/extra_platforms-11.0.0.dist-info/WHEEL /usr/lib/python3.11/site-packages/extra_platforms-11.0.0.dist-info/entry_points.txt /usr/lib/python3.11/site-packages/extra_platforms-11.0.0.dist-info/licenses /usr/lib/python3.11/site-packages/extra_platforms-11.0.0.dist-info/licenses/license /usr/lib/python3.11/site-packages/extra_platforms/__init__.py /usr/lib/python3.11/site-packages/extra_platforms/__main__.py /usr/lib/python3.11/site-packages/extra_platforms/__pycache__ /usr/lib/python3.11/site-packages/extra_platforms/__pycache__/__init__.cpython-311.opt-1.pyc /usr/lib/python3.11/site-packages/extra_platforms/__pycache__/__init__.cpython-311.pyc /usr/lib/python3.11/site-packages/extra_platforms/__pycache__/__main__.cpython-311.opt-1.pyc /usr/lib/python3.11/site-packages/extra_platforms/__pycache__/__main__.cpython-311.pyc /usr/lib/python3.11/site-packages/extra_platforms/__pycache__/_docstrings.cpython-311.opt-1.pyc /usr/lib/python3.11/site-packages/extra_platforms/__pycache__/_docstrings.cpython-311.pyc /usr/lib/python3.11/site-packages/extra_platforms/__pycache__/_types.cpython-311.opt-1.pyc /usr/lib/python3.11/site-packages/extra_platforms/__pycache__/_types.cpython-311.pyc /usr/lib/python3.11/site-packages/extra_platforms/__pycache__/_utils.cpython-311.opt-1.pyc /usr/lib/python3.11/site-packages/extra_platforms/__pycache__/_utils.cpython-311.pyc /usr/lib/python3.11/site-packages/extra_platforms/__pycache__/agent_data.cpython-311.opt-1.pyc /usr/lib/python3.11/site-packages/extra_platforms/__pycache__/agent_data.cpython-311.pyc /usr/lib/python3.11/site-packages/extra_platforms/__pycache__/architecture_data.cpython-311.opt-1.pyc /usr/lib/python3.11/site-packages/extra_platforms/__pycache__/architecture_data.cpython-311.pyc /usr/lib/python3.11/site-packages/extra_platforms/__pycache__/ci_data.cpython-311.opt-1.pyc /usr/lib/python3.11/site-packages/extra_platforms/__pycache__/ci_data.cpython-311.pyc /usr/lib/python3.11/site-packages/extra_platforms/__pycache__/detection.cpython-311.opt-1.pyc /usr/lib/python3.11/site-packages/extra_platforms/__pycache__/detection.cpython-311.pyc /usr/lib/python3.11/site-packages/extra_platforms/__pycache__/group.cpython-311.opt-1.pyc /usr/lib/python3.11/site-packages/extra_platforms/__pycache__/group.cpython-311.pyc /usr/lib/python3.11/site-packages/extra_platforms/__pycache__/group_data.cpython-311.opt-1.pyc /usr/lib/python3.11/site-packages/extra_platforms/__pycache__/group_data.cpython-311.pyc /usr/lib/python3.11/site-packages/extra_platforms/__pycache__/platform_data.cpython-311.opt-1.pyc /usr/lib/python3.11/site-packages/extra_platforms/__pycache__/platform_data.cpython-311.pyc /usr/lib/python3.11/site-packages/extra_platforms/__pycache__/platform_info.cpython-311.opt-1.pyc /usr/lib/python3.11/site-packages/extra_platforms/__pycache__/platform_info.cpython-311.pyc /usr/lib/python3.11/site-packages/extra_platforms/__pycache__/pytest.cpython-311.opt-1.pyc /usr/lib/python3.11/site-packages/extra_platforms/__pycache__/pytest.cpython-311.pyc /usr/lib/python3.11/site-packages/extra_platforms/__pycache__/shell_data.cpython-311.opt-1.pyc /usr/lib/python3.11/site-packages/extra_platforms/__pycache__/shell_data.cpython-311.pyc /usr/lib/python3.11/site-packages/extra_platforms/__pycache__/terminal_data.cpython-311.opt-1.pyc /usr/lib/python3.11/site-packages/extra_platforms/__pycache__/terminal_data.cpython-311.pyc /usr/lib/python3.11/site-packages/extra_platforms/__pycache__/trait.cpython-311.opt-1.pyc /usr/lib/python3.11/site-packages/extra_platforms/__pycache__/trait.cpython-311.pyc /usr/lib/python3.11/site-packages/extra_platforms/_docstrings.py /usr/lib/python3.11/site-packages/extra_platforms/_types.py /usr/lib/python3.11/site-packages/extra_platforms/_utils.py /usr/lib/python3.11/site-packages/extra_platforms/agent_data.py /usr/lib/python3.11/site-packages/extra_platforms/architecture_data.py /usr/lib/python3.11/site-packages/extra_platforms/ci_data.py /usr/lib/python3.11/site-packages/extra_platforms/detection.py /usr/lib/python3.11/site-packages/extra_platforms/group.py /usr/lib/python3.11/site-packages/extra_platforms/group_data.py /usr/lib/python3.11/site-packages/extra_platforms/platform_data.py /usr/lib/python3.11/site-packages/extra_platforms/platform_info.py /usr/lib/python3.11/site-packages/extra_platforms/py.typed /usr/lib/python3.11/site-packages/extra_platforms/pytest.py /usr/lib/python3.11/site-packages/extra_platforms/shell_data.py /usr/lib/python3.11/site-packages/extra_platforms/terminal_data.py /usr/lib/python3.11/site-packages/extra_platforms/trait.py /usr/share/libalternatives/extra-platforms /usr/share/libalternatives/extra-platforms/311.conf
Generated by rpm2html 1.8.1
Fabrice Bellet, Thu Mar 5 22:51:13 2026