From fb09786b8269abcc0c49c86cef16ef35b4062e07 Mon Sep 17 00:00:00 2001 From: Adrien Burgun Date: Wed, 8 Feb 2023 19:14:23 +0100 Subject: [PATCH] :sparkles: Clean some things, better fromeffectloop figure --- assets/fromeffectloop2.drawio | 1 + figures/fromeffectloop.dot | 5 +++++ figures/fromeffectloop.tex | 15 +++++++++++---- images/fromeffectloop2.pdf | Bin 0 -> 24656 bytes report.tex | 4 ++-- 5 files changed, 19 insertions(+), 6 deletions(-) create mode 100644 assets/fromeffectloop2.drawio create mode 100644 images/fromeffectloop2.pdf diff --git a/assets/fromeffectloop2.drawio b/assets/fromeffectloop2.drawio new file mode 100644 index 0000000..950691b --- /dev/null +++ b/assets/fromeffectloop2.drawio @@ -0,0 +1 @@ +7VrLcpswFP0aL+MBCTBexo7dLtppO55O21VHgcujlS0q5Fe/vpIRxmASO/GDhGaToMsVujr3HL2sDh5OV+84SaKPzAfaQYa/6uC7DkKu2Zd/lWGdGSzbyAwhj/3MZBaGSfwXtDF3m8c+pCVHwRgVcVI2emw2A0+UbIRztiy7BYyWW01ICHuGiUfovvVb7ItIdyvvhbK/hziM8pZNQ7+ZktxZG9KI+Gy5Y8KjDh5yxkT2NF0NgSrsclyyeuMH3m4D4zATx1TALPopRuRLmo4jELCwvk5vb/RXFoTOdYc7yKHye4OAyc/KvBFBbtTzTcq9jYfzZ65CHkRCqBzcqhbRWLmk3ZCxkAJJ4rTrsak0e6l0GQdkGlNFgE8JzDpoMCGztPiQSgvxoPTxzNGoOjqh+j9PYRQEKts6Vt1+/l7jLdZ5Ejmbz3xQOBjy9TKKBUySrMmlZO2mM1MqS6bqeEzpkFHGN3WxT8ANZM8HqeDsN+y8cTwX7gP5xo+5DCZmM2kHkm7AYTz+K0MiVDeq4tupaxhG30XbWBfABaweTKy5pYuUGbApCL6WLsuCkJYmWbTLxZx5RGsg3FYtaCIfNFOewBpcw5ozQg6mb0OvDvK+08PEORG2VRkyPTDZWekApvhSkFothNRqGFO7hZi6DWPqHJowvC0MxbCN+6ZpG739kTwFMSReBNcYyAPXA692IL93bbUsOS1dOj9mjvxOgtxrJgg5e6iBL5c0usi4iFjIZoSOCuugjGvh84GxRKP5C4RY6/UZmQtWxnoP097IRUbNxKeZkGOtQnscadkTNud6eVDf5V7mJwgPQTwGTa8+dRwoEfGiHEhdYnTVzyzeUD3niFuWKDIquc0C07Uq6d2G8fyM9y47zAVBgOp14zv3jn2mYa6CYX9fRXXD3MVWOFvuvRAVSRT5+rt22xR+qGa6dl68W+lms9Jal86oMvdYleHLqMwuMwQfqbJbzsl6xy1RDunx7TiVXdXBsOwK+bIAzqp4t4WKtxtWfH7gcF3FP1fXD48UZ1R8/0jFO+cQ/JN1alVn3cd1WnE3rSvotN9CnZpN67TuyOq17+pMp+FtnYlaiCoymka1jQdljR/roH4TM3WjO1zTOXIqPnmLexrf606HXvuE1/jKFLn/H9+vdqRzGt/bePTS+AoP1c2ab2fMOxmqOR277hnzPu+73e7+KEVpnKTwQmlvOhXeu8fx3roUqriNOxvc9A+ruI07G9z0fhG3cWdjNb1fxBe+BdDIesJqej2B6+4BvF1yeiWXnLYnZMex6IKXng5efXij0YunEUaXo5EsFrc5s58QiiuxePQP \ No newline at end of file diff --git a/figures/fromeffectloop.dot b/figures/fromeffectloop.dot index cb76777..e191e75 100644 --- a/figures/fromeffectloop.dot +++ b/figures/fromeffectloop.dot @@ -10,4 +10,9 @@ digraph { cache -> getCategory [dir=back,style=dashed] fetchCategory -> getCategory [dir=back,len=3] } + + useEffect [style=filled,fillcolor="#DAE8FC"] + getCategory [style=filled,fillcolor="#E1D5E7"] + cache [style=filled,fillcolor="#F8CECC"] + fetchCategory [style=filled,fillcolor="#FFF2CC"] } diff --git a/figures/fromeffectloop.tex b/figures/fromeffectloop.tex index 5e8b417..4384567 100644 --- a/figures/fromeffectloop.tex +++ b/figures/fromeffectloop.tex @@ -13,7 +13,10 @@ function useCategoryCache() { if (cache[id]) return cache[id]; return fetchCategory(id).then((movie) => { - cache[id] = movie; + setCache((cache) => ({ + ...cache, + [id]: movie + })); return movie; }); }, [cache]); @@ -42,11 +45,15 @@ const Page = (props) => { \caption{Code susceptible à un bug causant les requêtes à être envoyées plusieures fois} \end{subfigure} - \begin{subfigure}[t]{\textwidth} - \centering - \includegraphics[width=0.5\textwidth]{fromeffectloop} + \begin{subfigure}[t]{0.45\textwidth} + \includegraphics[width=\textwidth]{fromeffectloop} \caption{Les flèches correspondent à un appel, les points à une dépendance} \end{subfigure} + \hfill + \begin{subfigure}[t]{0.45\textwidth} + \includegraphics[width=0.3\textwidth]{fromeffectloop2} + \caption{TODO} + \end{subfigure} \caption{Version simplifiée du bug causant plusieures requêtes à être executées} \label{fromeffectloop} \end{figure} diff --git a/images/fromeffectloop2.pdf b/images/fromeffectloop2.pdf new file mode 100644 index 0000000000000000000000000000000000000000..383a7e57854affe4d46aae527d8bd85025043f06 GIT binary patch literal 24656 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 literal 0 HcmV?d00001 diff --git a/report.tex b/report.tex index 8d1d981..54c74f1 100644 --- a/report.tex +++ b/report.tex @@ -17,6 +17,7 @@ \usepackage{wrapfig} \usepackage{svg} \usepackage{ragged2e} +\usepackage[nottoc,numbib]{tocbibind} \usepackage{hyperref} \hypersetup{ @@ -840,8 +841,6 @@ Faire ce travail m'a permis d'avoir une compréhension plus profonde sur différ \makeutbmbackcover{} \newpage -\section{Annexes} - \begingroup \raggedright \bibliographystyle{plain} @@ -849,6 +848,7 @@ Faire ce travail m'a permis d'avoir une compréhension plus profonde sur différ \endgroup \newpage +\section{Annexes} \subsection{Listings de code}