Files
tamigo-cli/venv/lib/python3.12/site-packages/dotenv/__pycache__/main.cpython-312.pyc

176 lines
19 KiB
Plaintext
Raw Normal View History

<EFBFBD>
<00><16>i[9<00><00><00>ddlZddlZddlZddlZddlZddlZddlZddlmZddl m
Z
ddl m Z m Z mZmZmZmZmZmZddlmZmZddlmZeedfZej6e<1C>Zd efd
<EFBFBD>Zd eed eefd <0C>Z Gd <0A>d<0E>Z! d+dededeed eefd<12>Z"e
d,dedeeded eee ee effd<15><05>Z# d-dedededededeeded eeeeeffd<1A>Z$ d.dedededeeded eeeeff d<1C>Z%deeeeefded eeeeffd<1F>Z&ded eefd <20>Z' d/d!ed"ed#ed efd$<24>Z( d0deed%ee ed&eded'edeed efd(<28>Z) d1deed%ee ed&ed'edeed e eeeff d)<29>Z*ded efd*<2A>Z+y)2<>N)<01> OrderedDict)<01>contextmanager)<08>IO<49>Dict<63>Iterable<6C>Iterator<6F>Mapping<6E>Optional<61>Tuple<6C>Union<6F>)<02>Binding<6E> parse_stream)<01>parse_variableszos.PathLike[str]<5D>returnc<00>r<00>dtjvrytjdj<00>}|dvS)z8
Determine if dotenv loading has been disabled.
<20>PYTHON_DOTENV_DISABLEDF><00>1<>t<>y<>yes<65>true)<03>os<6F>environ<6F>casefold)<01>values <20>Q/home/daniel/Projects/tamigo-cli/venv/lib/python3.12/site-packages/dotenv/main.py<70>_load_dotenv_disabledrs7<00><00> <20>r<EFBFBD>z<EFBFBD>z<EFBFBD>1<><14> <0E>J<EFBFBD>J<EFBFBD>/<2F> 0<> 9<> 9<> ;<3B>E<EFBFBD> <10>2<> 2<>2<><00>mappingsc#<00><>K<00>|D]<}|jr*tjd|jj<00>|<01><01><00>>y<00>w)Nz;python-dotenv could not parse statement starting at line %s)<05>error<6F>logger<65>warning<6E>original<61>line)r <00>mappings r<00>with_warn_for_invalid_linesr( sA<00><00><><00><1B><16><07> <12>=<3D>=<3D> <12>N<EFBFBD>N<EFBFBD>M<><17> <20> <20>%<25>%<25> <0E><16> <0A> <16>s<00>AAc<00><><00>eZdZ ddeedeeededeedededdfd <09>Ze de
eefd
<EFBFBD><04>Z de eeeffd <0B>Z de
eeeeffd <0C>Zdefd <0A>Zdedeefd<0F>Zy)<11>DotEnvN<76> dotenv_path<74>stream<61>verbose<73>encoding<6E> interpolate<74>overriderc<00>f<00>||_||_d|_||_||_||_||_y<00>N)r+r,<00>_dictr-r.r/r0)<07>selfr+r,r-r.r/r0s r<00>__init__zDotEnv.__init__+s7<00><00>/:<3A><04><18>)/<2F><04> <0B>9=<3D><04>
<EFBFBD>$<24><04> <0C>'/<2F><04> <0A>!,<2C><04><18>&<26><04> rc#<00><>K<00>|jrDt|j<00>r/t|j|j<00><01>5}|<01><02>ddd<00>y|j<00>|j<00><01>y|j
r$t jd|jxsd<03>tjd<04><00><01>y#1swYyxYw<01>w)N<>r.z3python-dotenv could not find configuration file %s.<2E>.env<6E>)
r+<00>_is_file_or_fifo<66>openr.r,r-r#<00>info<66>io<69>StringIO)r4r,s r<00> _get_streamzDotEnv._get_stream<s<><00><00><><00> <0F> <1B> <1B> 0<><14>1A<31>1A<31> B<><15>d<EFBFBD>&<26>&<26><14><1D><1D>?<3F> <1D>6<EFBFBD><1C> <0C> <1D> <1D> <11>[<5B>[<5B> $<24><16>+<2B>+<2B> <1D><13>|<7C>|<7C><16> <0B> <0B>I<><18>$<24>$<24>.<2E><06><12><15>+<2B>+<2B>b<EFBFBD>/<2F> !<21> <1D> <1D>s<00>AC<01>B6<03>
A,C<01>6B?<07>;Cc<00><00>|jr |jS|j<00>}|jr1tt ||j
<00><01><00>|_|jSt|<01>|_|jS)zReturn dotenv as dict)r0)r3<00>parser/r<00>resolve_variablesr0)r4<00>
raw_valuess r<00>dictz DotEnv.dictKse<00><00> <0F>:<3A>:<3A><17>:<3A>:<3A> <1D><19>Z<EFBFBD>Z<EFBFBD>\<5C>
<EFBFBD> <0F> <1B> <1B>$<24>!<21>*<2A>t<EFBFBD>}<7D>}<7D>E<><0E>D<EFBFBD>J<EFBFBD> <14>z<EFBFBD>z<EFBFBD><19>%<25>Z<EFBFBD>0<>D<EFBFBD>J<EFBFBD><13>z<EFBFBD>z<EFBFBD>rc#<00><>K<00>|j<00>5}tt|<01><00>D])}|j<00><01>|j|jf<02><02><00>+ ddd<00>y#1swYyxYw<01>wr2)r?r(r<00>keyr)r4r,r's rrAz DotEnv.parse[s^<00><00><><00> <11> <1D> <1D> <1F> 5<>6<EFBFBD>6<>|<7C>F<EFBFBD>7K<37>L<> 5<><07><1A>;<3B>;<3B>*<2A>!<21>+<2B>+<2B>w<EFBFBD>}<7D>}<7D>4<>4<> 5<> 5<> 5<> 5<>s!<00>A*<01>$A<03>A<03> A*<01>A'<07>#A*c<00><><00>|j<00>sy|j<00>j<00>D]:\}}|tjvr |js<01>%|<02><01>(|tj|<<00><y)zI
Load the current dotenv as system environment variable.
FT)rD<00>itemsrrr0)r4<00>k<>vs r<00>set_as_environment_variablesz#DotEnv.set_as_environment_variablesas]<00><00><14>y<EFBFBD>y<EFBFBD>{<7B><18><18>I<EFBFBD>I<EFBFBD>K<EFBFBD>%<25>%<25>'<27> "<22>D<EFBFBD>A<EFBFBD>q<EFBFBD><10>B<EFBFBD>J<EFBFBD>J<EFBFBD><EFBFBD>t<EFBFBD>}<7D>}<7D><18><10>}<7D> !<21><02>
<EFBFBD>
<EFBFBD>1<EFBFBD> <0A>  "<22> rrFc<00><><00>|j<00>}||vr||S|jr!tjd||j<00>y)<03> zKey %s not found in %s.N)rDr-r#r$r+)r4rF<00>datas r<00>getz
DotEnv.getps?<00><00><13>y<EFBFBD>y<EFBFBD>{<7B><04> <0E>$<24>;<3B><17><03>9<EFBFBD> <1C> <0F><<3C><<3C> <12>N<EFBFBD>N<EFBFBD>4<>c<EFBFBD>4<EFBFBD>;K<>;K<> L<>r)NFNTT)<12>__name__<5F>
__module__<EFBFBD> __qualname__r
<00>StrPathr<00>str<74>boolr5rrr?rrDr rArKrO<00>rrr*r**s<><00><00>%)<29><1D>"&<26> <20><1D>'<27><1D>g<EFBFBD>&<26>'<27><19><12>C<EFBFBD><17>!<21>'<27><16> '<27>
<1B>3<EFBFBD>-<2D> '<27> <1A> '<27><17>'<27>
<0E>'<27>"<14> "<22>X<EFBFBD>b<EFBFBD><13>g<EFBFBD>.<2E> "<22><14> "<22><1A>d<EFBFBD>3<EFBFBD><08><13> <0A>-<2D>.<2E><1A> 5<>x<EFBFBD><05>c<EFBFBD>8<EFBFBD>C<EFBFBD>=<3D>&8<> 9<>:<3A>5<> <14>d<EFBFBD> <14>
<14>s<EFBFBD>
<14>x<EFBFBD><03>}<7D>
rr*r+<00>
key_to_getr.c<00><<00>t|d|<02><02>j|<01>S)z
Get the value of a given key from the given .env.
Returns `None` if the key isn't found or doesn't have a value.
T)r-r.)r*rO)r+rWr.s r<00>get_keyrY}s<00><00> <12>+<2B>t<EFBFBD>h<EFBFBD> ?<3F> C<> C<>J<EFBFBD> O<>Or<00>path<74>follow_symlinksc #<00><>K<00>|rtjj|<00>} t||<01><01>} tj|<00>}t j |j<00>rt j|j<00>nd} tjd|ddtjj!tjj#|<00><00><00><06>5}t%j&|j(<00>}d} |5||f<02><04>ddd<00>ddd<00><08>0 |<05>tj*|<05>tj,|<00>yj/d<07><08>|d<00>#t$r|j<00><00>wxYw#t$rtjd<02>}d}Y<00><01>wxYw#1swY<00><>xYw#t$r } | }Yd} ~ <09><>d} ~ wwxYw#1swY<00><>xYw#t$rj/d<07><08><00>wxYw<01>w) Nr7r9<00>wFz.tmp_)<05>moder.<00>delete<74>prefix<69>dirT)<01>
missing_ok)rrZ<00>realpathr;<00>lstat<61>stat<61>S_ISREG<45>st_mode<64>S_IMODE<44> BaseException<6F>close<73>FileNotFoundErrorr=r><00>tempfile<6C>NamedTemporaryFile<6C>dirname<6D>abspath<74>pathlib<69>Path<74>name<6D>chmod<6F>replace<63>unlink)
rZr.r[<00>source<63> path_stat<61> original_mode<64>dest<73> dest_pathr"<00>errs
r<00>rewriter|<00>s<><00><00><><00> <17><11>w<EFBFBD>w<EFBFBD><1F><1F><04>%<25><04><1D><1E>t<EFBFBD>h<EFBFBD>7<><06> <12><1A><08><08><14><0E>I<EFBFBD><18><<3C><<3C> <09> 1<> 1<>2<><15> <0C> <0C>Y<EFBFBD>.<2E>.<2E>/<2F><19> <1A>
<12> $<24> $<24> <10><19><14><16> <0E>G<EFBFBD>G<EFBFBD>O<EFBFBD>O<EFBFBD>B<EFBFBD>G<EFBFBD>G<EFBFBD>O<EFBFBD>O<EFBFBD>D<EFBFBD>1<> 2<> 
<06><18>
<0E><1B>L<EFBFBD>L<EFBFBD><14><19><19>+<2B> <09><14><05> <18><17> %<25><1D>t<EFBFBD>n<EFBFBD>$<24> %<25><18>  <0A>}<7D> <12><1C>(<28><12><08><08><19>M<EFBFBD>2<> <0E>J<EFBFBD>J<EFBFBD>y<EFBFBD>$<24> '<27>
<12><18><18>D<EFBFBD><18>)<29><13><14><1D><>E<1D> <12> <12>L<EFBFBD>L<EFBFBD>N<EFBFBD> <11> <12><> <1D><1D><13><1B><1B>R<EFBFBD><1F><06><1C> <0A><1D><> %<25> %<25><><1C> <18><17>E<EFBFBD><45> <18><><18><18><>,<1D> <12> <15> <1C> <1C><04> <1C> -<2D> <11> <12>s<EFBFBD><00>"G5<01> E><00>AE <00>AG5<01>"G <03>F1<02>F%<05> F1<02>
G5<01>.G<00>
G5<01> E;<03>;E><00>> F"<03>G5<01>!F"<03>"G5<01>%F. <09>*F1<02>1 G<05>:G<05><G <03>G<05>G <03> G<07>G5<01>G2<03>2G5<01>
key_to_set<EFBFBD> value_to_set<65>
quote_mode<EFBFBD>exportc<00><><00>|dvrtd|<03><00><02><00>|dk(xs|dk(xr|j<00> }|r"dj|jdd<07><00>}n|}|r
d|<01>d |<08>d
<EFBFBD>} n|<01>d |<08>d
<EFBFBD>} t |||<06> <0B>5\}
} d } d } t t |
<EFBFBD><00>D]p}|j|k(r| j| <09>d } <0C>&| j|jj<00>|jjjd
<EFBFBD> } <0A>r| s$| r| jd
<EFBFBD>| j| <09>ddd<0E>d ||fS#1swY<00>xYw)aS
Adds or Updates a key/value to the given .env
The target .env file is created if it doesn't exist.
This function doesn't follow symlinks by default, to avoid accidentally
modifying a file at a potentially untrusted path. If you don't need this
protection and need symlinks to be followed, use `follow_symlinks`.
)<03>always<79>auto<74>neverzUnknown quote_mode: r<>r<>z'{}'<27>'z\'zexport <20>=<3D>
<EFBFBD>r.r[FTN) <0C>
ValueError<EFBFBD>isalnum<75>formatrtr|r(rrF<00>writer%<00>string<6E>endswith)r+r}r~rr<>r.r[<00>quote<74> value_out<75>line_outrvry<00>replaced<65>missing_newliner's r<00>set_keyr<79><00>sn<00><00>$<12>4<>4<><18>/<2F>
<EFBFBD>|<7C><<3C>=<3D>=<3D> <16>(<28> "<22> <06><12>f<EFBFBD><1C>;<3B>\<5C>%9<>%9<>%;<3B>!;<3B>
<EFBFBD> <0A><1A>M<EFBFBD>M<EFBFBD>,<2C>"6<>"6<>s<EFBFBD>E<EFBFBD>"B<>C<> <09> <20> <09> <0A><1C>Z<EFBFBD>L<EFBFBD><01>)<29><1B>B<EFBFBD>7<><08> <20>\<5C><11>9<EFBFBD>+<2B>R<EFBFBD>0<><08> <10><1B>x<EFBFBD><1F> Q<>!<21>V<06><0E> <0C><18><08><1F><0F>2<><<3C><06>3G<33>H<> M<01>G<EFBFBD><16>{<7B>{<7B>j<EFBFBD>(<28><14>
<EFBFBD>
<EFBFBD>8<EFBFBD>$<24><1F><08><14>
<EFBFBD>
<EFBFBD>7<EFBFBD>+<2B>+<2B>2<>2<>3<>&-<2D>&6<>&6<>&=<3D>&=<3D>&F<>&F<>t<EFBFBD>&L<>"L<><0F>  M<01><18><1E><14>
<EFBFBD>
<EFBFBD>4<EFBFBD> <20> <10>J<EFBFBD>J<EFBFBD>x<EFBFBD> <20>!!<21>$ <10><1A>\<5C> )<29>)<29>%!<21>!<21>s <00>:B5D<<03><E<07> key_to_unsetc<00><><00>tjj|<00>stj d|<00>d|fSd}t |||<04><04>5\}}t t|<06><00>D]9}|j|k(rd}<05>|j|jj<00><00>; ddd<02>|stj d||<00>d|fS||fS#1swY<00>*xYw)a<>
Removes a given key from the given `.env` file.
If the .env path given doesn't exist, fails.
If the given key doesn't exist in the .env, fails.
This function doesn't follow symlinks by default, to avoid accidentally
modifying a file at a potentially untrusted path. If you don't need this
protection and need symlinks to be followed, use `follow_symlinks`.
z(Can't delete from %s - it doesn't exist.NFr<46>Tz/Key %s not removed from %s - key doesn't exist.) rrZ<00>existsr#r$r|r(rrFr<>r%r<>) r+r<>rr.r[<00>removedrvryr's r<00> unset_keyr<79><00>s<><00><00>" <0E>7<EFBFBD>7<EFBFBD>><3E>><3E>+<2B> &<26><0E><0E><0E>A<>;<3B>O<><13>\<5C>!<21>!<21><13>G<EFBFBD> <10><1B>x<EFBFBD><1F> Q<>4<>V<06><0E> <0C>2<><<3C><06>3G<33>H<> 4<>G<EFBFBD><16>{<7B>{<7B>l<EFBFBD>*<2A><1E><07><14>
<EFBFBD>
<EFBFBD>7<EFBFBD>+<2B>+<2B>2<>2<>3<>  4<> 4<> <13><0E><0E><0E> =<3D>|<7C>[<5B>
<EFBFBD><14>\<5C>!<21>!<21> <12>L<EFBFBD> <20> <20>!4<>4<>s <00>
AC<03>C<07>valuesr0c<00>H<00><07>i}|D]<5D>\}}|<04>d}n<>t|<04>}i<00>|r1<72>jtj<00><00>j|<02>n0<6E>j|<02><00>jtj<00>dj <00>fd<02>|D<00><00>}|||<<00><>|S)Nr9c3<00>@<00>K<00>|]}|j<00><02><00><01><00>y<00>wr2)<01>resolve)<03>.0<EFBFBD>atom<6F>envs <20>r<00> <genexpr>z$resolve_variables.<locals>.<genexpr>3s<00><><00><><00>A<>4<EFBFBD>T<EFBFBD>\<5C>\<5C>#<23>.<2E>A<>s<00>)r<00>updaterr<00>join)r<>r0<00>
new_valuesrrr<00>result<6C>atomsr<73>s @rrBrB!s<><00><><00>,.<2E>J<EFBFBD><1D>"<22> <0B><04>e<EFBFBD> <10>=<3D><19>F<EFBFBD>#<23>E<EFBFBD>*<2A>E<EFBFBD>,.<2E>C<EFBFBD><17><13>
<EFBFBD>
<EFBFBD>2<EFBFBD>:<3A>:<3A>&<26><13>
<EFBFBD>
<EFBFBD>:<3A>&<26><13>
<EFBFBD>
<EFBFBD>:<3A>&<26><13>
<EFBFBD>
<EFBFBD>2<EFBFBD>:<3A>:<3A>&<26><17>W<EFBFBD>W<EFBFBD>A<>5<EFBFBD>A<>A<>F<EFBFBD>!<21>
<EFBFBD>4<EFBFBD><18>"<22> <16>rc#<00><>K<00>tjj|<00>s td<01><00>tjj |<00>rtjj |<00>}d}tjj |<00>}||k7rd|<02><01>tjj tjj|tjj<00><00>}||}}||k7r<01>cyy<02>w)zL
Yield directories starting from the given directory up to the root
zStarting path not foundN) rrZr<><00>IOError<6F>isfilernror<><00>pardir)rZ<00>last_dir<69> current_dir<69>
parent_dirs r<00> _walk_to_rootr<74>:s<><00><00><><00> <0E>7<EFBFBD>7<EFBFBD>><3E>><3E>$<24> <1F><15>/<2F>0<>0<> <09>w<EFBFBD>w<EFBFBD>~<7E>~<7E>d<EFBFBD><1B><11>w<EFBFBD>w<EFBFBD><EFBFBD><EFBFBD>t<EFBFBD>$<24><04><13>H<EFBFBD><14>'<27>'<27>/<2F>/<2F>$<24>'<27>K<EFBFBD>
<12>k<EFBFBD>
!<21><19><19><17>W<EFBFBD>W<EFBFBD>_<EFBFBD>_<EFBFBD>R<EFBFBD>W<EFBFBD>W<EFBFBD>\<5C>\<5C>+<2B>r<EFBFBD>w<EFBFBD>w<EFBFBD>~<7E>~<7E>%N<>O<>
<EFBFBD> +<2B>Z<EFBFBD>+<2B><08> <13>k<EFBFBD>
!<21>s <00>C1C6<01>4C6<01>filename<6D>raise_error_if_not_found<6E>usecwdc<00>V<00>d<01>}d<02>}|s|<03>s|<04>sttdd<04>rtj<00>}<05>n tj<00>}t
}|j j|k(s3tjj|j j<00>sh|j<00>J<00>|j}|j j|k(r<01>4tjj|j j<00>s<01>h|j j}tjjtjj|<08><00>}t|<05>D]1} tjj| |<00>}
t|
<EFBFBD>s<01>/|
cS|r t!d<05><00>y)z<>
Search in increasingly higher folders for the given file
Returns path to the file if found, or an empty string otherwise
c<00><><00>ttd<01>sttd<02>ry tddddg<01><07>}t|d<06> S#t$rYywxYw) z<Decide whether this is running in a REPL or IPython notebook<6F>ps1<73>ps2T<32>__main__N<5F>__file__)<01>fromlistF)<04>hasattr<74>sys<79>
__import__<EFBFBD>ModuleNotFoundError)<01>mains r<00>_is_interactivez$find_dotenv.<locals>._is_interactiveWsU<00><00> <12>3<EFBFBD><05> <1E>'<27>#<23>u<EFBFBD>"5<><17> <19><1D>j<EFBFBD>$<24><04>
<EFBFBD>|<7C>L<>D<EFBFBD><1B>4<EFBFBD><1A>,<2C>,<2C>,<2C><>#<23> <19><18> <19>s<00>A<00> A <03> A c<00>.<00>tj<00>duSr2)r<><00>gettracerVrr<00> _is_debuggerz!find_dotenv.<locals>._is_debuggeras<00><00><12>|<7C>|<7C>~<7E>T<EFBFBD>)<29>)r<00>frozenFzFile not foundr9)<11>getattrr<72>r<00>getcwd<77> _getframer<65><00>f_code<64> co_filenamerZr<><00>f_backrnror<>r<>r:r<>) r<>r<>r<>r<>r<>rZ<00>frame<6D> current_file<6C>frame_filenamern<00>
check_paths r<00> find_dotenvr<76>Ls5<00><00>-<2D>*<2A><0E><1F>"<22>l<EFBFBD>n<EFBFBD><07><03>X<EFBFBD>u<EFBFBD>8U<38><11>y<EFBFBD>y<EFBFBD>{<7B><04><14> <0A> <0A><0F><05><1F> <0C><13>l<EFBFBD>l<EFBFBD>&<26>&<26>,<2C>6<>b<EFBFBD>g<EFBFBD>g<EFBFBD>n<EFBFBD>n<EFBFBD> <11>L<EFBFBD>L<EFBFBD> $<24> $<24>?
<EFBFBD><19><<3C><<3C>+<2B> +<2B>+<2B><19>L<EFBFBD>L<EFBFBD>E<EFBFBD> <14>l<EFBFBD>l<EFBFBD>&<26>&<26>,<2C>6<>b<EFBFBD>g<EFBFBD>g<EFBFBD>n<EFBFBD>n<EFBFBD> <11>L<EFBFBD>L<EFBFBD> $<24> $<24>?
<EFBFBD>
<1F><1C><1C>1<>1<><0E><11>w<EFBFBD>w<EFBFBD><EFBFBD><EFBFBD>r<EFBFBD>w<EFBFBD>w<EFBFBD><EFBFBD><EFBFBD>~<7E>><3E>?<3F><04> <20><14>&<26><1E><07><17>W<EFBFBD>W<EFBFBD>\<5C>\<5C>'<27>8<EFBFBD>4<>
<EFBFBD> <1B>J<EFBFBD> '<27><1D> <1D><1E>
 <20><15>&<26>'<27>'<27> rr,r-r/c<00><><00>t<00>rtjd<01>y|<00> |<01>
t<00>}t ||||||<05><03>}|j <00>S)aParse a .env file and then load all the variables found as environment variables.
Parameters:
dotenv_path: Absolute or relative path to .env file.
stream: Text stream (such as `io.StringIO`) with .env content, used if
`dotenv_path` is `None`.
verbose: Whether to output a warning the .env file is missing.
override: Whether to override the system environment variables with the variables
from the `.env` file.
encoding: Encoding to be used to read the file.
Returns:
Bool: True if at least one environment variable is set else False
If both `dotenv_path` and `stream` are `None`, `find_dotenv()` is used to find the
.env file with it's default parameters. If you need to change the default parameters
of `find_dotenv()`, you can explicitly call `find_dotenv()` and pass the result
to this function as `dotenv_path`.
If the environment variable `PYTHON_DOTENV_DISABLED` is set to a truthy value,
.env loading is disabled.
zSpython-dotenv: .env loading disabled by PYTHON_DOTENV_DISABLED environment variableF<65>r+r,r-r/r0r.)rr#<00>debugr<67>r*rK)r+r,r-r0r/r.<00>dotenvs r<00> load_dotenvr<76>s\<00><00>:<1D><1E><0E> <0C> <0C> a<>
<EFBFBD><15><12><1A>v<EFBFBD>~<7E>!<21>m<EFBFBD> <0B> <13><1F><15><17><1F><19><19> <06>F<EFBFBD> <12> .<2E> .<2E> 0<>0rc<00>\<00>|<00> |<01>
t<00>}t||||d|<04><02>j<00>S)a<>
Parse a .env file and return its content as a dict.
The returned dict will have `None` values for keys without values in the .env file.
For example, `foo=bar` results in `{"foo": "bar"}` whereas `foo` alone results in
`{"foo": None}`
Parameters:
dotenv_path: Absolute or relative path to the .env file.
stream: `StringIO` object with .env content, used if `dotenv_path` is `None`.
verbose: Whether to output a warning if the .env file is missing.
encoding: Encoding to be used to read the file.
If both `dotenv_path` and `stream` are `None`, `find_dotenv()` is used to find the
.env file.
Tr<54>)r<>r*rD)r+r,r-r/r.s r<00> dotenv_valuesr<73><00>s=<00><00>.<13><1A>v<EFBFBD>~<7E>!<21>m<EFBFBD> <0B> <11><1F><15><17><1F><15><19>  <06> <0B>d<EFBFBD>f<EFBFBD> rc<00><><00>tjj|<00>ry tj|<00>}tj |j<00>S#tt
f$rYywxYw)zN
Return True if `path` exists and is either a regular file or a FIFO.
TF)rrZr<>rerk<00>OSError<6F>S_ISFIFOrg)rZ<00>sts rr:r:<00>sW<00><00>
<EFBFBD>w<EFBFBD>w<EFBFBD>~<7E>~<7E>d<EFBFBD><1B><13><15> <0F>W<EFBFBD>W<EFBFBD>T<EFBFBD>]<5D><02> <10>=<3D>=<3D><12><1A><1A> $<24>$<24><> <1E>w<EFBFBD> '<27><15><14><15>s<00>A<00>A(<03>'A()<01>utf-8)F)r<>Fr<46>F)r<>r<>F)r8FF)NNFFTr<54>)NNFTr<54>),r=<00>loggingrrprer<>rl<00> collectionsr<00>
contextlibr<00>typingrrrrr r
r r <00>parserrr<00> variablesrrTrS<00> getLoggerrPr#rUrr(r*rYr|r<>r<>rBr<>r<>r<>r<>r:rVrr<00><module>r<>sh<00><01> <09><0E> <09><0E> <0B>
<EFBFBD><0F>#<23>%<25>P<>P<>P<>)<29>&<26> <10><03>'<27>'<27>
(<28><07> <1A><17> <1A> <1A>8<EFBFBD> $<24><06>3<>t<EFBFBD>3<><16>(<28>7<EFBFBD>*;<3B><16><08><17>@Q<><16>P<14>P<14>l&<26>
P<01><18>
P<01><13>
P<01><17>s<EFBFBD>m<EFBFBD>
P<01><0E>c<EFBFBD>]<5D>
P<01><10>"<22>3<1E>
<11>3<1E><16>s<EFBFBD>m<EFBFBD>3<1E><1A>3<1E><0E>e<EFBFBD>B<EFBFBD>s<EFBFBD>G<EFBFBD>R<EFBFBD><03>W<EFBFBD>$<24>%<25>&<26> 3<1E><10>3<1E>t<1F><18>%<25>!<21>4*<2A><18>4*<2A><13>4*<2A><16>4*<2A><14> 4*<2A>
<11> 4*<2A> <17>s<EFBFBD>m<EFBFBD> 4*<2A><1A>4*<2A> <0B>8<EFBFBD>D<EFBFBD>><3E>3<EFBFBD><03> #<23>$<24>4*<2A>t<1F>%<25>!<21> &!<21><18>&!<21><15>&!<21><14>&!<21><17>s<EFBFBD>m<EFBFBD> &!<21>
<1A> &!<21>  <0B>8<EFBFBD>D<EFBFBD>><3E>3<EFBFBD> <1E><1F> &!<21>R<16> <14>U<EFBFBD>3<EFBFBD><08><13> <0A>-<2D>.<2E> /<2F><16><12><16> <0A>S<EFBFBD>(<28>3<EFBFBD>-<2D> <1F> <20><16>28<><03>8<><08><13> <0A>8<>&<1B>%*<2A><18>0<0E><11>0<0E>"<22>0<0E> <11>0<0E> <09> 0<0E>h&*<2A> $<24><19><1A><1C>%<25> .1<><19>'<27>"<22>.1<> <14>R<EFBFBD><03>W<EFBFBD> <1D>.1<><12>.1<><13> .1<>
<16> .1<> <17>s<EFBFBD>m<EFBFBD> .1<>
<EFBFBD>.1<>d&*<2A> $<24><19><1C>%<25> ! <0A><19>'<27>"<22>! <0A> <14>R<EFBFBD><03>W<EFBFBD> <1D>! <0A><12>! <0A><16> ! <0A>
<17>s<EFBFBD>m<EFBFBD> ! <0A> 
<EFBFBD>#<23>x<EFBFBD><03>}<7D>
<1C><1D> ! <0A>H %<25>7<EFBFBD> %<25>t<EFBFBD> %r