Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[REVIEW]: Annotation Sniffer: A tool to Extract Code Annotations Metrics #1960

Closed
whedon opened this issue Dec 17, 2019 · 48 comments
Closed

[REVIEW]: Annotation Sniffer: A tool to Extract Code Annotations Metrics #1960

whedon opened this issue Dec 17, 2019 · 48 comments

Comments

@whedon
Copy link
Collaborator

@whedon whedon commented Dec 17, 2019

Submitting author: @phillima (Phyllipe Lima)
Repository: https://github.com/phillima/asniffer/
Version: v2.0.0
Editor: @gkthiruvathukal
Reviewer: @arcuri82, @danieledipompeo
Archive: 10.5281/zenodo.3701910

Status

status

Status badge code:

HTML: <a href="https://joss.theoj.org/papers/a7960c34f395e10a8408f4e2dfaabcb9"><img src="https://joss.theoj.org/papers/a7960c34f395e10a8408f4e2dfaabcb9/status.svg"></a>
Markdown: [![status](https://joss.theoj.org/papers/a7960c34f395e10a8408f4e2dfaabcb9/status.svg)](https://joss.theoj.org/papers/a7960c34f395e10a8408f4e2dfaabcb9)

Reviewers and authors:

Please avoid lengthy details of difficulties in the review thread. Instead, please create a new issue in the target repository and link to those issues (especially acceptance-blockers) by leaving comments in the review thread below. (For completists: if the target issue tracker is also on GitHub, linking the review thread in the issue or vice versa will create corresponding breadcrumb trails in the link target.)

Reviewer instructions & questions

@arcuri82 & @danieledipompeo, please carry out your review in this issue by updating the checklist below. If you cannot edit the checklist please:

  1. Make sure you're logged in to your GitHub account
  2. Be sure to accept the invite at this URL: https://github.com/openjournals/joss-reviews/invitations

The reviewer guidelines are available here: https://joss.readthedocs.io/en/latest/reviewer_guidelines.html. Any questions/concerns please let @gkthiruvathukal know.

Please try and complete your review in the next two weeks

Review checklist for @arcuri82

Conflict of interest

  • I confirm that I have read the JOSS conflict of interest (COI) policy and that: I have no COIs with reviewing this work or that any perceived COIs have been waived by JOSS for the purpose of this review.

Code of Conduct

General checks

  • Repository: Is the source code for this software available at the repository url?
  • License: Does the repository contain a plain-text LICENSE file with the contents of an OSI approved software license?
  • Contribution and authorship: Has the submitting author (@phillima) made major contributions to the software? Does the full list of paper authors seem appropriate and complete?

Functionality

  • Installation: Does installation proceed as outlined in the documentation?
  • Functionality: Have the functional claims of the software been confirmed?

Documentation

  • A statement of need: Do the authors clearly state what problems the software is designed to solve and who the target audience is?
  • Installation instructions: Is there a clearly-stated list of dependencies? Ideally these should be handled with an automated package management solution.
  • Example usage: Do the authors include examples of how to use the software (ideally to solve real-world analysis problems).
  • Functionality documentation: Is the core functionality of the software documented to a satisfactory level (e.g., API method documentation)?
  • Automated tests: Are there automated tests or manual steps described so that the functionality of the software can be verified?
  • Community guidelines: Are there clear guidelines for third parties wishing to 1) Contribute to the software 2) Report issues or problems with the software 3) Seek support

Software paper

  • Summary: Has a clear description of the high-level functionality and purpose of the software for a diverse, non-specialist audience been provided?
  • A statement of need: Do the authors clearly state what problems the software is designed to solve and who the target audience is?
  • State of the field: Do the authors describe how this software compares to other commonly-used packages?
  • Quality of writing: Is the paper well written (i.e., it does not require editing for structure, language, or writing quality)?
  • References: Is the list of references complete, and is everything cited appropriately that should be cited (e.g., papers, datasets, software)? Do references in the text use the proper citation syntax?

Review checklist for @danieledipompeo

Conflict of interest

  • I confirm that I have read the JOSS conflict of interest (COI) policy and that: I have no COIs with reviewing this work or that any perceived COIs have been waived by JOSS for the purpose of this review.

Code of Conduct

General checks

  • Repository: Is the source code for this software available at the repository url?
  • License: Does the repository contain a plain-text LICENSE file with the contents of an OSI approved software license?
  • Contribution and authorship: Has the submitting author (@phillima) made major contributions to the software? Does the full list of paper authors seem appropriate and complete?

Functionality

  • Installation: Does installation proceed as outlined in the documentation?
  • Functionality: Have the functional claims of the software been confirmed?
  • Performance: If there are any performance claims of the software, have they been confirmed? (If there are no claims, please check off this item.)

Documentation

  • A statement of need: Do the authors clearly state what problems the software is designed to solve and who the target audience is?
  • Installation instructions: Is there a clearly-stated list of dependencies? Ideally these should be handled with an automated package management solution.
  • Example usage: Do the authors include examples of how to use the software (ideally to solve real-world analysis problems).
  • Functionality documentation: Is the core functionality of the software documented to a satisfactory level (e.g., API method documentation)?
  • Automated tests: Are there automated tests or manual steps described so that the functionality of the software can be verified?
  • Community guidelines: Are there clear guidelines for third parties wishing to 1) Contribute to the software 2) Report issues or problems with the software 3) Seek support

Software paper

  • Summary: Has a clear description of the high-level functionality and purpose of the software for a diverse, non-specialist audience been provided?
  • A statement of need: Do the authors clearly state what problems the software is designed to solve and who the target audience is?
  • State of the field: Do the authors describe how this software compares to other commonly-used packages?
  • Quality of writing: Is the paper well written (i.e., it does not require editing for structure, language, or writing quality)?
  • References: Is the list of references complete, and is everything cited appropriately that should be cited (e.g., papers, datasets, software)? Do references in the text use the proper citation syntax?
@whedon

This comment has been minimized.

Copy link
Collaborator Author

@whedon whedon commented Dec 17, 2019

Hello human, I'm @whedon, a robot that can help you with some common editorial tasks. @arcuri82, @danieledipompeo it looks like you're currently assigned to review this paper 🎉.

⭐️ Important ⭐️

If you haven't already, you should seriously consider unsubscribing from GitHub notifications for this (https://github.com/openjournals/joss-reviews) repository. As a reviewer, you're probably currently watching this repository which means for GitHub's default behaviour you will receive notifications (emails) for all reviews 😿

To fix this do the following two things:

  1. Set yourself as 'Not watching' https://github.com/openjournals/joss-reviews:

watching

  1. You may also like to change your default settings for this watching repositories in your GitHub profile here: https://github.com/settings/notifications

notifications

For a list of things I can do to help you, just type:

@whedon commands

For example, to regenerate the paper pdf after making changes in the paper's md or bib files, type:

@whedon generate pdf
@whedon

This comment has been minimized.

Copy link
Collaborator Author

@whedon whedon commented Dec 17, 2019

Attempting to check references...
@whedon

This comment has been minimized.

Copy link
Collaborator Author

@whedon whedon commented Dec 17, 2019

Attempting PDF compilation. Reticulating splines etc...
@whedon

This comment has been minimized.

Copy link
Collaborator Author

@whedon whedon commented Dec 17, 2019


OK DOIs

- https://doi.org/10.1016/j.jss.2017.11.024 is OK
- 10.1007/3-540-39538-5 is OK
- 10.1145/1943226.1943230 is OK
- https://doi.org/10.1016/j.jss.2012.12.024 is OK
- 10.1145/1943226.1943230 is OK

MISSING DOIs

- None

INVALID DOIs

- None
@whedon

This comment has been minimized.

Copy link
Collaborator Author

@whedon whedon commented Dec 17, 2019

@arcuri82

This comment has been minimized.

Copy link

@arcuri82 arcuri82 commented Dec 26, 2019

hi,
here some feedback, in no specific order of importance:

  • when I started the review, the repository had 0 stars.
    I starred it. You might want to do the same, as more stars give it a better impression.

  • "Download the source code and generate an executable jar file."
    That is not such a great approach.
    On GitHub, on the "release" page
    https://github.com/phillima/asniffer/releases
    you can add any custom file to a release, besides the zip of the source code.
    You could add asniffer.jar directly there as part of the release.

  • You might want to use Travis (https://travis-ci.org) or CircleCI (https://circleci.com).
    Using (the free) Travis is as simple as adding a .travis.yml file with content

     language: java
     sudo: false
    
     jdk:
       - openjdk8
    
     cache:
       directories:
     	  - .autoconf
     	  - $HOME/.m2
    
     notifications:
       email: true
    
     script: mvn clean verify --fae
    

    and create an account then linked with a hook on GitHub (literally, it just take 5-10 minutes to do).
    You can then add a badge for Travis on your README.md file.
    For example, look at the GSON library from Google (https://github.com/google/gson),
    where the "build passing" is coming from Travis.
    Personally, I would not consider any open-source tool that does not use any form
    of Continuos Integration.

  • versioning of the project is inconsistent. The pom.xml is using version 0.0.1-SNAPSHOT, whereas the release page has 2.0.0 as latest.

  • when building with mvn package, there is no generated file called asniffer.jar.
    There is instead: asniffer-0.0.1-SNAPSHOT-jar-with-dependencies.jar.
    You might want to change the configurations of the maven-assembly-plugin by adding <finalName>asniffer</finalName>

  • I tried to run the tool on itself:
    java -jar target/asniffer-0.0.1-SNAPSHOT-jar-with-dependencies.jar . . single
    The generated file is ..xml. Is that really a good name?
    If I rather try with
    java -jar target/asniffer-0.0.1-SNAPSHOT-jar-with-dependencies.jar . foo.xml single
    I get a NullPointerException.
    Might want to provide bit more documentation on what <path to xml report> actually is.

  • The path must be a root folder that contains other projects directories. I guess a strong assumption here is that the projects are using Maven with pom.xml files, where source code is under src/main/java. This might not be true for other build tools such as Gradle and Ant. You might want to specify that you are considering projects structured with Maven conventions.

  •   mvn install
      mvn clean package
    

    bit confusing. Why doing an install before a package? You are creating an executable jar file, so package would suffice. Furthermore, even if you need install, that would execute package as well (see Maven lifecycle https://maven.apache.org/ref/3.6.3/maven-core/lifecycles.html). So, just a mvn clean install would suffice. Or am I misunderstanding something here?

  • authorship of this publication needs some clarification. The authors are listed as:
    "Phyllipe Lima, Eduardo Guerra, and Paulo Meirelles".
    From the list of code contributors at
    https://github.com/phillima/asniffer/graphs/contributors
    There are 58 commits from @phillima (Phyllipe Lima?) and a single one from @paulormm (Paulo Meirelles?). It seems there are zero commits from Eduardo Guerra.
    Furthermore, the code is from a JSS paper titled A Metrics Suite for code annotation assessment (https://www.sciencedirect.com/science/article/pii/S016412121730273X), which has 6 authors, not 3.
    Please review the authorship guidelines at https://joss.readthedocs.io/en/latest/submitting.html#authorship
    which states: "Purely financial (such as being named on an award) and organizational (such as general supervision of a research group) contributions are not considered sufficient for co-authorship of JOSS submissions, but active project direction and other forms of non-code contributions are."
    This is the first time I review for JOSS, so maybe I am misunderstanding those JOSS rules. Could you please comment on them?

@phillima

This comment has been minimized.

Copy link

@phillima phillima commented Dec 27, 2019

Hello @arcuri82 , thank you very much for your comments and considerations. I will begin working on them.

  • Regarding the "authorship", I would like to point out that @guerraem (Eduardo Guerra) and @paulormm (Paulo Meirelles) are my PhD Advisors and they were major contributors to the design and modelling of the tool. And also the definition and proposal of the metrics suite, the ones the ASniffer is able to extract.
    The JSS paper (https://www.sciencedirect.com/science/article/pii/S016412121730273X) has other contributions (such as the threshold values and percentile rank analysis), which also involved other authors. However, not of all them were involved in the development and design of the ASniffer tool.
@phillima

This comment has been minimized.

Copy link

@phillima phillima commented Jan 4, 2020

Hello @arcuri82 . Once again, thank you for your comments and considerations. I have taken all off them in consideration and generated a new version of the tool (2.1.0). Please, feel free to make new comments and suggestions. Following is my response to your comments.

  1. when I started the review, the repository had 0 stars.
    I starred it. You might want to do the same, as more stars give it a better impression.
  • Response: I have starred the project now. I have also asked @guerraem and @paulormm to do the same.
  1. "Download the source code and generate an executable jar file."
    That is not such a great approach.
    On GitHub, on the "release" page
    https://github.com/phillima/asniffer/releases
    you can add any custom file to a release, besides the zip of the source code.
    You could add asniffer.jar directly there as part of the release.
  1. You might want to use Travis (https://travis-ci.org) or CircleCI (https://circleci.com).
  • Response: I have integrated Travis CI with the ASniffer tool and added the badge in the Readme. Adding a form of CI definitely improves the tool, and becomes much more professional.
  1. Versioning of the project is inconsistent. The pom.xml is using version 0.0.1-SNAPSHOT, whereas the release page has 2.0.0 as latest.
  • Response: I have updated the pom.xml to version 2.1.0 (the latest release).
  1. When building with mvn package, there is no generated file called asniffer.jar.
  • Response: I made the necessary adjustments in the pom.xml to fix this issue. The file is now correctly being generated as asniffer.jar.
  1. I tried to run the tool on itself: java -jar target/asniffer-0.0.1-SNAPSHOT-jar-with-dependencies.jar . . single
    The generated file is ..xml. Is that really a good name?
    If I rather try with java -jar target/asniffer-0.0.1-SNAPSHOT-jar-with-dependencies.jar . foo.xml single I get a NullPointerException.
    Might want to provide bit more documentation on what actually is.
  • Response: Regarding the .xml file name, I fixed the part that generates the XML report. It was having trouble working around the . command as the current directory. Using the normalize() method fixed it.

Regarding the foo.xml it will not work, because this is not how the ASniffer was intended to work. The "path to xml" should not include any .xml file name. It should only contain a path to a directory where you wish to store the report. Generating the XML file will be performed by the ASniffer. It will generate an xml file with the project's name. I changed the README file to make it clearer.
Also, the "path to xml" is now optional (as of version 2.1.0). If not included, the ASniffer will place the report in the "path to project".

    • The path must be a root folder that contains other projects directories. I guess a strong assumption here is that the projects are using Maven with pom.xml files, where source code is under src/main/java. This might not be true for other build tools such as Gradle and Ant. You might want to specify that you are considering projects structured with Maven conventions.
  • Response.: This multi-project feature assumes that the user wants to analyze several projects at once. It does not necessarily need to contain a pom.xml or be under src/main/java. However, if the user wants to use this feature is must manually arrange the folders as described in the README file. If the "single" option is used, the tool will search every .java file in the provided directory path, and consider it to be part of the same project. I have made updates in the README to make this clearer.
  1. Why doing an install before a package?
  • Response: I have updated the README file, and as you suggested mvn clean install is enough. It was indeed confusing.

Regarding the authorship I have explained in another comment.

Best Regards!

@arcuri82

This comment has been minimized.

Copy link

@arcuri82 arcuri82 commented Jan 6, 2020

@phillima: thanks. it looks like you have addressed all concerns I had.

@gkthiruvathukal

This comment has been minimized.

Copy link

@gkthiruvathukal gkthiruvathukal commented Jan 20, 2020

@danieledipompeo Do you have any review feedback for us? We have received feedback from @arcuri82, which has been addressed by @phillima. Please follow up if you have any other feedback.

@danieledipompeo

This comment has been minimized.

Copy link

@danieledipompeo danieledipompeo commented Jan 20, 2020

Sorry, I'm late, but I had some problems at work that prevented me from finishing the review. I can complete the review by this week. Is it too late? @gkthiruvathukal let me know if you can give me more time.

@danieledipompeo

This comment has been minimized.

Copy link

@danieledipompeo danieledipompeo commented Jan 27, 2020

Sorry again for my late review.
My comments follow.

General checks

  • Repository: Is the source code for this software available at the repository url?
  • License: Does the repository contain a plain-text LICENSE file with the contents of an OSI approved software license?
  • Contribution and authorship: Has the submitting author (@phillima) made major contributions to the software? Does the full list of paper authors seem appropriate and complete?
    It has been already clarify this point.

Functionality

  • Installation: Does installation proceed as outlined in the documentation?
    I have installed the code on Ubuntu server 18.04, and a required plugin is missed:
<!-- https://mvnrepository.com/artifact/javax.xml.bind/jaxb-api -->
<dependency>
    <groupId>javax.xml.bind</groupId>
    <artifactId>jaxb-api</artifactId>
    <version>2.4.0-b180830.0359</version>
</dependency>
  • Functionality: Have the functional claims of the software been confirmed?

Yes, it has.

  • Performance: If there are any performance claims of the software, have they been confirmed? (If there are no claims, please check off this item.)

Documentation

  • A statement of need: Do the authors clearly state what problems the software is designed to solve and who the target audience is?

It is quite clear the point of this paper/tool. It extracts metrics from java code. Perhaps, a more in-depth description of competitors should be provided.

  • Installation instructions: Is there a clearly-stated list of dependencies? Ideally these should be handled with an automated package management solution.

The authors use maven to build the project. A needed dependency is missed. After adding it to the pom.xml, the project has been built.

  • Example usage: Do the authors include examples of how to use the software (ideally to solve real-world analysis problems).

No example is given.

  • Functionality documentation: Is the core functionality of the software documented to a satisfactory level (e.g., API method documentation)?

I cannot find any code documentation.

  • Automated tests: Are there automated tests or manual steps described so that the functionality of the software can be verified?

The source code is equipped with unit tests.

  • Community guidelines: Are there clear guidelines for third parties wishing to 1) Contribute to the software 2) Report issues or problems with the software 3) Seek support

Software paper

  • Summary: Has a clear description of the high-level functionality and purpose of the software for a diverse, non-specialist audience been provided?

Yes, the paper provides itself enough information to understand the presented functionality.

  • A statement of need: Do the authors clearly state what problems the software is designed to solve and who the target audience is?

The presented tool extracts class metrics by exploiting the Eclipse JDT plugin. In the XML example file output (I suppose this file it has been generated through the tool) information about class metrics are listed.

  • State of the field: Do the authors describe how this software compares to other commonly-used packages?

No information is given about this statement. A more in-depth comparison should be provided.

  • Quality of writing: Is the paper well written (i.e., it does not require editing for structure, language, or writing quality)?

The paper is short, but it is to follow.

  • References: Is the list of references complete, and is everything cited appropriately that should be cited (e.g., papers, datasets, software)? Do references in the text use the proper citation syntax?

It is quite extensive.

@phillima

This comment has been minimized.

Copy link

@phillima phillima commented Jan 31, 2020

Hello @danieledipompeo , thank you very much for your comments. I will work on them. I would like to point out some things.

  • Regarding the missing maven dependency (JAXB), can you please confirm that you are using JDK 11 or higher? I checked that after JDK 11, some libraries (such as JAXB) were removed from the JDK. Since I developed the ASniffer on top of JDK 8 it was not necessary to add this dependency. To guarantee compatibility with future JDK versions, I will add this dependency on the pom file.

  • Example Usage: In the README file there is the "How to use" section. I thought that would serve as "Example Usage". Can you confirm that this section should be improved to pass the "Example Usage"?

  • State of the field: The reason we did not present a comparison with similar tools, is because the ASniffer collects Annotation Metrics. These metrics belong to a novel suite that we proposed on the paper A Metrics Suite for Code Annoation Assessment. Hence there were no other tools to compare with.

As soon as I work on the other comments I will generate a new release.

@danieledipompeo

This comment has been minimized.

Copy link

@danieledipompeo danieledipompeo commented Feb 1, 2020

My comments below.

Hello @danieledipompeo , thank you very much for your comments. I will work on them. I would like to point out some points.

  • Regarding the missing maven dependency (JAXB), can you please confirm that you are using JDK 11 or higher? I checked that after JDK 11, some libraries (such as JAXB) were removed from the JDK. Since I developed the ASniffer on top of JDK 8 it was not necessary to add this dependency. To guarantee compatibility with future JDK versions, I will add this dependency on the pom file.

Yes, if you use the JDK 11 you have to add the dependency, while if you use the JDK 8 you don't need because the JDK 8 is "self-contained".

  • Example Usage: In the README file there is the "How to use" section. I thought that would serve as "Example Usage". Can you confirm that this section should be improved to pass the "Example Usage"?

Yes, if you add a running example or a simple one, it will be useful.

  • State of the field: The reason we did not present a comparison with similar tools, is because the ASniffer collects Annotation Metrics. These metrics belong to a novel suite that we proposed on the paper A Metrics Suite for Code Annoation Assessment. Hence there were no other tools to compare with.

Ok, it's fine with me. It was just a suggestion. If you consider that your tool is the first one in this area you cannot find related work.

As soon as I work on the other comments I will generate a new release.

Kind Regards
Daniele

@phillima

This comment has been minimized.

Copy link

@phillima phillima commented Feb 1, 2020

Hi @danieledipompeo, once again, thank you for your comments. I have generated a new version of the ASniffer tool (2.2.0) that aims to address your review. Please, feel free to make new comments and suggestions.

Functionality

  • Installation: Does installation proceed as outlined in the documentation?
    I have installed the code on Ubuntu server 18.04, and a required plugin is missed:
<!-- https://mvnrepository.com/artifact/javax.xml.bind/jaxb-api -->
<dependency>
    <groupId>javax.xml.bind</groupId>
    <artifactId>jaxb-api</artifactId>
    <version>2.4.0-b180830.0359</version>
</dependency>
  • I have added this missing dependency to the pom.xml file, to make the ASniffer compatible with the Java version 11 and higher.
  • Installation instructions: Is there a clearly-stated list of dependencies? Ideally these should be handled with an automated package management solution.

The authors use maven to build the project. A needed dependency is missed. After adding it to the pom.xml, the project has been built.

  • The missing dependency was added!
  • Example usage: Do the authors include examples of how to use the software (ideally to solve real-world analysis problems).

No example is given.

  • In the Readme file I have added a new section "Example Usage". In this section I show how to extract annotation metrics from a Java project using the own ASniffer code as sample. I have also uploaded the generated XML file to the repository to serve as an example.
  • Functionality documentation: Is the core functionality of the software documented to a satisfactory level (e.g., API method documentation)?

I cannot find any code documentation.

  • To address this issue I have added in the Readme file a new section "ASniffer API". I explain and demonstrate how a developer can use the ASniffer as an API in his own project.

Software paper

  • State of the field: Do the authors describe how this software compares to other commonly-used packages?

No information is given about this statement. A more in-depth comparison should be provided.

  • To address this comment I have added in the paper a new section called "Related Work". I explain that the ASniffer collects metrics from a novel suite, so no similar tool was found to compare. However, there are other tools that perform static analysis to collect source code metrics. I make a reference to an open source tool called CK Tool, that also collect source code metrics and uses the JDT as the AST parser.

Kind Regards!
Phyllipe

@danielskatz

This comment has been minimized.

Copy link

@danielskatz danielskatz commented Feb 11, 2020

👋 @gkthiruvathukal - can you let me know where things are on this submission?

@gkthiruvathukal

This comment has been minimized.

Copy link

@gkthiruvathukal gkthiruvathukal commented Feb 11, 2020

@danielskatz I believe the next step is for the reviewers to take another look. @phillima followed up with a new version that addresses previous feedback.

@arcuri82, @danieledipompeo: Can you please take another look and see whether your comments/concerns have been addressed?

@arcuri82

This comment has been minimized.

Copy link

@arcuri82 arcuri82 commented Feb 17, 2020

Hi,
it looks fine to me

@gkthiruvathukal

This comment has been minimized.

Copy link

@gkthiruvathukal gkthiruvathukal commented Feb 17, 2020

Thanks @arcuri82. I'll await word from @danieledipompeo and move to the next steps.

@danieledipompeo

This comment has been minimized.

Copy link

@danieledipompeo danieledipompeo commented Feb 17, 2020

Hi guys, I missed github notification... Which is the new deadline? In this period I'm busy.

@phillima

This comment has been minimized.

Copy link

@phillima phillima commented Feb 17, 2020

Hi @arcuri82. I am glad I have addressed your concerns! Thank you
Hi @danieledipompeo. After your first review I generated a new version of the tool (2.2.0) that hopefully addressed your concerns. Please, feel free to make new comments.

@gkthiruvathukal

This comment has been minimized.

Copy link

@gkthiruvathukal gkthiruvathukal commented Feb 29, 2020

@danieledipompeo We don't have a specific deadline. We're all about ending up with a high-quality submission, and that sometimes takes time. So we'll wait for your additional input, if you have any.

Once you and @arcuri82 signal to me that all of your issues have been addressed by @phillima, I will be happy to proceed with the next steps.

@gkthiruvathukal

This comment has been minimized.

Copy link

@gkthiruvathukal gkthiruvathukal commented Mar 8, 2020

@danieledipompeo Just checking whether your issues have been addressed by @phillima. I think almost all of your and @arcuri82 issues have been addressed. I'd like to move toward acceptance.

@danieledipompeo

This comment has been minimized.

Copy link

@danieledipompeo danieledipompeo commented Mar 9, 2020

Hi guys, I've checked the new release and it seems ready to be accepted. Thanks for all, and sorry for my delay. Cheers Daniele

@gkthiruvathukal

This comment has been minimized.

Copy link

@gkthiruvathukal gkthiruvathukal commented Mar 9, 2020

Ok, I am ready to proceed toward acceptance. @phillima here is a final checklist for you.

Please do the following:

  • Make a tagged release of your software, and list the version tag of the archived version here.
  • Archive the reviewed software in Zenodo
  • Check the Zenodo deposit has the correct metadata, this includes the title (should match the paper title) and author list (make sure the list is correct and people who only made a small fix are not on it); you may also add the authors' ORCID.
  • List the Zenodo DOI of the archived version here.
@phillima

This comment has been minimized.

Copy link

@phillima phillima commented Mar 10, 2020

Hello @gkthiruvathukal. I have performed the steps as requested. Could you please verify that I have done it correctly? Thank you very much!

Ok, I am ready to proceed toward acceptance. @phillima here is a final checklist for you.

Please do the following:

  • [X ] Make a tagged release of your software, and list the version tag of the archived version here.

Version tag: 2.2.1

  • [ X] Archive the reviewed software in Zenodo
  • [ X] Check the Zenodo deposit has the correct metadata, this includes the title (should match the paper title) and author list (make sure the list is correct and people who only made a small fix are not on it); you may also add the authors' ORCID.
  • [ X] List the Zenodo DOI of the archived version here.

Zenodo DOI: 10.5281/zenodo.3701910

@arfon

This comment has been minimized.

Copy link
Member

@arfon arfon commented Mar 14, 2020

Dear authors and reviewers

We wanted to notify you that in light of the current COVID-19 pandemic, JOSS has decided to suspend submission of new manuscripts and to handle existing manuscripts (such as this one) on a "best efforts basis". We understand that you may need to attend to more pressing issues than completing a review or updating a repository in response to a review. If this is the case, a quick note indicating that you need to put a "pause" on your involvement with a review would be appreciated but is not required.

Thanks in advance for your understanding.

Arfon Smith, Editor in Chief, on behalf of the JOSS editorial team.

@phillima

This comment has been minimized.

Copy link

@phillima phillima commented Mar 19, 2020

Hi @gkthiruvathukal! Hopefully everything is under control! Just to let you know that in case you need me to perform any other actions regarding this submission, I am available. Thank you

@arfon

This comment has been minimized.

Copy link
Member

@arfon arfon commented Mar 19, 2020

@phillima - I'm not sure about @gkthiruvathukal's availability so I'll take over from here.

@arfon

This comment has been minimized.

Copy link
Member

@arfon arfon commented Mar 19, 2020

@whedon set 10.5281/zenodo.3701910 as archive

@whedon

This comment has been minimized.

Copy link
Collaborator Author

@whedon whedon commented Mar 19, 2020

OK. 10.5281/zenodo.3701910 is the archive.

@arfon

This comment has been minimized.

Copy link
Member

@arfon arfon commented Mar 19, 2020

@whedon generate pdf

@whedon

This comment has been minimized.

Copy link
Collaborator Author

@whedon whedon commented Mar 19, 2020

@arfon

This comment has been minimized.

Copy link
Member

@arfon arfon commented Mar 19, 2020

@whedon accept

@whedon

This comment has been minimized.

Copy link
Collaborator Author

@whedon whedon commented Mar 19, 2020

Attempting dry run of processing paper acceptance...
@whedon

This comment has been minimized.

Copy link
Collaborator Author

@whedon whedon commented Mar 19, 2020

Reference check summary:

OK DOIs

- 10.1007/3-540-39538-5 is OK
- 10.1145/1943226.1943230 is OK
- 10.1145/1943226.1943230 is OK

MISSING DOIs

- None

INVALID DOIs

- https://doi.org/10.1016/j.jss.2017.11.024 is INVALID because of 'https://doi.org/' prefix
- https://doi.org/10.1016/j.jss.2012.12.024 is INVALID because of 'https://doi.org/' prefix
@whedon

This comment has been minimized.

Copy link
Collaborator Author

@whedon whedon commented Mar 19, 2020

👋 @openjournals/joss-eics, this paper is ready to be accepted and published.

Check final proof 👉 openjournals/joss-papers#1382

If the paper PDF and Crossref deposit XML look good in openjournals/joss-papers#1382, then you can now move forward with accepting the submission by compiling again with the flag deposit=true e.g.

@whedon accept deposit=true
@arfon

This comment has been minimized.

Copy link
Member

@arfon arfon commented Mar 19, 2020

@phillima - could you please merge this PR that fixes your DOIs? phillima/asniffer#1

@phillima

This comment has been minimized.

Copy link

@phillima phillima commented Mar 20, 2020

@phillima - could you please merge this PR that fixes your DOIs? phillima/asniffer#1

@arfon Done!

@arfon

This comment has been minimized.

Copy link
Member

@arfon arfon commented Mar 20, 2020

@whedon check references

@whedon

This comment has been minimized.

Copy link
Collaborator Author

@whedon whedon commented Mar 20, 2020

Reference check summary:

OK DOIs

- 10.1016/j.jss.2017.11.024 is OK
- 10.1007/3-540-39538-5 is OK
- 10.1145/1943226.1943230 is OK
- 10.1016/j.jss.2012.12.024 is OK
- 10.1145/1943226.1943230 is OK

MISSING DOIs

- None

INVALID DOIs

- None
@arfon

This comment has been minimized.

Copy link
Member

@arfon arfon commented Mar 20, 2020

@whedon accept deposit=true

@whedon

This comment has been minimized.

Copy link
Collaborator Author

@whedon whedon commented Mar 20, 2020

Doing it live! Attempting automated processing of paper acceptance...
@whedon

This comment has been minimized.

Copy link
Collaborator Author

@whedon whedon commented Mar 20, 2020

🐦🐦🐦 👉 Tweet for this paper 👈 🐦🐦🐦

@whedon

This comment has been minimized.

Copy link
Collaborator Author

@whedon whedon commented Mar 20, 2020

🚨🚨🚨 THIS IS NOT A DRILL, YOU HAVE JUST ACCEPTED A PAPER INTO JOSS! 🚨🚨🚨

Here's what you must now do:

  1. Check final PDF and Crossref metadata that was deposited 👉 openjournals/joss-papers#1383
  2. Wait a couple of minutes to verify that the paper DOI resolves https://doi.org/10.21105/joss.01960
  3. If everything looks good, then close this review issue.
  4. Party like you just published a paper! 🎉🌈🦄💃👻🤘

Any issues? notify your editorial technical team...

@arfon

This comment has been minimized.

Copy link
Member

@arfon arfon commented Mar 20, 2020

@arcuri82, @danieledipompeo - many thanks for your reviews here and to @gkthiruvathukal for editing this submission

@phillima - your paper is now accepted into JOSS ⚡️🚀💥

@arfon arfon closed this Mar 20, 2020
@whedon

This comment has been minimized.

Copy link
Collaborator Author

@whedon whedon commented Mar 20, 2020

🎉🎉🎉 Congratulations on your paper acceptance! 🎉🎉🎉

If you would like to include a link to your paper from your README use the following code snippets:

Markdown:
[![DOI](https://joss.theoj.org/papers/10.21105/joss.01960/status.svg)](https://doi.org/10.21105/joss.01960)

HTML:
<a style="border-width:0" href="https://doi.org/10.21105/joss.01960">
  <img src="https://joss.theoj.org/papers/10.21105/joss.01960/status.svg" alt="DOI badge" >
</a>

reStructuredText:
.. image:: https://joss.theoj.org/papers/10.21105/joss.01960/status.svg
   :target: https://doi.org/10.21105/joss.01960

This is how it will look in your documentation:

DOI

We need your help!

Journal of Open Source Software is a community-run journal and relies upon volunteer effort. If you'd like to support us please consider doing either one (or both) of the the following:

@phillima

This comment has been minimized.

Copy link

@phillima phillima commented Mar 20, 2020

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
7 participants
You can’t perform that action at this time.