<div dir="ltr">I do not agree but I usually do not load any packages for various reasons. If I need a particular function of a particular package, I implement it myself, and even if that is not possible, I take macros from that package but obviously change the macro names (both internal and public macros) completely.<br>
<br><div class="gmail_quote">On Wed, Sep 21, 2011 at 11:01 PM, Heiko Oberdiek <span dir="ltr"><<a href="mailto:heiko.oberdiek@googlemail.com">heiko.oberdiek@googlemail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div><div></div><div class="h5">On Wed, Sep 21, 2011 at 10:21:46PM +1000, VAFA KHALIGHI wrote:<br>
<br>
> > It is a bug in polyglossia that xkeyval has to be loaded manually<br>
> > before polyglossia, because polyglossia has<br>
> > forgotten \RequirePackage{xkeyval}.<br>
> ><br>
> ><br>
> ><br>
> Not really. fontspec used to load xkeyval and polyglossia loaded fontspec so<br>
> there was no need for polyglossia to load xkeyval again.<br>
<br>
</div></div>No, packages *MUST* add packages for *all* required packages.<br>
The use of xkeyval for fontspec was an *implementation* detail<br>
that can change *any* time, like it has now happened.<br>
AFAIK, the use of xkeyval was never part of the official interface<br>
for fontspec. This would not make any sense, because fontspec deals<br>
with fonts and is not a package for providing key value parsers.<br>
<br>
Therefore it is a very clear bug of polyglossia, not to load<br>
xkeyval. A package can be loaded many times using \usepackage<br>
or \RequirePackage. LaTeX only loads the package at the first<br>
request. At the later requests it only checks the date and options<br>
of the request.<br>
<br>
It is also good style to add a date, if a package must not be too old:<br>
\RequirePackage{foo}[2010/04/20]<br>
Then LaTeX will complain, if the loaded packages is too old.<br>
<div><div></div><div class="h5"><br>
Yours sincerely<br>
Heiko Oberdiek<br>
<br>
<br>
--------------------------------------------------<br>
Subscriptions, Archive, and List information, etc.:<br>
<a href="http://tug.org/mailman/listinfo/xetex" target="_blank">http://tug.org/mailman/listinfo/xetex</a><br>
</div></div></blockquote></div><br></div>