From 39e93c354f1ae03b05364cdf29ce339fa92fd0fd Mon Sep 17 00:00:00 2001 From: "Elf M. Sternberg" Date: Sat, 3 Sep 2016 13:22:44 -0700 Subject: [PATCH] Better, I think. --- README.rst | 4 ++-- docs/_sources/details.txt | 3 ++- docs/_sources/eli5.txt | 35 ++++++++++++++++++------------- docs/details.html | 3 ++- docs/doctrees/details.doctree | Bin 29142 -> 29493 bytes docs/doctrees/eli5.doctree | Bin 6701 -> 7683 bytes docs/doctrees/environment.pickle | Bin 18231 -> 18697 bytes docs/doctrees/history.doctree | Bin 2776 -> 2778 bytes docs/doctrees/index.doctree | Bin 5674 -> 5679 bytes docs/doctrees/polyloader.doctree | Bin 5281 -> 5286 bytes docs/doctrees/readme.doctree | Bin 15488 -> 15504 bytes docs/doctrees/todo.doctree | Bin 3951 -> 3953 bytes docs/doctrees/usage.doctree | Bin 4735 -> 4737 bytes docs/eli5.html | 25 +++++++++++++--------- docs/objects.inv | 4 +++- docs/readme.html | 4 ++-- docs/searchindex.js | 2 +- docs/src/details.rst | 3 ++- docs/src/eli5.rst | 35 ++++++++++++++++++------------- 19 files changed, 71 insertions(+), 47 deletions(-) diff --git a/README.rst b/README.rst index 10e9bb3..c8506af 100644 --- a/README.rst +++ b/README.rst @@ -22,7 +22,7 @@ limitations: 2. For filesystem-based modules (which is 99% of them) Python's importer only understands one loader type per directory. It's not possible to store code or data written in something other than Python in the same - directory with Python module code and load it via ``import``. + directory with Python module code and load both via ``import``. The former requires a certain degree of abstraction and thought. For the latter, most people ignore the problem and load module configuration @@ -37,7 +37,7 @@ What's the real problem? The real problem is that Python's traditional extensions, ``.py``, ``.pyc/.pyo``, and ``.so/.dll`` files, are hard-coded in Python. In -Python 2, they're in the ``imp`` builtin; In Python 3, they're defined +Python 2, they're in the ``_imp`` builtin; In Python 3, they're defined in a private section of `importlib`. Either way, they're not accessible for modification and extension. diff --git a/docs/_sources/details.txt b/docs/_sources/details.txt index fc64dd2..b5e8692 100644 --- a/docs/_sources/details.txt +++ b/docs/_sources/details.txt @@ -108,4 +108,5 @@ path where you believe Python modules can be found, and list through them. This facility is useful for large frameworks where a user wants to add new commands, or new objects, or new operations; Django uses this facility a lot! The ``pkgutil`` library depends upon Finders being able -to iterate their contents. +to iterate their contents, and with the filesystem iterator, that means +being able to tell there's more than one kind of syntax in a directory. diff --git a/docs/_sources/eli5.txt b/docs/_sources/eli5.txt index 667777f..2bfa0f4 100644 --- a/docs/_sources/eli5.txt +++ b/docs/_sources/eli5.txt @@ -1,6 +1,20 @@ ELI5: Explain Like I'm Five! ============================ +.. _eli5-metapaths: + +Meta Paths +========== + +TODO + +.. _eli5-pathhooks: + +Path Hooks +========== + +TODO + .. _eli5-finders: Finders @@ -15,23 +29,16 @@ Loaders TODO -.. _eli5-pathhooks: - -Path Hooks -========== - -TODO - -.. _eli5-metapaths: - -Meta Paths -========== - -TODO - .. _eli5-specs: Module Specifications ===================== TODO + +.. _eli5-iterate-modules: + +Pkgutil Iterate Modules +======================= + +TODO diff --git a/docs/details.html b/docs/details.html index bb80d05..423aa0a 100644 --- a/docs/details.html +++ b/docs/details.html @@ -142,7 +142,8 @@ path where you believe Python modules can be found, and list through them. This facility is useful for large frameworks where a user wants to add new commands, or new objects, or new operations; Django uses this facility a lot! The pkgutil library depends upon Finders being able -to iterate their contents.

+to iterate their contents, and with the filesystem iterator, that means +being able to tell there’s more than one kind of syntax in a directory.

diff --git a/docs/doctrees/details.doctree b/docs/doctrees/details.doctree index 3f156c3445f734ade92fcf383994db82070805bf..b8afd71270f18c1435fbce620a5d8157225933e3 100644 GIT binary patch delta 435 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 literal 6701 zcmbVRcYGYh6_#byQ?-mRwk7N20tZHtZEP^27YiHNX9FG((n%-1_eu)sBq8;CvwKZG6aVsu_IBRB`Cj>EXWl;D)|kz?S>Lm4 zHR`xIQ^jalFdZ)@mYjS@GzMa6g0(wF!Sv>frV>qoXiiMU8X6iPG2%tT<4Uw7r}|0a z=6u_XtD>2;@>bUHEZ0$@H96IZho)_98_8Qv&Xh{DEmUN-YiL>f!c=!jk6^j$9#kS$ zB_)fY!Hxy(0uAD!UT0EEv=wqdiLQmIfe3FrZq5~L!*b%bbZZEDtGiopjF3E3qsPeXP4^NM)uArc%Z<^0GW7j$_?fUrOXI ztz2JbP0^oZv7DK8rA~!7KFRtF-*fY>>p8Axrj=(%Ppp_+!dfZAR!)f%0Dmn9?}! zVzH`(4)bodN{^##j!-s7tdRnEoiW8)-osi;M%VFP)>=yBdY`prxn<{&9I+uKPE0Ib zb;`_Af@9(&EV@J>PR62>#%z?wQ&W`cA^ zd_3iIc)=svI~J#Uzd46JV&Z?>y98O>8HinQj+5>4{fyyf7Q^99m^J};DMFbH#BK^@ z8R#1wji>dRi`LS3mG>>-B(aCwPbSD~_#Or^o?^|&x0Mrn`2a=I6h-1^Oh3bEne7Y2 zWiZ1U0NF?hVJoq)u|m?AXkxKt&0IP&pVq`*9*8S=8=q8sGv7k?_Sd9KumoSv2TY_* zT$$j#yv-z|tz?v~s0$0%t_s8yA0SY$dv$^nkJkj^S_+=_rHN>}ybd1j3n}B8t5l8g zh%0T3kgn$wHPh2z;D$gL!~j8EQ+(y>QIXzTm zO7rogdZv0yd_1|DkEg)S?SXhI*&&=;D}3A$hy}83EmcxD18{Tj{4vl6_M$224TB}Sgj*U((#@i`$QcLn0P z0IVsmqDy!Rb4zNqK&anTV7S7GN(xrWPT*5czshAYM%QBDA|Iyxbj#mypde zFE6dKrg?c;J!>mUyu7@cmsh~fD+BQ=vO_p`S9rN65U(aXHN2G1apI*EqUPl_b$A&f zUREB#%e{ekEs$$@c^&WI_mp{geN71B4GF%A4{2WBh`NP$XkG?Nyu67I(OjhR%^@%M z1>!B_J7skbRggrE5^sgm_g3@rwi+`LFCi?z-X8H%h42pK>z#pk7v+o4?yK-}e<0pX zHp{%cr^=e<<-PT+tts*HzG`0H4?7$GnL;@hkZw_$zuoj`n-^{V+o#UJ);lebOZDJb zne3~MPc~sLg(#afZc8<8YlK@{{ck)#E+AalM!yqNTaV6axhkj^vuwxw+YiYYegfHn zYZUnb@}+L@om#c4tcu{f_25{8Us)4;59aFNdo}K|YTUjEcX9CK0tLUEexES-^3hv2 z_~S4i!S~}QkjLX%3Z8ta8~h5bdO}$h!LQVVV+}rD6Z|U7)xodUxC7O=gAwlH;K>CF zehvLjOl>+k^ZI(JjvRuT-YFy>o7)- zq^o+HRdPL~DY*ex)>Ya~^$sgfge;IJ(UV?$L0OW%>B3D&$%LMEGCgclrsrACw34S_ zShcI>rR#X6lZ#zx*gkqE;{IYPRuuXF~a>C2wBIVDH&1b!}uJy+(?EGhy6 zpOKcSG6w_YygbAGL1aBIgpVKhum;-Hg3;_8tbJ16ee=mw~-8a z9*LWCX2zeE=Mxg^H47PhuPblfHWfEbPhJ4|VK(UcUeWiChJPUewUBFBPhLcWE^6>N zejz=A4BtB1!~bMOnO*pqp7s)^+mMw4BtCnsY4f z8B1B7E9Gu2?a$%>I+!*KhGnOX9J+4QhLU^maDfdX)Izy}sVt+kDpF#TP&&+(n$C>e ztHHv+i^}wKh_YbIeOla$o`#EcY~e+bj$tc#nU?oa_Rurcjio3nmut+9uxXd3cST;I zmAmP6C>H=q?$^?uMT|)XF>Cg{{K$5BCEdp&D0+#m3Xv?Qnq)aeYVCT;h(fxqrg2X? zXDK5C0-_{dqvy6`qbb4*YffHEYV^h#ne?oc^SHbYlF2soN^2IWOp#(U+dl!9uBZFf zsOKxwG#dZ^yN>b(0_Z_A%tMEbUT5%vbqDDJYo9h96WwG`oq-_9y7jWGkdW2VPE|l- zIW2rNnU%~zc9?b2>ML(OCS+_V+InVZXGe?k9(NtR_2kT%F(|7snI|n2y^d$hrMWfD zZTxw1n#4`E>r6{dw*$4wU-SlBP&uIAEVMU0H(km00h-)s<>W!S>Bg&6y=rU-53|+b zu3_4y-qpa0$J0?`RTiLvcQB$;zgtQ=5T>L{kjLw{&2p3}b^G3Qi2a-_;^6}8K!X|E zLMRdt(HW!jSw0seq)9)+`WIL7x^piTO={5nT^`aeLm}}`45Bs+K@9EY!+9PzvrNWmvb5zy-nTZTwJ^Rti5y| zDLD_-l)MpF)Zf%3F PNy$TWdxzosnbH3OdjYe- diff --git a/docs/doctrees/environment.pickle b/docs/doctrees/environment.pickle index 8585243463d07e087dc221b57c47618f269411e2..412b7bcfe28469a52deff62bf4dc9d9c466b4426 100644 GIT binary patch literal 18697 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 literal 18231 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 Kcn|RKa`*x5?nH6` delta 169 zcmX}ly$ZrG6hL7`5K&yD?ds^}ixk{4N=RsG18w5Xy+Is;tGlaO|8?|n#HSG*9MAA^ z-tjAbCfyZFa$PE}4Jt?48m^3xrOIHtW<4hs|K6od*3W!3=ctIZnIY^aUa}aMm9!<# zttDegaU|gg>a@XHIzu=FII;nHiKNN@7DiMG;S}IpbfRKdBmpj)x;u)lQ@F9VQ~4L( J13bJOe*ilZLs$R+ diff --git a/docs/doctrees/index.doctree b/docs/doctrees/index.doctree index 91e894cd24d19566d38fa62410ca192ee9357dc1..ea1d07c27a1f5747e254d844675de1666703f138 100644 GIT binary patch delta 165 zcmZ3bvtDO|xu{2x86yKjs90KNPHKE+UU6zsNoIatd}>}|Qch}0kvUMZBb2)+u^cXB z0Tl9P4CPHJ%`J#8PAw_P%u6pWvYcEcDkp3Ol4A&E&P*vTvIeqii)<#Z7F80q1+(pd qWQKf(c7|eYk^STcqFM?LK#|xYM<5x>R+O3s(&hwK>I@`Hlk@;nl`fV5 delta 139 zcmZ3lvr1=!x#(mYQAsT`Mh1qCQ0}6{^7z!e#H5_mlp=GWkT+u}Z%S!yL40v)Nl9j2 zdU27(73J$ZwulCTY!Z3`qbSAX%EE2LP^TB<%nI diff --git a/docs/doctrees/polyloader.doctree b/docs/doctrees/polyloader.doctree index c93a2294d337722b8f71d62fb01adefb98585fed..17439f9e17ef32a7dd50b5c6349fc48d6acc5bc8 100644 GIT binary patch delta 210 zcmZ3exlD6|rm#nm8Y2Tks90KNPHKE+UU6zsNoIatd}>}|Qch}0kvdSaBb2)+u^cX> z0Tl9P4CPHJ%`J#8PAw_P%u6pW(wv+lEGMi5l4A&E&P*vT(gw0?i*zQ>71ra^1+q08 zi}b)k`jc-8ON$x+*%`{UMTS6HBSSSdLnF4xXfmgWwXiW*l?g~*F+&%m#&mMHh?asG aP$ag<97u+;6{V(u?63eUwFHu-NqPXN&Nklw delta 184 zcmZ3cxlnV1rtoAvVM#4DMh1qCQ0}6{^7z!e#H5_mlp=MYkT+u}Z%S!yL40v)Nl9j2 zdU27)7(J$aF^9-j`7t=U+l3l`Fwd{0D*QK4{qYh&S#+QOY0 z88Q)I8K9ocTw;4z8ORBukU@0KHsW6aWAK diff --git a/docs/doctrees/todo.doctree b/docs/doctrees/todo.doctree index b9c622d386fa1c2d1f6d46fe635ebc37cff099da..2bafad4bbd12791a1802e0cba5a5f82373e56912 100644 GIT binary patch delta 128 zcmaDa_fc-cT0W-2b(7cfNvf>x2<0wHERRpkOH9g1O)1>q%^1p?Qkq*3Uz}P}l9`uY zT)1)aD?VxcP2LQl%$X_0g_~;&w}c86mnIdLWR{ecWaj6^=OyN*78h=tNlcAO& gS6jG!vI)Ps$d1^;ouO<+sc9g6yJ`z}mnP`}01hrR1poj5 delta 125 zcmew;_g-$pTE5Ba`6N}=b%b&kC6>ph<|QWOq^1sZa-cC delta 152 zcmZov{jaiNhhS=`SXyRIYJ6s1acWUXW`16LYF=VePHIZwv5rvgqQr7I|F}0}C~rz> zZb5u;YDr0EUV3ri3BS^$P|@Pb+@$=R__X}|lDzzq)cE3(#G;bIlim!W%$X_0g{Nu@ wPfwN?lHxs6TX;4@HbXN*zP9k(WH%vok@K;I7ed*JQqw@{F4h)aDoxS@0C|Hx8~^|S diff --git a/docs/eli5.html b/docs/eli5.html index 3b2a380..15c768d 100644 --- a/docs/eli5.html +++ b/docs/eli5.html @@ -47,6 +47,14 @@

ELI5: Explain Like I’m Five!

+
+

Meta Paths

+

TODO

+
+
+

Path Hooks

+

TODO

+

Finders

TODO

@@ -55,17 +63,13 @@

Loaders

TODO

-
-

Path Hooks

-

TODO

-
-
-

Meta Paths

-

TODO

-

Module Specifications

TODO

+
+
+

Pkgutil Iterate Modules

+

TODO

@@ -77,11 +81,12 @@

Table Of Contents

This Page

diff --git a/docs/objects.inv b/docs/objects.inv index 1e958d2..9b3ca15 100644 --- a/docs/objects.inv +++ b/docs/objects.inv @@ -2,4 +2,6 @@ # Project: polyloader # Version: 0.1.0 # The remainder of this file is compressed using zlib. -xڍ0
  • For filesystem-based modules (which is 99% of them) Python’s importer only understands one loader type per directory. It’s not possible to store code or data written in something other than Python in the same -directory with Python module code and load it via import.
  • +directory with Python module code and load both via import.

    The former requires a certain degree of abstraction and thought. For the latter, most people ignore the problem and load module configuration @@ -86,7 +86,7 @@ Hy or Coconut in a framework like Django, Flask or Glitch.

    What’s the real problem?

    The real problem is that Python’s traditional extensions, .py, .pyc/.pyo, and .so/.dll files, are hard-coded in Python. In -Python 2, they’re in the imp builtin; In Python 3, they’re defined +Python 2, they’re in the _imp builtin; In Python 3, they’re defined in a private section of importlib. Either way, they’re not accessible for modification and extension.

    This problem is made harder by the pkglib module, which is part of diff --git a/docs/searchindex.js b/docs/searchindex.js index 495186d..2c80bdd 100644 --- a/docs/searchindex.js +++ b/docs/searchindex.js @@ -1 +1 @@ -Search.setIndex({envversion:42,terms:{load:[9,5],all:[9,5],code:[9,5],just:[7,5],move:5,multilingu:9,syntax:[7,9],veri:9,through:[1,5],abil:5,follow:7,discoveri:9,annoyingli:9,find:[9,5],languag:9,suffix:[8,10],access:[9,5],onli:[9,5],depend:5,execut:[9,5],smart_str:5,flask:9,point:5,had:[9,5],except:[9,5],than:9,resort:5,add:[7,5],program:[9,5],those:9,appli:5,reason:5,sens:5,folder:5,main:7,app:7,match:5,take:5,real:0,fly:5,them:[9,5],sourc:0,"return":5,string:[9,5],thei:[9,5],get:9,handl:[9,5],initi:5,util:5,framework:[9,5],ast_compil:7,mechan:[9,10],fall:9,front:9,now:[7,5],archiv:5,requir:9,name:5,tri:5,term:9,like:5,specif:5,hook:5,edit:7,anyth:5,list:[9,5],iter:5,method:5,"try":5,collect:5,either:[9,1],each:[9,5],did:5,unicod:5,page:0,mean:[9,5],compil:[7,8,10],everyth:[7,5],been:9,set:10,natur:5,hard:9,resourc:5,assumpt:5,see:5,meta:5,bare:5,stabl:0,download:1,http:1,fullnam:5,todo:4,hamper:9,librari:[7,9,5],out:[9,5],variabl:[9,5],index:0,insid:5,goe:5,unready_str:5,someth:9,abl:5,per:9,dll:9,current:[9,10,5],figur:[9,5],leav:[10,5],limit:9,content:[0,2,5],"public":1,metadata:5,altern:5,elfsternberg:1,elimin:9,object:[9,5],run:[9,10,1,5],extend:9,web:5,importerror:5,inspect:9,usag:0,privat:9,standard:[9,10],extens:9,job:5,base:[9,5],modif:9,believ:[9,5],repositori:1,found:5,releas:0,from:[0,5],process:[1,5],modifi:5,problem:0,interpret:9,importlib:9,about:5,last:[9,10,5],would:5,befor:5,freedom:5,could:[9,5],success:5,manag:[7,9,10],turn:9,degre:9,instanc:10,context:10,constructor:5,databas:5,typic:5,view:7,com:1,first:[9,5],oper:5,via:9,user:5,finder:5,directli:9,extra:5,win:9,arrai:5,independ:5,encod:5,pkglib:9,automat:10,loader:5,mochi:7,glitch:9,api:5,yaml:9,latter:9,instal:0,guid:1,facil:5,your:[7,1],git:1,ready_str:5,pkgutil:5,wai:[9,5],script:7,top:7,scan:5,two:[9,5],"long":9,github:1,avail:5,start:5,json:9,handler:5,master:1,statement:[9,5],time:[0,5],call:5,type:9,until:5,store:[9,5],more:[9,5],"function":[9,5],setup:1,lot:5,offer:5,termin:1,peopl:9,copi:1,back:9,remot:5,part:[9,5],understand:9,translat:5,scope:[10,5],line:7,former:9,written:[7,9,5],reset:8,made:[9,5],word:9,describ:5,possibl:9,launcher:7,remov:10,work:[7,5],harder:9,intern:[9,5],can:[7,9,1,5],easier:5,defin:9,"__init__":5,minimum:5,compile_fil:7,whatev:9,assum:10,report:9,modul:5,find_modul:5,heart:9,coconut:9,featur:9,constant:5,file:[9,5],creat:10,give:5,almost:5,certain:9,"abstract":9,filenam:5,ani:5,activ:10,packag:2,pip:1,hy_compil:7,have:[7,9,1,5],tarbal:1,synopsi:0,curl:1,sai:0,getmoduleinfo:9,alwai:9,develop:[9,5],want:[7,9,5],thing:9,make:5,expos:9,when:[9,5],same:9,write:[7,9,5],funni:5,builtin:9,other:9,read:5,split:5,which:[9,10,5],subdirectori:5,command:[9,1,5],you:[7,9,1,5],mochi_compil:7,enabl:9,even:5,imp:9,recogn:9,again:9,configur:9,clone:1,after:9,upon:[10,5],solut:0,most:9,larg:5,plan:7,pyo:9,pair:10,construct:9,pyc:9,data:9,"class":[9,5],tradit:9,repo:1,lifetim:10,don:1,whose:5,filesystem:[9,5],anywher:5,well:7,fine:9,django:[7,9,5],thought:9,heterogen:9,exampl:7,ignor:9,thi:[0,1,5],english:0,onc:1,model:[7,5],section:9,dot:[9,5],usual:9},objtypes:{"0":"py:module","1":"py:function"},objnames:{"0":["py","module","Python module"],"1":["py","function","Python function"]},filenames:["index","installation","modules","contributing","eli5","details","authors","usage","polyloader","readme","todo","history"],titles:["Welcome to polyloader","Installation","polyloader","<no title>","ELI5: Explain Like I’m Five!","Details on Import and Polyloader","<no title>","Usage","polyloader package","Synopsis","<no title>","<no title>"],objects:{"":{polyloader:[8,0,0,"-"]},polyloader:{reset:[8,1,1,""],install:[8,1,1,""]}},titleterms:{sai:9,old:5,modul:[4,8],meta_path:5,system:5,hook:4,meta:4,tabl:0,stabl:1,still:5,what:[9,5],from:1,welcom:[0,5],explain:4,solut:9,detail:5,content:8,how:5,between:5,"new":5,instal:1,finder:4,real:9,sourc:1,synopsi:9,python:5,english:9,usag:7,differ:5,eli5:[4,5],path_hook:5,indic:0,"import":5,releas:1,path:[4,5],loader:4,look:5,search:5,like:4,specif:4,packag:8,directori:5,doe:5,matter:5,polyload:[0,2,5,8],thi:9,time:9,five:4,problem:9,where:5,know:5}}) \ No newline at end of file +Search.setIndex({envversion:42,terms:{load:[9,5],all:[9,5],code:[9,5],just:[7,5],move:5,multilingu:9,syntax:[7,9,5],veri:9,through:[1,5],abil:5,follow:7,discoveri:9,annoyingli:9,find:[9,5],languag:9,suffix:[8,10],access:[9,5],onli:[9,5],depend:5,execut:[9,5],smart_str:5,flask:9,point:5,had:[9,5],except:[9,5],than:[9,5],resort:5,add:[7,5],program:[9,5],those:9,appli:5,reason:5,sens:5,folder:5,main:7,app:7,match:5,take:5,real:0,fly:5,them:[9,5],sourc:0,"return":5,string:[9,5],thei:[9,5],get:9,handl:[9,5],initi:5,util:5,framework:[9,5],ast_compil:7,mechan:[9,10],fall:9,front:9,now:[7,5],archiv:5,requir:9,name:5,tri:5,term:9,like:5,specif:5,hook:5,edit:7,anyth:5,list:[9,5],iter:5,method:5,"try":5,collect:5,either:[9,1],each:[9,5],did:5,unicod:5,page:0,mean:[9,5],compil:[7,8,10],everyth:[7,5],been:9,set:10,natur:5,hard:9,resourc:5,assumpt:5,see:5,meta:5,bare:5,stabl:0,download:1,http:1,fullnam:5,todo:4,hamper:9,librari:[7,9,5],out:[9,5],variabl:[9,5],index:0,insid:5,goe:5,unready_str:5,someth:9,"_imp":9,abl:5,per:9,dll:9,current:[9,10,5],figur:[9,5],leav:[10,5],limit:9,content:[0,2,5],"public":1,metadata:5,altern:5,elfsternberg:1,elimin:9,object:[9,5],run:[9,10,1,5],extend:9,web:5,importerror:5,inspect:9,usag:0,privat:9,standard:[9,10],extens:9,job:5,base:[9,5],modif:9,believ:[9,5],repositori:1,found:5,releas:0,from:[0,5],process:[1,5],modifi:5,problem:0,interpret:9,importlib:9,both:9,about:5,last:[9,10,5],would:5,befor:5,freedom:5,could:[9,5],success:5,manag:[7,9,10],turn:9,degre:9,instanc:10,context:10,constructor:5,databas:5,typic:5,view:7,com:1,first:[9,5],oper:5,via:9,user:5,finder:5,directli:9,extra:5,win:9,arrai:5,independ:5,encod:5,pkglib:9,automat:10,loader:5,mochi:7,glitch:9,api:5,yaml:9,latter:9,instal:0,guid:1,facil:5,your:[7,1],git:1,ready_str:5,pkgutil:5,wai:[9,5],script:7,top:7,scan:5,two:[9,5],"long":9,github:1,avail:5,start:5,json:9,handler:5,master:1,statement:[9,5],time:[0,5],call:5,type:9,tell:5,store:[9,5],more:[9,5],"function":[9,5],setup:1,lot:5,offer:5,termin:1,peopl:9,copi:1,back:9,remot:5,part:[9,5],understand:9,translat:5,scope:[10,5],line:7,former:9,written:[7,9,5],reset:8,kind:5,made:[9,5],word:9,describ:5,possibl:9,launcher:7,remov:10,work:[7,5],harder:9,intern:[9,5],can:[7,9,1,5],until:5,defin:9,easier:5,minimum:5,compile_fil:7,whatev:9,assum:10,report:9,modul:5,find_modul:5,heart:9,coconut:9,featur:9,constant:5,file:[9,5],creat:10,give:5,almost:5,certain:9,"abstract":9,filenam:5,ani:5,activ:10,"__init__":5,packag:2,pip:1,hy_compil:7,have:[7,9,1,5],tarbal:1,synopsi:0,curl:1,sai:0,getmoduleinfo:9,alwai:9,develop:[9,5],want:[7,9,5],thing:9,make:5,expos:9,when:[9,5],same:9,write:[7,9,5],funni:5,builtin:9,other:9,read:5,split:5,which:[9,10,5],subdirectori:5,command:[9,1,5],you:[7,9,1,5],mochi_compil:7,enabl:9,even:5,recogn:9,again:9,configur:9,clone:1,after:9,upon:[10,5],solut:0,most:9,larg:5,plan:7,pyo:9,pair:10,construct:9,pyc:9,data:9,"class":[9,5],tradit:9,repo:1,lifetim:10,don:1,whose:5,filesystem:[9,5],anywher:5,well:7,fine:9,django:[7,9,5],thought:9,heterogen:9,exampl:7,ignor:9,thi:[0,1,5],english:0,onc:1,model:[7,5],section:9,dot:[9,5],usual:9},objtypes:{"0":"py:module","1":"py:function"},objnames:{"0":["py","module","Python module"],"1":["py","function","Python function"]},filenames:["index","installation","modules","contributing","eli5","details","authors","usage","polyloader","readme","todo","history"],titles:["Welcome to polyloader","Installation","polyloader","<no title>","ELI5: Explain Like I’m Five!","Details on Import and Polyloader","<no title>","Usage","polyloader package","Synopsis","<no title>","<no title>"],objects:{"":{polyloader:[8,0,0,"-"]},polyloader:{reset:[8,1,1,""],install:[8,1,1,""]}},titleterms:{sai:9,old:5,look:5,modul:[4,8],meta_path:5,system:5,hook:4,meta:4,tabl:0,stabl:1,still:5,what:[9,5],from:1,pkgutil:4,explain:4,solut:9,detail:5,content:8,how:5,between:5,"new":5,instal:1,finder:4,real:9,sourc:1,synopsi:9,python:5,english:9,usag:7,differ:5,eli5:[4,5],path_hook:5,indic:0,"import":5,releas:1,path:[4,5],loader:4,welcom:[0,5],search:5,like:4,specif:4,packag:8,directori:5,iter:4,doe:5,matter:5,polyload:[0,2,5,8],thi:9,time:9,five:4,problem:9,where:5,know:5}}) \ No newline at end of file diff --git a/docs/src/details.rst b/docs/src/details.rst index fc64dd2..b5e8692 100644 --- a/docs/src/details.rst +++ b/docs/src/details.rst @@ -108,4 +108,5 @@ path where you believe Python modules can be found, and list through them. This facility is useful for large frameworks where a user wants to add new commands, or new objects, or new operations; Django uses this facility a lot! The ``pkgutil`` library depends upon Finders being able -to iterate their contents. +to iterate their contents, and with the filesystem iterator, that means +being able to tell there's more than one kind of syntax in a directory. diff --git a/docs/src/eli5.rst b/docs/src/eli5.rst index 667777f..2bfa0f4 100644 --- a/docs/src/eli5.rst +++ b/docs/src/eli5.rst @@ -1,6 +1,20 @@ ELI5: Explain Like I'm Five! ============================ +.. _eli5-metapaths: + +Meta Paths +========== + +TODO + +.. _eli5-pathhooks: + +Path Hooks +========== + +TODO + .. _eli5-finders: Finders @@ -15,23 +29,16 @@ Loaders TODO -.. _eli5-pathhooks: - -Path Hooks -========== - -TODO - -.. _eli5-metapaths: - -Meta Paths -========== - -TODO - .. _eli5-specs: Module Specifications ===================== TODO + +.. _eli5-iterate-modules: + +Pkgutil Iterate Modules +======================= + +TODO