@@ -525,8 +525,8 @@ <h2 id="how-to-create-a-setuptools-based-python-component">How to Create a Setup
525525 ├── MyComponent-0.1-py3-none-any.whl
526526 ├── mpf_component_api-0.1-py3-none-any.whl
527527 ├── mpf_component_util-0.1-py3-none-any.whl
528- ├── numpy-1.18.4-cp38-cp38-manylinux1_x86_64 .whl
529- └── opencv_python-4.2 .0.34-cp38-cp38-manylinux1_x86_64 .whl
528+ ├── numpy-2.2.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64 .whl
529+ └── opencv_python-4.12 .0.88-cp37-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64 .whl
530530</ code > </ pre >
531531< p > To create the plugin packages you can run the build script as follows:</ p >
532532< pre > < code > ~/openmpf-projects/openmpf-build-tools/build-openmpf-components/build_components.py -psdk ~/openmpf-projects/openmpf-python-component-sdk -c MyComponent
@@ -1393,7 +1393,7 @@ <h1 id="how-to-report-errors">How to Report Errors</h1>
13931393the < code > MPF_</ code > prefix. You can replace the < code > MISSING_PROPERTY</ code > part in the above code with any other error type. When
13941394generating an exception, choose the type that best describes your error.</ p >
13951395< h1 id ="python-component-build-environment "> Python Component Build Environment</ h1 >
1396- < p > All Python components must work with CPython 3.8.10 . Also, Python components
1396+ < p > All Python components must work with CPython 3.12 . Also, Python components
13971397must work with the Linux version that is used by the OpenMPF Component
13981398Executable. At this writing, OpenMPF runs on
13991399Ubuntu 20.04 (kernel version 5.13.0-30). Pure Python code should work on any
@@ -1408,98 +1408,27 @@ <h1 id="python-component-build-environment">Python Component Build Environment</
14081408Python 3 implementation because it does not use any implementation-specific
14091409features. < code > none</ code > means that it does not use the Python ABI. < code > any</ code > means it will
14101410work on any platform.</ p >
1411- < p > The following combinations of compatibility tags are supported :</ p >
1411+ < p > The acceptable Python version tags are:</ p >
14121412< ul >
1413- < li > < code > cp38-cp38-manylinux2014_x86_64</ code > </ li >
1414- < li > < code > cp38-cp38-manylinux2010_x86_64</ code > </ li >
1415- < li > < code > cp38-cp38-manylinux1_x86_64</ code > </ li >
1416- < li > < code > cp38-cp38-linux_x86_64</ code > </ li >
1417- < li > < code > cp38-abi3-manylinux2014_x86_64</ code > </ li >
1418- < li > < code > cp38-abi3-manylinux2010_x86_64</ code > </ li >
1419- < li > < code > cp38-abi3-manylinux1_x86_64</ code > </ li >
1420- < li > < code > cp38-abi3-linux_x86_64</ code > </ li >
1421- < li > < code > cp38-none-manylinux2014_x86_64</ code > </ li >
1422- < li > < code > cp38-none-manylinux2010_x86_64</ code > </ li >
1423- < li > < code > cp38-none-manylinux1_x86_64</ code > </ li >
1424- < li > < code > cp38-none-linux_x86_64</ code > </ li >
1425- < li > < code > cp37-abi3-manylinux2014_x86_64</ code > </ li >
1426- < li > < code > cp37-abi3-manylinux2010_x86_64</ code > </ li >
1427- < li > < code > cp37-abi3-manylinux1_x86_64</ code > </ li >
1428- < li > < code > cp37-abi3-linux_x86_64</ code > </ li >
1429- < li > < code > cp36-abi3-manylinux2014_x86_64</ code > </ li >
1430- < li > < code > cp36-abi3-manylinux2010_x86_64</ code > </ li >
1431- < li > < code > cp36-abi3-manylinux1_x86_64</ code > </ li >
1432- < li > < code > cp36-abi3-linux_x86_64</ code > </ li >
1433- < li > < code > cp35-abi3-manylinux2014_x86_64</ code > </ li >
1434- < li > < code > cp35-abi3-manylinux2010_x86_64</ code > </ li >
1435- < li > < code > cp35-abi3-manylinux1_x86_64</ code > </ li >
1436- < li > < code > cp35-abi3-linux_x86_64</ code > </ li >
1437- < li > < code > cp34-abi3-manylinux2014_x86_64</ code > </ li >
1438- < li > < code > cp34-abi3-manylinux2010_x86_64</ code > </ li >
1439- < li > < code > cp34-abi3-manylinux1_x86_64</ code > </ li >
1440- < li > < code > cp34-abi3-linux_x86_64</ code > </ li >
1441- < li > < code > cp33-abi3-manylinux2014_x86_64</ code > </ li >
1442- < li > < code > cp33-abi3-manylinux2010_x86_64</ code > </ li >
1443- < li > < code > cp33-abi3-manylinux1_x86_64</ code > </ li >
1444- < li > < code > cp33-abi3-linux_x86_64</ code > </ li >
1445- < li > < code > cp32-abi3-manylinux2014_x86_64</ code > </ li >
1446- < li > < code > cp32-abi3-manylinux2010_x86_64</ code > </ li >
1447- < li > < code > cp32-abi3-manylinux1_x86_64</ code > </ li >
1448- < li > < code > cp32-abi3-linux_x86_64</ code > </ li >
1449- < li > < code > py38-none-manylinux2014_x86_64</ code > </ li >
1450- < li > < code > py38-none-manylinux2010_x86_64</ code > </ li >
1451- < li > < code > py38-none-manylinux1_x86_64</ code > </ li >
1452- < li > < code > py38-none-linux_x86_64</ code > </ li >
1453- < li > < code > py3-none-manylinux2014_x86_64</ code > </ li >
1454- < li > < code > py3-none-manylinux2010_x86_64</ code > </ li >
1455- < li > < code > py3-none-manylinux1_x86_64</ code > </ li >
1456- < li > < code > py3-none-linux_x86_64</ code > </ li >
1457- < li > < code > py37-none-manylinux2014_x86_64</ code > </ li >
1458- < li > < code > py37-none-manylinux2010_x86_64</ code > </ li >
1459- < li > < code > py37-none-manylinux1_x86_64</ code > </ li >
1460- < li > < code > py37-none-linux_x86_64</ code > </ li >
1461- < li > < code > py36-none-manylinux2014_x86_64</ code > </ li >
1462- < li > < code > py36-none-manylinux2010_x86_64</ code > </ li >
1463- < li > < code > py36-none-manylinux1_x86_64</ code > </ li >
1464- < li > < code > py36-none-linux_x86_64</ code > </ li >
1465- < li > < code > py35-none-manylinux2014_x86_64</ code > </ li >
1466- < li > < code > py35-none-manylinux2010_x86_64</ code > </ li >
1467- < li > < code > py35-none-manylinux1_x86_64</ code > </ li >
1468- < li > < code > py35-none-linux_x86_64</ code > </ li >
1469- < li > < code > py34-none-manylinux2014_x86_64</ code > </ li >
1470- < li > < code > py34-none-manylinux2010_x86_64</ code > </ li >
1471- < li > < code > py34-none-manylinux1_x86_64</ code > </ li >
1472- < li > < code > py34-none-linux_x86_64</ code > </ li >
1473- < li > < code > py33-none-manylinux2014_x86_64</ code > </ li >
1474- < li > < code > py33-none-manylinux2010_x86_64</ code > </ li >
1475- < li > < code > py33-none-manylinux1_x86_64</ code > </ li >
1476- < li > < code > py33-none-linux_x86_64</ code > </ li >
1477- < li > < code > py32-none-manylinux2014_x86_64</ code > </ li >
1478- < li > < code > py32-none-manylinux2010_x86_64</ code > </ li >
1479- < li > < code > py32-none-manylinux1_x86_64</ code > </ li >
1480- < li > < code > py32-none-linux_x86_64</ code > </ li >
1481- < li > < code > py31-none-manylinux2014_x86_64</ code > </ li >
1482- < li > < code > py31-none-manylinux2010_x86_64</ code > </ li >
1483- < li > < code > py31-none-manylinux1_x86_64</ code > </ li >
1484- < li > < code > py31-none-linux_x86_64</ code > </ li >
1485- < li > < code > py30-none-manylinux2014_x86_64</ code > </ li >
1486- < li > < code > py30-none-manylinux2010_x86_64</ code > </ li >
1487- < li > < code > py30-none-manylinux1_x86_64</ code > </ li >
1488- < li > < code > py30-none-linux_x86_64</ code > </ li >
1489- < li > < code > cp38-none-any</ code > </ li >
1490- < li > < code > py38-none-any</ code > </ li >
1491- < li > < code > py3-none-any</ code > </ li >
1492- < li > < code > py37-none-any</ code > </ li >
1493- < li > < code > py36-none-any</ code > </ li >
1494- < li > < code > py35-none-any</ code > </ li >
1495- < li > < code > py34-none-any</ code > </ li >
1496- < li > < code > py33-none-any</ code > </ li >
1497- < li > < code > py32-none-any</ code > </ li >
1498- < li > < code > py31-none-any</ code > </ li >
1499- < li > < code > py30-none-any</ code > </ li >
1413+ < li > < code > cp312</ code > (or lower)</ li >
1414+ < li > < code > py312</ code > (or lower)</ li >
15001415</ ul >
1501- < p > The list above was generated with the following command:
1502- < code > python3 -c 'import pip._internal.pep425tags as tags; print("\n".join(str(t) for t in tags.get_supported()))'</ code > </ p >
1416+ < p > The < strong > ONLY</ strong > acceptable ABI tags are:</ p >
1417+ < ul >
1418+ < li > < code > cp312</ code > </ li >
1419+ < li > < code > abi3</ code > </ li >
1420+ < li > < code > none</ code > </ li >
1421+ </ ul >
1422+ < p > The acceptable platform tags are:</ p >
1423+ < ul >
1424+ < li > < code > any</ code > </ li >
1425+ < li > < code > linux_x86_64</ code > </ li >
1426+ < li > < code > manylinux1_x86_64</ code > </ li >
1427+ < li > < code > manylinux2010_x86_64</ code > </ li >
1428+ < li > < code > manylinux2014_x86_64</ code > </ li >
1429+ < li > < code > manylinux_2_5_x86_64</ code > through < code > manylinux_2_39_x86_64</ code > </ li >
1430+ </ ul >
1431+ < p > The full list of compatible tags can be listed by running: < code > pip3 debug --verbose</ code > </ p >
15031432< p > Components should be supplied as a tar file, which includes not only the component library, but any other libraries or
15041433files needed for execution. This includes all other non-standard libraries used by the component
15051434(aside from the standard Python libraries), and any configuration or data files.</ p >
0 commit comments