+
    &jv                        ^ RI t ^ RIt^ RIt^ RIt^ RIt^ RIHt ^ RIHtH	t	 ^ RI
t
^ RIt]
P                  ! 4       R 4       t ! R R4      t]
P                  ! RRR	7      R
 R l4       t]
P                  ! RR7      R 4       tR# )    N)deque)	GeneratorSequencec               #  (  "   \         P                  ! R4      p V P                  P                  4        V P                  P                  4        V P                  P                  R4        V x  V P                  P                  4        V P                  P                  4        V P                  P                  R4       R#   T P                  P                  4        T P                  P                  4        T P                  P                  R4       i ; i5i)z(
Fixture providing a memory filesystem.
memory N)fsspec
filesystemstoreclearpseudo_dirsappend)ms    g/Users/jameslopez/projects/CWCArchive/cwc-podcast/.venv/lib/python3.14/site-packages/fsspec/conftest.pyr   r      s     
 	(#AGGMMOMMMM!			R  	
		R s    A&D)B> -AD>ADDc                   P   a  ] tR t^t o RtV 3R lR ltRR/V 3R lR lltRtV tR	# )
InstanceCacheInspectorzI
Helper class to inspect instance caches of filesystem classes in tests.
c                   < V ^8  d   QhRR/#    returnN )format__classdict__s   "r   __annotate__#InstanceCacheInspector.__annotate__$   s     1 1t 1    c                    \        \        P                  P                  .4      pV'       dB   VP	                  4       pVP                  4        VP                  VP                  4       4       KI  R# )zE
Clear instance caches of all currently imported filesystem classes.
N)r   r	   specAbstractFileSystempopleftclear_instance_cacheextend__subclasses__)selfclassesclss   &  r   r   InstanceCacheInspector.clear$   sP     7789//#C$$&NN3--/0 r   	omit_zeroTc                <   < V ^8  d   QhRS[ RS[S[S[3,          /# )r   r(   r   )booldictstrint)r   r   s   "r   r   r   .   s#      $ $sCx. r   c                  / p\        \        P                  P                  .4      pV'       d   VP	                  4       p\        VP                  4      p\        VP                  \        \        34      '       dT   \        VP                  \        4      '       d   VP                  MVP                  ^ ,          pV'       g	   V'       g   WRV&   VP                  VP                  4       4       K  V# )z
Gather counts of filesystem instances in the instance caches
of all currently imported filesystem classes.

Parameters
----------
omit_zero:
    Whether to omit instance types with no cached instances.
)r   r	   r   r   r    len_cache
isinstanceprotocolr   r,   r"   r#   )r$   r(   outr%   r&   countkeys   &$     r   gather_counts$InstanceCacheInspector.gather_counts.   s     !7789//#C

OE #,,388&0s&C&CcllVW	$HNN3--/0
r   r   N)	__name__
__module____qualname____firstlineno____doc__r   r6   __static_attributes____classdictcell__)r   s   @r   r   r      s*     1 1   r   r   functionT)scopeautousec                @    V ^8  d   QhR\         \        RR3,          /# r   )r   r   )r   s   "r   r   r   H   s       #94#EF r   c               #     "   \        4       p V P                  4         V x  V P                  4        R#   T P                  4        i ; i5i)a7  
Fixture to ensure empty filesystem instance caches before and after a test.

Used by default for all tests.
Clears caches of all imported filesystem classes.
Can be used to write test assertions about instance caches.

Usage:

    def test_something(instance_caches):
        # Test code here
        fsspec.open("file://abc")
        fsspec.open("memory://foo/bar")

        # Test assertion
        assert instance_caches.gather_counts() == {"file": 1, "memory": 1}

Returns
-------
instance_caches: An instance cache inspector for clearing and inspecting caches.
N)r   r   )ics    r   instance_cachesrE   G   s4     . 
 	!BHHJ


s   A	4 A	AA	)r@   c              #    "   \         P                  ! R4       \        V 4      p\        \        P
                  P                  VR4      R4      ;_uu_ 4       pVP                  RR,          4       RRR4       \        P                  ! \        P                  RRRVR	R
RRR.
4      p \        P                  ! ^4       Rx  VP                  4        VP                  4         \         P"                  ! V 4       R#   + '       g   i     L; i  \$         d     R# i ; i  TP                  4        TP                  4         \         P"                  ! T 4       i   \$         d     i i ; i; i5i)z.
Fixture providing a writable FTP filesystem.
	pyftpdlibr3   wbs   helloi'  Nz-mz-dz-uuserz-Ppassz-w)	localhostiI  rI   rJ   )pytestimportorskipr,   openospathjoinwrite
subprocessPopensys
executabletimesleep	terminatewaitshutilrmtree	Exception)tmpdirdfPs   &   r   ftp_writablerb   g   s
    
 $FA	bggll1e$d	+	+q	5 ! 
,	{D!T64QUV	A	

1//			MM&! 
,	+  			 	
		MM&! 		s~   AE+C9/6E+&D   E+!D 7E+9D		E+DE+DE+!E( EE(E%"E($E%%E((E+)rO   r[   rS   rU   rW   collectionsr   collections.abcr   r   rL   r	   fixturer   r   rE   rb   r   r   r   <module>rf      s    	   
   /   ! ! % %P j$/ 0> j! "r   