digitalmars.D - package management
- Gor Gyolchanyan <gor.f.gyolchanyan gmail.com> Jun 27 2012
- "Tobias Pankrath" <tobias pankrath.net> Jun 27 2012
- Timon Gehr <timon.gehr gmx.ch> Jun 27 2012
- Gor Gyolchanyan <gor.f.gyolchanyan gmail.com> Jun 27 2012
- Gor Gyolchanyan <gor.f.gyolchanyan gmail.com> Jun 27 2012
I find myself wanting this over and over again. Reading the docs for Orange made me realize, that I'm not alone. What's wrong with having imports like: import mylibrary.mypackage; replaced with: import mylibrary.mypackage._; or import mylibrary.mypacakge.package; or import mylibrary.mypackage.all; or anything in that fashion? I thing this is a good idea, because it standardizes access to entire packages in cases, where such an access makes sense. Also, there are cases, when some packages and modules aren't meant to be imported. Implementation packages. I suppose the best way to handle this is to generate .di files for the modules, which do need to be imported and distribute those, but it adds complications and limitations. Would it make sense to allow marking modules as private or something to make it only importable from it's own package? private module myimpl; /// implementations Importing a private module from outside of it's immediate package would cause a compilation error. -- Bye, Gor Gyolchanyan.
Jun 27 2012
On Wednesday, 27 June 2012 at 10:34:53 UTC, Gor Gyolchanyan wrote:I find myself wanting this over and over again. Reading the docs for Orange made me realize, that I'm not alone.
http://prowiki.org/wiki4d/wiki.cgi?LanguageDevel/DIPs/DIP16
Jun 27 2012
On 06/27/2012 12:49 PM, Gor Gyolchanyan wrote:On Wed, Jun 27, 2012 at 2:46 PM, Tobias Pankrath <tobias pankrath.net <mailto:tobias pankrath.net>> wrote: On Wednesday, 27 June 2012 at 10:34:53 UTC, Gor Gyolchanyan wrote: I find myself wanting this over and over again. Reading the docs for Orange made me realize, that I'm not alone. http://prowiki.org/wiki4d/__wiki.cgi?LanguageDevel/DIPs/__DIP16 <http://prowiki.org/wiki4d/wiki.cgi?LanguageDevel/DIPs/DIP16> Wonderful. Is there a vote for it? And what about the private module idea? -- Bye, Gor Gyolchanyan.
private module does not make sense, because private means 'only accessible to this module'. What you want is a package module.
Jun 27 2012
--e0cb4efe33907aa1a404c371f9ad Content-Type: text/plain; charset=UTF-8 On Wed, Jun 27, 2012 at 2:46 PM, Tobias Pankrath <tobias pankrath.net>wrote:On Wednesday, 27 June 2012 at 10:34:53 UTC, Gor Gyolchanyan wrote:I find myself wanting this over and over again. Reading the docs for Orange made me realize, that I'm not alone.
http://prowiki.org/wiki4d/**wiki.cgi?LanguageDevel/DIPs/**DIP16<http://prowiki.org/wiki4d/wiki.cgi?LanguageDevel/DIPs/DIP16>
Wonderful. Is there a vote for it? And what about the private module idea? -- Bye, Gor Gyolchanyan. --e0cb4efe33907aa1a404c371f9ad Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable <div class=3D"gmail_quote">On Wed, Jun 27, 2012 at 2:46 PM, Tobias Pankrath= <span dir=3D"ltr"><<a href=3D"mailto:tobias pankrath.net" target=3D"_bl= ank">tobias pankrath.net</a>></span> wrote:<br><blockquote class=3D"gmai= l_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left= :1ex"> <div class=3D"im">On Wednesday, 27 June 2012 at 10:34:53 UTC, Gor Gyolchany= an wrote:<br> <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p= x #ccc solid;padding-left:1ex"> I find myself wanting this over and over again. Reading the docs for<br> Orange made me realize, that I'm not alone.<br> </blockquote> <br> </div><a href=3D"http://prowiki.org/wiki4d/wiki.cgi?LanguageDevel/DIPs/DIP1= 6" target=3D"_blank">http://prowiki.org/wiki4d/<u></u>wiki.cgi?LanguageDeve= l/DIPs/<u></u>DIP16</a><br> </blockquote></div><br>Wonderful. Is there a vote for it? And what about th= e private module idea?<div><div><br></div>-- <br>Bye,<br>Gor Gyolchanyan.<b= r> </div> --e0cb4efe33907aa1a404c371f9ad--
Jun 27 2012
--f46d04088ee50be73e04c372b916 Content-Type: text/plain; charset=UTF-8 On Wed, Jun 27, 2012 at 3:27 PM, Timon Gehr <timon.gehr gmx.ch> wrote:On 06/27/2012 12:49 PM, Gor Gyolchanyan wrote:On Wed, Jun 27, 2012 at 2:46 PM, Tobias Pankrath <tobias pankrath.net <mailto:tobias pankrath.net>> wrote: On Wednesday, 27 June 2012 at 10:34:53 UTC, Gor Gyolchanyan wrote: I find myself wanting this over and over again. Reading the docs for Orange made me realize, that I'm not alone. http://prowiki.org/wiki4d/__**wiki.cgi?LanguageDevel/DIPs/__**DIP16<http://prowiki.org/wiki4d/__wiki.cgi?LanguageDevel/DIPs/__DIP16> <http://prowiki.org/wiki4d/**wiki.cgi?LanguageDevel/DIPs/**DIP16<http://prowiki.org/wiki4d/wiki.cgi?LanguageDevel/DIPs/DIP16>
Wonderful. Is there a vote for it? And what about the private module idea? -- Bye, Gor Gyolchanyan.
private module does not make sense, because private means 'only accessible to this module'. What you want is a package module.
Yes, I thought of naming it a package module, but it semantically conflicts with the module, which represents the entire package (as described in the first issue). -- Bye, Gor Gyolchanyan. --f46d04088ee50be73e04c372b916 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable <div class=3D"gmail_quote">On Wed, Jun 27, 2012 at 3:27 PM, Timon Gehr <spa= n dir=3D"ltr"><<a href=3D"mailto:timon.gehr gmx.ch" target=3D"_blank">ti= mon.gehr gmx.ch</a>></span> wrote:<br><blockquote class=3D"gmail_quote" = style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> <div class=3D"im">On 06/27/2012 12:49 PM, Gor Gyolchanyan wrote:<br> </div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-l= eft:1px #ccc solid;padding-left:1ex"><div class=3D"im"> On Wed, Jun 27, 2012 at 2:46 PM, Tobias Pankrath <<a href=3D"mailto:tobi= as pankrath.net" target=3D"_blank">tobias pankrath.net</a><br></div><div cl= ass=3D"im"> <mailto:<a href=3D"mailto:tobias pankrath.net" target=3D"_blank">tobias = pankrath.net</a>>> wrote:<br> <br> =C2=A0 =C2=A0On Wednesday, 27 June 2012 at 10:34:53 UTC, Gor Gyolchanyan w= rote:<br> <br> =C2=A0 =C2=A0 =C2=A0 =C2=A0I find myself wanting this over and over again.= Reading the docs for<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0Orange made me realize, that I'm not alone.= <br> <br> <br></div> =C2=A0 =C2=A0<a href=3D"http://prowiki.org/wiki4d/__wiki.cgi?LanguageDevel= /DIPs/__DIP16" target=3D"_blank">http://prowiki.org/wiki4d/__<u></u>wiki.cg= i?LanguageDevel/DIPs/__<u></u>DIP16</a><div class=3D"im"><br> =C2=A0 =C2=A0<<a href=3D"http://prowiki.org/wiki4d/wiki.cgi?LanguageDev= el/DIPs/DIP16" target=3D"_blank">http://prowiki.org/wiki4d/<u></u>wiki.cgi?= LanguageDevel/DIPs/<u></u>DIP16</a>><br> <br> <br> Wonderful. Is there a vote for it? And what about the private module idea?<= br> <br> --<br> Bye,<br> Gor Gyolchanyan.<br> </div></blockquote> <br> private module does not make sense, because private means 'only<br> accessible to this module'. What you want is a package module.<br> </blockquote></div><br>Yes, I thought of naming it a package module, but it= semantically conflicts with the module, which represents the entire packag= e (as described in the first issue).<br clear=3D"all"><div><br></div>-- <br=
--f46d04088ee50be73e04c372b916--
Jun 27 2012









Timon Gehr <timon.gehr gmx.ch> 