aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMohammad Akhlaghi <mohammad@akhlaghi.org>2020-12-01 11:43:04 +0000
committerMohammad Akhlaghi <mohammad@akhlaghi.org>2020-12-01 11:43:04 +0000
commitac8eee90b1580fb566ee5b84fef9acb4ed437c01 (patch)
tree5d0bcc2d1779d1e6333f11fff41d9d59c14f16a1
parent6ca2fbf925d14fff862889840913e3c89ea8048a (diff)
Default paper: macros available for date of commits cited
Until now, Maneage only provided the commit hashes (of the project and Maneage) as LaTeX macros to use in your paper. However, they are too cryptic and not really human friendly (unless you have access to the Git history on a computer). With this commit, to make things easier for the readers, the date of both commits are also available as LaTeX macros for use in the paper. The date of the Maneage commit is also included in the acknowledgements. Also, the paragraph above the acknowledgements has been updated with better explanation on why adding this acknowledgement in the science papers is good/necessary.
-rw-r--r--paper.tex11
-rw-r--r--reproduce/analysis/make/initialize.mk6
2 files changed, 12 insertions, 5 deletions
diff --git a/paper.tex b/paper.tex
index ac61cad..63ba4fc 100644
--- a/paper.tex
+++ b/paper.tex
@@ -180,11 +180,13 @@ Also, just as another reminder, before publication, don't forget to follow the `
\section{Acknowledgments}
-\new{Please include the following two paragraphs in the Acknowledgement section of your paper.
- Maneage was developed in parallel with Gnuastro, so it benefited from the same grants.
- If you don't use Gnuastro in your final/customized project, please remove it from the paragraph below, only mentioning the reproducible paper template.}
+\new{Please include the following paragraph in the Acknowledgement section of your paper.
+ In order to get more funding to continue working on Maneage, we need to to cite it and its funding institutions in your papers.
+ Also note that at the start, it includes version and date information for the most recent Maneage commit you merged with (which can be very helpful for others) as well as very basic information about your CPU architecture (which was extracted during configuration).
+ This CPU information is very important for reproducibility because some software may not be buildable on other CPU architectures, so it is necessary to publish CPU information with the results and software versions.}
-This project was developed in the reproducible framework of Maneage \citep[\emph{Man}aging data lin\emph{eage},][latest Maneage commit of \maneageversion, and built on an {\machinearchitecture} machine with {\machinebyteorder} byte-order]{maneage}.
+This project was developed in the reproducible framework of Maneage \citep[\emph{Man}aging data lin\emph{eage},][latest Maneage commit \maneageversion{}, from \maneagedate]{maneage}.
+The project was built on an {\machinearchitecture} machine with {\machinebyteorder} byte-order, see Appendix \ref{appendix:software} for the used software and their versions.
Maneage has been funded partially by the following grants: Japanese Ministry of Education, Culture, Sports, Science, and Technology (MEXT) PhD scholarship to M. Akhlaghi and its Grant-in-Aid for Scientific Research (21244012, 24253003).
The European Research Council (ERC) advanced grant 339659-MUSICOS.
The European Union (EU) Horizon 2020 (H2020) research and innovation programmes No 777388 under RDA EU 4.0 project, and Marie Sk\l{}odowska-Curie grant agreement No 721463 to the SUNDIAL ITN.
@@ -199,6 +201,7 @@ The IAC project P/300724, financed by the MCIU, through the Canary Islands Depar
%% Mention all used software in an appendix.
\section{Software acknowledgement}
+\label{appendix:software}
\input{tex/build/macros/dependencies.tex}
%% Finish LaTeX
diff --git a/reproduce/analysis/make/initialize.mk b/reproduce/analysis/make/initialize.mk
index 7217f0c..3649fd2 100644
--- a/reproduce/analysis/make/initialize.mk
+++ b/reproduce/analysis/make/initialize.mk
@@ -482,7 +482,9 @@ $(mtexdir)/initialize.tex: | $(mtexdir)
# commands are run every time with './project make', it is annoying
# to print them on the standard output every time. With the '@',
# make will not print the commands that it runs in this recipe.
- @echo "\newcommand{\projecttitle}{$(metadata-title)}" > $@
+ @d=$$(git show -s --format=%aD HEAD | awk '{print $$2, $$3, $$4}')
+ echo "\newcommand{\projectdate}{$$d}" > $@
+ echo "\newcommand{\projecttitle}{$(metadata-title)}" >> $@
echo "\newcommand{\projectversion}{$(project-commit-hash)}" >> $@
# Calculate the latest Maneage commit used to build this
@@ -494,4 +496,6 @@ $(mtexdir)/initialize.tex: | $(mtexdir)
# after cloning from a fork that didn't include it!). In this
# case, we'll just return the string a clear string.
v=$$(git describe --always --long maneage) || v=maneage-ref-missing
+ d=$$(git show -s --format=%aD $$v | awk '{print $$2, $$3, $$4}')
+ echo "\newcommand{\maneagedate}{$$d}" >> $@
echo "\newcommand{\maneageversion}{$$v}" >> $@