Ë
    `Qêj)  ã                   ó’   — d Z ddlZddlmZ ddlmZmZmZmZm	Z	m
Z
mZ ddlmZ ddlmZ dedefd	„Zedefd
„«       Zdefd„Zg d¢Zy)a�  
Caching and compatibility wrapper for standard library ``importlib.metadata``.

This module caches ``entry_points()`` to avoid reloading entry points from disk on every call.
It also normalizes minor differences across python versions 3.10+. References to issues:

- https://github.com/open-telemetry/opentelemetry-python/pull/4735
- https://github.com/open-telemetry/opentelemetry-python/pull/5203
é    N)Úcache)ÚDistributionÚ
EntryPointÚEntryPointsÚPackageNotFoundErrorÚdistributionsÚrequiresÚversion)Úentry_points)ÚAnyÚepsÚreturnc                 óú   ‡ — t        ‰ t        «      r‰ S t        ‰ t        «      r;t        t        j                  j                  t        j                  ‰ «      «      «      S t        ˆ fd„‰ j                  D «       «      S )Nc              3   óP   •K  — | ]  }‰j                  |¬ «      D ]  }|–— Œ Œ y­w))ÚgroupN)Úselect)Ú.0r   Úepr   s      €úk/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/opentelemetry/util/_importlib_metadata.pyú	<genexpr>z#_as_entry_points.<locals>.<genexpr>(   s(   øè ø€ ÒT˜e¸C¿J¹JÈU¸JÓ<SÒT°b”rÐT�rÑTùs   ƒ#&)Ú
isinstancer   ÚdictÚ	itertoolsÚchainÚfrom_iterableÚvaluesÚgroups)r   s   `r   Ú_as_entry_pointsr      sV   ø€ ä�#”{Ô#Øˆ
ô
 �#”tÔÜœ9Ÿ?™?×8Ñ8¼¿¹ÀSÓ9IÓJÓKÐKäÓT s§z¡zÔTÓTÐTó    c                  ó(   — t        t        «       «      S )N)r   Úoriginal_entry_points© r   r   Ú_original_entry_points_cachedr#   +   s   € äÔ1Ó3Ó4Ð4r   c                  ó6   —  t        «       j                  di | ¤ŽS )Nr"   )r#   r   )Úparamss    r   r   r   0   s   € Ø1Ô(Ó*×1Ñ1Ñ;°FÑ;Ð;r   )r   r   r   r   r   r   r	   r
   )Ú__doc__r   Ú	functoolsr   Úimportlib.metadatar   r   r   r   r   r	   r
   r   r!   Útypingr   r   r#   Ú__all__r"   r   r   ú<module>r+      sn   ðñó Ý ÷÷ ñ õ EÝ ðU˜#ð U +ó Uð ð5 {ò 5ó ð5ð<˜kó <ò	�r   