glfs/general/prog/python-dependencies/pluggy.xml
Douglas R. Reno 9c87711c52 Tags
2023-02-14 20:49:41 -06:00

137 lines
4.3 KiB
XML

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE sect2 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../../../general.ent">
%general-entities;
<!ENTITY pluggy-download-http "https://files.pythonhosted.org/packages/source/p/pluggy/pluggy-&pluggy-version;.tar.gz">
<!ENTITY pluggy-download-ftp " ">
<!ENTITY pluggy-md5sum "&pluggy-md5sum;">
<!ENTITY pluggy-size "50 KB">
<!ENTITY pluggy-buildsize "636 KB (add 26 MB for tests)">
<!ENTITY pluggy-time "less than 0.1 SBU (with tests)">
]>
<sect2 id="pluggy" xreflabel="pluggy-&pluggy-version;">
<title>Pluggy-&pluggy-version;</title>
<indexterm zone="pluggy">
<primary sortas="a-pluggy">pluggy</primary>
</indexterm>
<sect3 role="package">
<title>Introduction to Pluggy Module</title>
<para>
The <application>Pluggy</application> package gives users the ability
to extend or modify the behaviour of a host program by installing a
plugin for that program. The plugin code will run as part of normal
program execution, changing or enhancing certain aspects of it. In
essence, <application>pluggy</application> enables function hooking
so a user can build <quote>pluggable</quote> systems.
</para>
&lfs113_checked;
<bridgehead renderas="sect4">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Download (HTTP): <ulink url="&pluggy-download-http;"/>
</para>
</listitem>
<listitem>
<para>
Download (FTP): <ulink url="&pluggy-download-ftp;"/>
</para>
</listitem>
<listitem>
<para>
Download MD5 sum: &pluggy-md5sum;
</para>
</listitem>
<listitem>
<para>
Download size: &pluggy-size;
</para>
</listitem>
<listitem>
<para>
Estimated disk space required: &pluggy-buildsize;
</para>
</listitem>
<listitem>
<para>
Estimated build time: &pluggy-time;
</para>
</listitem>
</itemizedlist>
<bridgehead renderas="sect4">Pluggy Dependencies</bridgehead>
<bridgehead renderas="sect5">Recommended</bridgehead>
<para role="recommended">
<xref linkend="setuptools_scm"/>
</para>
<bridgehead renderas="sect5">Optional (for testing)</bridgehead>
<para role="optional">
<xref linkend="pytest"/> and
<ulink url="https://pypi.org/project/pytest-benchmark/">pytest-benchmark</ulink>
</para>
</sect3>
<sect3 role="installation">
<title>Installation of Pluggy</title>
<para>Build the module: </para>
<screen><userinput>pip3 wheel -w dist --no-build-isolation --no-deps $PWD</userinput></screen>
<para>
Now, as the <systemitem class="username">root</systemitem> user:
</para>
<screen role="root"><userinput>pip3 install --no-index --find-links dist --no-cache-dir --no-user pluggy</userinput></screen>
<para>
Assuming <xref linkend="pytest"/> is installed, but the other optional
dependencies are not, the installation can be tested with the following
commands:
</para>
<screen remap="test"><userinput>python3 -m venv --system-site-packages testenv &amp;&amp;
source testenv/bin/activate &amp;&amp;
pip3 install pytest-benchmark &amp;&amp;
python3 /usr/bin/pytest<!-- no && in case there is an error -->
deactivate</userinput></screen>
</sect3>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
href="../../../xincludes/pip3-cmd-explain.xml"/>
<sect3 role="content">
<title>Contents</title>
<segmentedlist>
<segtitle>Installed Programs</segtitle>
<segtitle>Installed Libraries</segtitle>
<segtitle>Installed Directories</segtitle>
<seglistitem>
<seg>None</seg>
<seg>None</seg>
<seg>
/usr/lib/python&python3-majorver;/site-packages/pluggy and
/usr/lib/python&python3-majorver;/site-packages/pluggy-&pluggy-version;.dist-info
</seg>
</seglistitem>
</segmentedlist>
</sect3>
</sect2>