Skip to content

Commit 2105eb4

Browse files
authored
Merge pull request #1284 from BastianZim/add-empty
Add empty packages to docs
2 parents d285576 + 11f0ba8 commit 2105eb4

File tree

1 file changed

+25
-0
lines changed

1 file changed

+25
-0
lines changed

src/maintainer/knowledge_base.rst

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -846,6 +846,31 @@ To use this package in a build, put it in the host environment like so
846846
- pybind11-abi
847847
848848
849+
.. _knowledge:empty:
850+
851+
Empty Python packages
852+
----------
853+
For some features introduced in later Python versions, the Python community creates backports, which makes these
854+
features available for earlier versions of Python as well.
855+
One example here is `dataclasses <https://www.python.org/dev/peps/pep-0557/>`__ which was introduced with
856+
Python3.7 but is available as a `backport <https://github.com/ericvsmith/dataclasses>`__ for Python3.6 too.
857+
Therefore, most upstream packages make those backports only mandatory for specific versions of Python and exclude them otherwise.
858+
859+
Implementing this restriction in conda-forge is currently only possible through the use of ``skips``
860+
which restricts the corresponding conda-forge recipes from becoming ``noarch``.
861+
862+
Therefore, some conda-forge recipes only create an actual package on specific Python versions and are otherwise an
863+
empty placeholder. This allows them to be safely installed under all Python versions and makes using ``skips`` unnecessary.
864+
865+
Currently available packages:
866+
867+
+-------------+-------------------+--------------+
868+
| Name | Available on: | Empty on: |
869+
+=============+===================+==============+
870+
| dataclasses | python >=3.6,<3.7 | python >=3.7 |
871+
+-------------+-------------------+--------------+
872+
873+
849874
Noarch builds
850875
=============
851876

0 commit comments

Comments
 (0)