def discover_postprocessors():
    """
    Search for installed postprocessing plugins in the entrypoint 'pysteps.plugins.postprocessors'

    The postprocessors found are added to the appropriate `_methods`
    dictionary in 'pysteps.postprocessing.interface' containing the available postprocessors.
    """

    # The pkg resources needs to be reloaded to detect new packages installed during
    # the execution of the python application. For example, when the plugins are
    # installed during the tests
    import pkg_resources

    importlib.reload(pkg_resources)

    # Discover the postprocessors available in the plugins
    for plugintype in ["diagnostic", "ensemblestat"]:
        for entry_point in pkg_resources.iter_entry_points(
            group=f"pysteps.plugins.{plugintype}", name=None
        ):
            _postprocessors = entry_point.load()

            postprocessors_function_name = _postprocessors.__name__

            if plugintype in entry_point.module_name:
                add_postprocessor(
                    postprocessors_function_name,
                    _postprocessors,
                    f"{plugintype}s",
                    entry_point.attrs,
                )
Search for installed postprocessing plugins in the entrypoint 'pysteps.plugins.postprocessors'

The postprocessors found are added to the appropriate `_methods`
dictionary in 'pysteps.postprocessing.interface' containing the available postprocessors.
pysteps/postprocessing/interface.py