[tex-live] TL2015 - missing \locbox breaks package forest

Joseph Wright joseph.wright at morningstar2.co.uk
Thu Apr 16 07:59:56 CEST 2015

On 15/04/2015 23:28, jfbu wrote:
> Hi, 
> I am not sure this belongs to this list. I don't know to whom report it.
> package forest uses \locbox at one location, which comes from etex.sty
> apparently something has changed with LaTeX 2015/01/01, hence
> \locbox is missing when forest.sty needs it
> ERROR: Undefined control sequence.
> --- TeX said ---
> <argument> \locbox 
>                    \forest at temp@box \forestolet {box}\forest at temp@box 
> l.18 \end{forest}
> as for mwe, sorry if it is not minimal at all, I just copied
> pasted the code from page 1 of forest.pdf doc
> \documentclass{article}
> \usepackage{forest}
> \begin{document}
> \pgfmathsetseed{14285}
> \begin{forest}
> random tree/.style n args={3}{% #1=max levels, #2=max children, #3=max content
> content/.pgfmath={random(0,#3)},
> if={#1>0}{repeat={random(0,#2)}{append={[,random tree={#1-1}{#2}{#3}]}}}{}},
> for deepest/.style={before drawing tree={
> alias=deepest,
> where={y()<y("deepest")}{alias=deepest}{},
> for name={deepest}{#1}}},
> colorone/.style={fill=yellow,for children=colortwo}, colortwo/.style={fill=green,for children=colorone},
> important/.style={draw=red,line width=1.5pt,edge={red,line width=1.5pt,draw}},
> before typesetting nodes={colorone, for tree={draw,s sep=2pt,rotate={int(30*rand)},l+={5*rand}}},
> for deepest={for ancestors'={important,typeset node}}
> [,random tree={9}{3}{100}]
> \end{forest}
> \end{document}
> Jean-Francois

The LaTeX kernel changes about allocation mean that the etex package is
no longer needed to get extended allocation. As a result, etoolbox no
longer loads the etex package if a new kernel is available. Looks like
forest doesn't explicitly load the etex package but then relies on it.
Adding \RequirePackage{etex} should fix the document, but really the
forest package should get adjusted.
Joseph Wright

More information about the tex-live mailing list