aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorLines
2020-04-20Configuration: current directory printed properly in stdoutMohammad Akhlaghi-9/+9
Until now, the message that we printed just before starting to build software didn't actually print the current directory, but only `pwd'. With this commit, this is fixed (it uses the `currentdir' variable that is already found before).
2020-04-20README-hacking.md: Removed TeXLive year problem and numberd checklistMohammad Akhlaghi-21/+11
We recently fixed the problem of TeXLive that hard-codes the year of its build in its installation directory. But the note on this problem was still kept in `README-hacking.md'. That part is now removed. Also, to help in following the checklist, it is now an ordered list.
2020-04-20Added link to citation from GNU Parallel, slightly summarized itMohammad Akhlaghi-1/+1
Boud previously pointed out that that he couldn't find a reference to the citation, so I added it as a link over "its FAQ" (since its described in its `doc/citation-notice-faq.txt' file). I also removed the first part of the quote which was not really necessary, the heart of the quote is the latter part that still remains.
2020-04-20Minor edits on Boud's corrections to mergeMohammad Akhlaghi-33/+31
I tried to make it slightly shorter, but I felt that it is important to keep the quote from GNU Parallel and in particular the financial aid it asks for. It will help readers feel the gravity of the sitution for this software author. The precise citation of the quote was given in the long version.
2020-04-20Minor copyedits - 4.2.2 software citationBoud Roukema-14/+12
This reduces the length by about 70 words. The biggest change is to remove what looks like a citation from `parallel'. I couldn't find the citation in GNU parallel 20161222-1 (Debian/stretch), nor with search engines. I don't think that the quote is really so useful (even assuming it's a valid quote from somewhere): citation practices are a mix between ethics, preparation to convince referees, citing those who are already cited frequently, and the practicality of searching for and verifying references against the information for which they are used. Showing that Maneage makes citation not only easy, but more or less automatic, bypasses some of the compromises between practicality and ethics.
2020-04-20Minor copyedits - 4.2.1 source verificationBoud Roukema-8/+8
Minor rewording; a reduction of about 12 words.
2020-04-20Minor copyedits - 4.2 intro configurationBoud Roukema-9/+9
Minor edits - reduces about 17 words.
2020-04-20Minor copyedits - 4.1 Maneage orchestrationBoud Roukema-13/+13
This commit reduces about 25 words from the 4.1 Maneage orchestration, aka `make`, section.
2020-04-20Minor edits to 4 Maneage introBoud Roukema-11/+11
This drops the word count in the introductory part of the Maneage section by about 15 words.
2020-04-20Clarfication on free software complementing reproducibilityMohammad Akhlaghi-1/+1
Thanks to Boud's corrections, I see that the sentence can be confusing and not convey the point I wanted to make properly, so I am clarifying it here. The main point is that this principle complements the definition of reproducibility, not the other principls.
2020-04-20minor language editsBoud Roukema-4/+4
These tiny language edits add 1 word in length.
2020-04-20Boud moved to third author, Lyon affiliation for Mohammad, minor editsMohammad Akhlaghi-16/+17
Boud has contributed a lot to Maneage over the last few years and with the last few commits he also contributed significantly to this paper, so I am moving him to third author. Thanks to Boud, I also remembered that even though I done the most important parts of Maneage in Lyon, I hadn't added it as an affiliation for myself, so I added it. Maneage became a separate project in Lyon. Finally, I tried to decrease the length of the acknowledgments by adding some abbreviations that were shared between various parts.
2020-04-20boud authorship/affil/acknowlBoud Roukema-3/+10
Unfortunately, adding in my name/affiliations/acknowledgments adds about 90 words to the text. We don't really know if these are counted by the editor in the 8000-word limit. I changed `funded' to `funded/supported'. I only get funding from one out of the three sources I acknowledge, but it's important to acknowledge all three.
2020-04-20Minor edits in the textMohammad Akhlaghi-4/+4
While looking over the PDF, a few small edits were made to be more clear.
2020-04-20Maneage instead of Template in README-hacking.md and copyright noticesMohammad Akhlaghi-525/+447
Until now, throughout Maneage we were using the old name of "Reproducible Paper Template". But we have finally decided to use Maneage, so to avoid confusion, the name has been corrected in `README-hacking.md' and also in the copyright notices. Note also that in `README-hacking.md', the main Maneage branch is now called `maneage', and the main Git remote has been changed to `https://gitlab.com/maneage/project' (this is a new GitLab Group that I have setup for all Maneage-related projects). In this repository there is only one `maneage' branch to avoid complications with the `master' branch of the projects using Maneage later.
2020-04-19Imported the recent parallel works on the principles sectionMohammad Akhlaghi-65/+64
The conflict was only on the list of existing tools and that was easily corrected.
2020-04-19Further summarized the principles sectionMohammad Akhlaghi-50/+49
Following Boud's great corrections, I was able to futher summarize this section, decreasing roughly 150 more words from this section.
2020-04-19List of existing tools made cleaner in LaTeX sourceMohammad Akhlaghi-1/+11
Until now the list of existing tools was written in one line which made it hard to read and follow, especially since we added links. It is now expanded into a one-line per item which makes to no difference in the final PDF.
2020-04-19Principles - P7 FOSSBoud Roukema-5/+5
Reduction by 15 words.
2020-04-19Principles - P6 ScalabilityBoud Roukema-2/+2
Reduction by 7 words. For a regular GNU/Linux of other unix-like system user, the bit about ISO C compilers even existing for Microsoft systems more or less says "despite there being no point ever trying to do science on a Microsoft system, you *could* hypothetically compile and run any ISO C program on it". Interesting, but not directly of interest to this user, who is unlikely to actually want to do it. A Microsoft user who thinks that s/he can do science on a Microsoft system will typically think "Microsoft is good, so of course I can run anything I want on it". So the message here could more likely be seen as provocative rather than useful, since this user is unaware of the fundamental problems of Microsoft as an authoritarian, manipulative, centralised organisation providing bad software. So either way, the parenthesis about Microsoft can be safely removed given the space constraints.
2020-04-19Principles - P5 History and temporal provenanceBoud Roukema-3/+3
Reduction by 5 words. The term "exploratory research" is intended in the specific sense listed at en.Wikipedia: https://en.wikipedia.org/wiki/Exploratory_research to distinguish it from hypothesis testing. The final phases of clinical (medical) research, for example, to test whether a candidate SARS-CoV-2 vaccine is (i) effective and (ii) safe in homo sapiens, cannot accept the exploratory methods that are acceptable in astronomy, or in other exploratory research (which is acceptable in the early stages of medical research). Clinical trial registration is aimed at *preventing* scientists from modifying their methods in a given project: https://en.wikipedia.org/wiki/Clinical_trial_registration
2020-04-19Principles - P4 verifiable inputs and outputsBoud Roukema-1/+1
One superfluous word was removed.
2020-04-19Principles - P3 minimal complexityBoud Roukema-5/+5
Minor wording changes - reduction by 10 words.
2020-04-19principles - P2 modularityBoud Roukema-6/+6
Minor wording improvements; reduction by 10 words.
2020-04-19principles: all nounsBoud Roukema-2/+2
For consistency, the principles should either all be nouns, or all be adjectives. Most are nouns, so this commit switches the adjectives to nouns.
2020-04-19Principles - P1 - CompleteBoud Roukema-19/+19
Compression by about 40 words. Updating python2 to python3 is often nothing more than modifying print statements, so removing this doesn't weaken the text by much. Re-creation helps avoid thinking of watching movies, going to the beach, reading a novel, when seeing the word "recreation": https://en.wiktionary.org/wiki/recreation#Usage_notes The matplotlib sentence was not so clear: now it's a bit shorter and hopefully clearer.
2020-04-19Principles introBoud Roukema-3/+3
Word-length reduction (8 words) of the first part of 3 Principles. Change in meaning: we can argue that *results* are not part of science, but science needs aims as well as methods; hypotheses are needed too, but these overlap between the aims and methods. So I put "primarily".
2020-04-19Clickable URLs for the 19 earlier reproducibility solutionsBoud Roukema-1/+1
In this commit, the URLs for the 19 "earlier solutions" at the beginning of "3 Principles" are recovered from tex/src/paper-long.tex and put behind the package names as clickable words. To reduce the chance that these are interpreted as references, "Project1 (yyy1), Project2 (yyy1)" is changed to "yyy1: Project1, Project2". We cannot add full references because of the 8000-word space constraint. With a minor word improvement, this commit overall reduces the word count very slightly, by 9, according to pdftotext paper.pdf |wc paper.txt before and after the commit.
2020-04-18Added arbitrarily complex to description of scalabilityMohammad Akhlaghi-1/+1
Scalability is not just on the size of the project, but also its complexity, so I added an `and/or complex' to the description of the scalability principle.
2020-04-18Added Scalability as a principle, minor edits/clippingsMohammad Akhlaghi-20/+38
Someone reading the principles section until now would think that IPOL is an almosts perfect solution, and for its usecase it certainly is. However, this is only because of the nature of its work: it only focuses on algorithms, not usage/analysis which cannot be done in raw ISO C. So with this commit, I added a new principle on Scalability and discussed this limitation of IPOL there. To avoid simply lengthening the text, to add this new principle, I had to remove/summarize some parts that seemed redundant. In the process, I also removed some of the existing tools (at the start of the principles section) that had several others in the same time frame, I have already mentioned (through the "and many more") that this list is not complete. Also, the list of people to thank in the acknowledgments is now put in a one-line per name to be more easily maintainable: Boud and Mohammad-reza were added, and given that I have sent the paper to several other people for feedback, I expect the list to get longer.
2020-04-18Minor language edits in paper.texBoud Roukema-7/+7
A few more minor language edits. For parseable vs parseable, see https://en.wiktionary.org/wiki/parsable which recommends `parsable` for formal usage.
2020-04-18Minor language edits in paper.texBoud Roukema-6/+6
These are mostly minor language edits. There is one significant fix: the word `typically' in `a non-free software project typically' cannot be distributed by the project. There is a whole range of licences between strictly free software definition, strictly OSI open-source definition, and fully closed source. For example, software with a no-commercial usage licence (similar to CC-BY-NC) can be publicly redistributed on any server, as long as there is no requirement of payment or no requirement of payment that is "commercial" (according to lawyers' interpretation of when a payment is commercial).
2020-04-18Two papers cited, for research software and data management plansMohammad Akhlaghi-40/+53
These are important aspects that are highly relevant to Maneage: its philosophy (the former) and usability (the latter). To add them, I tried to summarize some other parts of the paper.
2020-04-18Imported recent updates in Maneage, no conflictsMohammad Akhlaghi-41/+25
There weren't any conflicts in this merge.
2020-04-18Corrected several instances of n't to notRoberto Baena-Gallé-3/+3
Three such cases and they are fixed.
2020-04-18Edits in the text to make it shorter and fix a few mistakesMohammad Akhlaghi-20/+14
A few minor issues were found and fixed in the text. I also tried to shorten it a little further.
2020-04-18Properly adding libiconv to the libraries that libstdc++ links withMohammad Akhlaghi-1/+4
Of the GCC dynamically linked libraries we need to manually add RPATH to all and for `libstdc++' we also need to tell it to link with `libiconv'. Until now, the conditional to check for libstdc++ was not working and thus libiconv wasn't been added to it. With this commit the conditional has been corrected and is now working. Also, to help in reading the logs, an echo statement was added after every call to PatchELF.
2020-04-17Replaced name of directory under akhlaghi.org as backup serverMohammad Akhlaghi-17/+17
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).
2020-04-17Removed confusing comment in configure.sh, and extra variableMohammad Akhlaghi-12/+2
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.
2020-04-17Patchelf is now built dynamicallyMohammad Akhlaghi-11/+2
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.
2020-04-17Imported recent work in Maneage, minor conflicts fixedMohammad Akhlaghi-67/+66
A few minor conflicts came up that were easily fixed.
2020-04-17Minor typo correctionsMohammad Akhlaghi-3/+3
I forgot to put these in the last commit! They are now implemented.
2020-04-17Edited the text, normal sized bibliography and TARGETS.conf in figMohammad Akhlaghi-69/+73
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.
2020-04-17IMPORTANT: software config directly under reproduce/software/configMohammad Akhlaghi-61/+60
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.
2020-04-15A single word correctionMohammad Akhlaghi-1/+1
In the introduction I had mistakenly put "metadata" instead of "workflow", its corrected with this commit.
2020-04-15Acknowledged Ryan O'Connor (from RDA), for his commentsMohammad Akhlaghi-1/+1
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.
2020-04-15Merged Raul's correction in the acknowledgmentsMohammad Akhlaghi-0/+0
I had also done this in the main branch, but I noticed this commit later!
2020-04-15Commented the note to DSJ editors and refereesMohammad Akhlaghi-2/+2
This was only relevant for the submitted version, so I am committing it until the next submission.
2020-04-15Minor typo correctionsMohammad Akhlaghi-12/+11
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 ;-)).
2020-04-14Removed David from Acknowledgments because he is a co-authorRaul Infante-Sainz-1/+1
Since David is a co-author of the paper, I have removed him from the Acknowledgments paragraph.