It seems, looking @ the console, that the unicode-math package for XeTeX & LuaTeX loads graphic.sty. Why? I guess that saves me 1 line of code in the preamble. Minimal example:

\documentclass[12pt]{article}
\usepackage{unicode-math}
\begin{document}
a
\end{document}


Some lines in console (after running LuaTeX):

(/usr/local/texlive/2016/texmf-dist/tex/latex/unicode-math/unicode-math.sty
...
(/usr/local/texlive/2016/texmf-dist/tex/latex/graphics/graphicx.sty
(/usr/local/texlive/2016/texmf-dist/tex/latex/graphics/keyval.sty)
(/usr/local/texlive/2016/texmf-dist/tex/latex/graphics/graphics.sty
(/usr/local/texlive/2016/texmf-dist/tex/latex/graphics/trig.sty)
(/usr/local/texlive/2016/texmf-dist/tex/latex/graphics-cfg/graphics.cfg)
...
(/usr/local/texlive/2016/texmf-dist/tex/latex/unicode-math/unicode-math-luatex.sty

• It doesn't on my machine. Note that TeX Live 2016 is obsolete. – egreg Jun 22 '18 at 16:36
• It doesn't do it here (neither in tl16 nor in newer versions). – Ulrike Fischer Jun 22 '18 at 16:38

The graphicx package is loaded by xunicode, which used to be loaded by fontspec, but isn't any longer from a couple of years, unless the EU1 encoding is required.
The xunicode package uses \scalebox for some of its macros.
• From (a very old) xunicode.sty: % faking right tone bars from left ones \RequirePackage{graphicx} \def\TIPAfakertonebar#1{{\TIPAreversedata#1!!@!!% \reflectbox{\expandafter\TIPAfakertonebari\expandafter{\TIPAtonedata}}}} – Phelype Oleinik Jun 22 '18 at 16:42
• @PhelypeOleinik It's still in the current version of xunicode.sty. – egreg Jun 22 '18 at 16:42