Age | Commit message (Collapse) | Author | Lines |
|
Until now, when a the raw tarball of some software wasn't usable, I would
put it under my own webpage, or `akhlaghi.org/reproduce-software'. That
same address was also used as a backup server. However, now the project has
a proper name: Maneage. So I changed the directory on my own server to
`akhlaghi.org/maneage-software'.
With this commit, this new address has replaced the old one. But to avoid
crashes in projects that haven't yet merged with the main Maneage branch,
the old `reproduce-software' still works (its actually a symbolic link to
the new directory now).
|
|
In the previous commit, we remove the `-static' flag from building PatchELF
because it wasn't necessary any more. Howver, the comment for the check
still included it and could be confusing. This is corrected with this
commit. Also, we don't need the `good_static_libc' variable (that was only
defined to pass onto PatchELF). This has also been corrected.
|
|
Until a few commits ago, PatchELF was built statically because it was used
to patch `libstdc++' at the end of the GCC building phase, but PatchELF
also depends on `libstdc++', so it would crash. However, recently when
patching the GCC libraries, we don't directly apply Patchelf to the
library, first we copy it to a temporary place, do the patching, then put
it in its proper place. So the problem above won't happen any more.
With this commit, I am thus removing the static flag from patchelf and
letting it built dynamically all the time. The main problem was that some
systems don't have a static C++ library, so PatchELF couldn't be built
statically. Instead of adding more checks, we just fixed the core
foundation of the problem.
|
|
A few minor conflicts came up that were easily fixed.
|
|
I forgot to put these in the last commit! They are now implemented.
|
|
I had another look at the text and tried to summarize it a little more
while also fixing several typos that I had just discovered! In the process,
I noticed that we hadn't actually put a link to Maneage's main Git
repository! So we now have the URL as a `git clone' command.
Also, I thought that its better to show the `TARGETS.conf' file (which we
actually talk about) in the file architecture instead of `LOCAL.conf.in'
(which we don't talk about any more!).
Finally, to be more similar with DSJ, the bibliography is now in normal
font size, not footnotesize.
|
|
Until now the software configuration parameters were defined under the
`reproduce/software/config/installation/' directory. This was because the
configuration parameters of analysis software (for example Gnuastro's
configurations) were placed under there too. But this was terribly
confusing, because the run-time options of programs falls under the
"analysis" phase of the project.
With this commit, the Gnuastro configuration files have been moved under
the new `reproduce/analysis/config/gnuastro' directory and the software
configuration files are directly under `reproduce/software/config'. A clean
build was done with this change and it didn't crash, but it may cause
crashes in derived projects, so after merging with Maneage, please
re-configure your project to see if anything has been missed. Please let us
know if there is a problem.
|
|
In the introduction I had mistakenly put "metadata" instead of "workflow",
its corrected with this commit.
|
|
Ryan O'Connor is from RDA and my principle contact for the grant. He also
kindly went over the first draft of the paper and gave useful and
encouraging comments.
|
|
I had also done this in the main branch, but I noticed this commit later!
|
|
This was only relevant for the submitted version, so I am committing it
until the next submission.
|
|
After the submission and reading through the text another time I found some
typo corrections and fixed them. Also now that David is an author, I
removed him from the people to acknowledge (David brought this up himself,
thanks David ;-)).
|
|
Since David is a co-author of the paper, I have removed him from the
Acknowledgments paragraph.
|
|
Since the journal doesn't accept supplementary files during initial
submission, I have put this link on the PDF for the referee and editors to
access if they want.
Also the `tex/img' file was added to the distribution tarball.
|
|
I was using some special Bash feature before to ignore the distribution
directory itself when copying the files, but that had some problems, so I
just used a simple for loop over a `find' command to ignore it. Also, for
now, we don't need BibLaTeX sources in the project (that is primarily for
arXiv), so to help the referee see a more cleaner contents of this
supplement file.
|
|
Thanks David ;-)! I tried to implement as many as I could. For the time
being, I just removed teh `~' between "Section" and its number, and removed
the italics on software names. Let's see what the journal editors say about
it. Otherwise, most of the suggestions were very good and indeed made the
text much better to read.
|
|
David submitted these comments by email, I (Mohammad) am committing it into
the project.
|
|
To make the text easier to read and further comply with the author
guideline, the text was shrank a little more and the two final sections
were also added on "Competing interest" and "Author contributions".
I also found the CODATA logo on Wikipedia in SVG format (vector graphics),
so I replaced the previous pixelated PNG format with the PDF (converted
from SVG).
|
|
I removed the part emphasizing one journal, but about the comment at the
end of the conclusion (to say some negative things): we have already done
that in the discussion, mentioning the caveats ;-). But you are right, we
should summarize the caveats is well.
|
|
With this commit, minor typos have been fixed from Section 4 to 6. The
majority of them are minor corrections (typos/spelling). I added just a
couple of comments/suggestions in red. If you think they are necessary
try to fit with the latest modifications. If not, just ignore them.
Really nice paper, congratulations to all contributors!!
|
|
With this commit, just minor typos have been fixed (I am rushing over
the text since we are out of time!). There are also a suggestion in
order to remove a couple of phrases to try to be more aseptic when
comparing with another project. But there is only an idea, take it or
not as you consider.
|
|
A first draft for these was added and will probably become much better in
the next few iterations.
|
|
I went through the whole paper and tried to decrease its size even futher,
also a first draft of the summarized discussion has been added.
|
|
TeXLive recently transitioned from its 2019 version to its 2020 version
thanks to Elham Saremi's trial of the this project. The fact that
traditionally Maneage installs all TeXLive packages in a per-year directory
is very annoying and required an update in the core Maneage system every
year. So I suddently recognized that we can fix this by setting a different
name for the directory holding the release year. This has been implemented
with this commit.
I have also done this change in the main Maneage branch for other projects
to also benefit from this correction.
|
|
In the previous commit, I removed the year from the basic installation of
TeXLive packages, but I forgot to correct this in the high-level TeXLive
packages! This is corrected with this commit.
|
|
It is this time of year again: TeXLive has transitioned to its 2020 release
and the year is imprinted into the installation directory of TeXLive. Until
now, we have had to manually change this year and it caused complications
and was very annoying.
With this commit, the explicit year has been removed from TeXLive's
installation and we now simply put a `maneage' instead of the year. I tried
this on another system and it worked nicely. Until the time that we can
fully install LaTeX packages from source tarballs, this is the best thing
we could do for now.
|
|
Thanks Roberto, they are now implemented.
|
|
I corrected bugs, typos, double words, and punctuations along the whole
text. I do some comments which are always highlighted with \hl{this is my
comment}, so you can identify them easily in the pdf. If you want to
remove, then you can do it easily with Ctrl+R since I think you never used
\hl. Finally, I added my name as coauthor but, please, feel free to remove
it if you want.
Note from Mohammad: since there were two other suggested commits before
this that were already merged, I rembased Roberto's commits and fixed a few
minor conflicts.
|
|
There weren't any conflicts in this merge.
|
|
With this commit, a short line telling that Maneage has tutorials
showing the workflow in a practical way has been added. Because of we
are near to the limit of words, I have added just a very short line. The
sentence does not specify any file name since the tutorial(s) is not
included (it will be in a near future).
|
|
With this commit, I have included a small line to recognize Julia
Aguilar-Cabello as the designer of the Maneage's logo.
|
|
|
|
The contents until two commits ago when I started to summarize the paper
are now in a new and shorter format: previously the discussion started on
page 25, but now it starts on page 17. It is still a little longer than
8000 words, but not as significantly as before. I will add the discussion
and also try to summarize it futher before submission.
|
|
As described in the previous commit, we had to shorten the paper to roughly
8000 words (which is significant decrease!). With this commit, I am
committing the current version of the summarized paper, where the
introduction, defintions and principles have now been summarized. I am now
summarizing the rest (describing Maneage and the discussion).
|
|
Elham Saremi recently reported the following errors when building Numpy in
numpy/core/src/npysort/radixsort.c.src: "error: 'for' loop initial
declarations are only allowed in C99 or C11 mode". After some searching, I
found Issue 14147[1] on Numpy's main repository about the same problem. As
described there, apparently Numpy needs C99 compiler, but doesn't check for
it or set it manually (for some strange reason, leaving it to the packagers
to check if they want!!!).
Any way, after a check with Elham, we were able to fix it by adding the
`--std=c99' to CFLAGS of Numpy's build and with this commit, it is now
being implemented in the core Maneage to not cause a problem in any other
project.
[1] https://github.com/numpy/numpy/issues/14147
|
|
We just recently recognied that the final paper should not be longer than
8000 words. The easiest way was just to start a new `paper.tex' and bring
in parts from the original/long version. We can use all the hard work that
went into writing the long paper later (possibly in a manual for
Maneage). So I don't want to suddenly distroy its history at this point.
To let Git know about renaming the original `paper.tex' to
`tex/src/paper-long.tex', I am making this commit. This commit doesn't have
any `paper.tex' and only records the fact that it has been renamed. In the
next commit, I'll re-create `paper.tex' which will host the short/final
version. But thanks to this commit, if we later make any changes to long
version, Git will know that it was originally the main `paper.tex'.
|
|
Thank you very much guys :-).
|
|
I tried to get all the words I knew. Some may be correct in different
conventions. It definitely needs a second or third review for spell
checking.
Suggested some additional formatting, including but not limited to
using the LaTeX \textsuperscript{} command for stating dates.
Also, some unfamiliar rare words that finished with `-able` or
`-ability` may need to be changed. Finding better alternatives to
better simplify and ease the `readabiliy` ;-) of the paper - I see
it's hard not to use them actually. It has got me wondering what
better alternatives are available? We'll find out.
|
|
to shorten some sentences, fix some spelling/typos, and further
simplify some parts.
I can see that there are some spelling errors in the rest of the paper.
They will be taken care of in the next commit.
|
|
There was only a small conflict in the abstract with Zahra's corrections
and that has been fixed.
|
|
A parenthesis was added to the abstract to hightlight the importance of
data lineage for reproducibility. Also, the definitions that Zahra had
given for reproducibility were added as comments above the part on defining
reproducibility. We'll later decide how to blend them in, if possible.
|
|
With this commit, I have corrected several minor typos in Section 2
(Definitions). I have also put a couple of notes for modify or ignore
some phrases.
|
|
With this commit, minor typos have been corrected in the Introduction
section. The majority of them are just small corrections, others are in
order to not use contractions ("did not" instead of "didn't" and so on).
Other modifications have been added with the aim of remove some small
portion of the phrases to make it more focused.
|
|
With this commit, I have tried to make the Abstract a bit shorter. I
think it was too long considering that there are plenty of space in the
paper to describe some of the points that were noticed in the abstract.
The main point is just to try to be atractive to the reader being
focused to the main points. In any case I think there are room for
improving it. The keywords have also been sorted alphabetically.
|
|
With this commit, I have added my name as co-author of the paper. Since
my affiliation is the same as Mohammad's affiliations, I did not have to
add any additional line for that.
|
|
Because one of the most important properties of Manaege is
reproducibility. I think is it better to say something about it in the
abstract, like the thing that you do in your speech.
With this commit, I noted something about it in the abstract.
|
|
Until now, Astropy was instructed to build its own internal copy of the
Expat library. However, with the recent commits before, Maneage now
includes an installation of Expat and Astropy can't keep the two (its
internal version and the project's version) separate, so they conflict and
don't let Astropy get built.
With this commit, the problem is fixed by setting the Expat library as an
explicit dependency of Astropy and asking Astropy to ignore its internal
copy.
While doing this, I recognized that it is much easier and elegant to add
steps in various stages of the `pybuild' function through hooks instead of
variables. So the fifth argument of the `pybuild' function was removed and
now it actually checks if hooks are defined as functions and if so, they
will be called.
The `pyhook_after' function was also implemented in the installation of
`pybind11' (which needed it, given that the 5th argument of `pybuild' was
removed) and after doing a test-build, I noticed that two lines were not
ending with a `\' in `boost' (a dependency of `pybind11').
Commit written originally by Mohammad Akghlaghi
|
|
Raul noticed this during the build: I had mistakenly put an extra `&&' at
the start of the line where the line before ended with a `;'.
|
|
Until now, Astropy was instructed to build its own internal copy of the
Expat library. However, with the recent commits before, Maneage now
includes an installation of Expat and Astropy can't keep the two (its
internal version and the project's version) separate, so they conflict and
don't let Astropy get built.
When trying to build Manage (the actual project, not this paper) after
applying the commits before there, Raul discovered this problem.
With this commit, the problem is fixed by setting the Expat library as an
explicit dependency of Astropy and asking Astropy to ignore its internal
copy.
While doing this, I recognized that it is much easier and elegant to add
steps in various stages of the `pybuild' function through hooks instead of
variables. So the fifth argument of the `pybuild' function was removed and
now it actually checks if hooks are defined as functions and if so, they
will be called.
The `pyhook_after' function was also implemented in the installation of
`pybind11' (which needed it, given that the 5th argument of `pybuild' was
removed) and after doing a test-build, I noticed that two lines were not
ending with a `\' in `boost' (a dependency of `pybind11').
|
|
Until now we would simply return the version numbers as they were written
into the separate files and situations can happen where the version numbers
contain an underscore (`_'). However, this character is a methematical
character in LaTeX, causing LaTeX to complain and abort.
With this commit, a step has been added at the end of the configure script
to convert any possible `_' to `\_'. Once it is commented (a backslash is
put behind it), the underscore will be printed as it is in the final PDF.
This commit was originally written by Mohammad Akhlaghi
|