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

Dynamic listing of citations/references of used tools in MultiQC methods section #308

Merged
merged 26 commits into from
Jul 17, 2023

Conversation

jfy133
Copy link
Member

@jfy133 jfy133 commented Jun 17, 2023

Status

  • try to replace with stringEngine

Finally had time to do something I've wanted to do for a looong while, and this is a PoC before I propose it to add to the tools template!

An important thing with pipelines is to give credit where credit is due, as in ensure that users of the pipelines cite all the relevent literature of the tools used in the pipeline, rather than just the pipline itself.

I've now extended the custom nf-core groovy lib functions used to generate the MultiQC methods text to now dynamically insert the citation/bibliography of all the tools, whereby only tools used in the specific pipeline run are included.

Full MQC reports are below but here is an example of a small run:

image

and a big run:

image

dynamic_mqc_methods.zip

There is some minor formatting fixes that need to be done to the sentence but I can't work out why the .replaceAll() isn't working properly on those.

@jfy133 jfy133 requested a review from a team June 17, 2023 14:51
@github-actions
Copy link

This PR is against the master branch ❌

  • Do not close this PR
  • Click Edit and change the base to dev
  • This CI test will remain failed until you push a new commit

Hi @jfy133,

It looks like this pull-request is has been made against the nf-core/taxprofiler master branch.
The master branch on nf-core repositories should always contain code from the latest release.
Because of this, PRs to master are only allowed if they come from the nf-core/taxprofiler dev branch.

You do not need to close this PR, you can change the target branch to dev by clicking the "Edit" button at the top of this page.
Note that even after this, the test will continue to show as failing until you push a new commit.

Thanks again for your contribution!

@jfy133 jfy133 changed the base branch from master to dev June 17, 2023 14:53
@github-actions
Copy link

github-actions bot commented Jun 17, 2023

nf-core lint overall result: Passed ✅ ⚠️

Posted for pipeline commit a19951d

+| ✅ 157 tests passed       |+
!| ❗   1 tests had warnings |!

❗ Test warnings:

  • pipeline_todos - TODO string in methods_description_template.yml: #Update the HTML below to your preferred methods description, e.g. add publication citation for this pipeline

✅ Tests passed:

Run details

  • nf-core/tools version 2.9
  • Run at 2023-07-17 07:24:53

Copy link

@sateeshperi sateeshperi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

awesome! 🥇

lib/WorkflowTaxprofiler.groovy Outdated Show resolved Hide resolved
lib/WorkflowTaxprofiler.groovy Outdated Show resolved Hide resolved
Copy link
Member

@JoseEspinosa JoseEspinosa left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Beautiful! 😍
Just add a small question, also, from the snapshot in the paragram corresponding to <p>${tool_citations}</p> sometimes there is a comma followed by a point but this might be one of the format issues you already are fixing.

assets/methods_description_template.yml Outdated Show resolved Hide resolved
@jfy133
Copy link
Member Author

jfy133 commented Jun 19, 2023

Beautiful! heart_eyes Just add a small question, also, from the snapshot in the paragram corresponding to <p>${tool_citations}</p> sometimes there is a comma followed by a point but this might be one of the format issues you already are fixing.

If you have any suggestions please tell me how to fix it?! I get different behavour between the REPL console and the pipeline!!! I guess you can see I've already got lots of 'replaceAlls' but they seem to only work on some of the instances...

@jfy133 jfy133 marked this pull request as draft June 29, 2023 13:38
@jfy133
Copy link
Member Author

jfy133 commented Jul 12, 2023

I can't get the text engine to work... but I can fix the comma dot problemn as in funcscan, using sublists for each sentence

@jfy133 jfy133 marked this pull request as ready for review July 13, 2023 13:44
@jfy133
Copy link
Member Author

jfy133 commented Jul 13, 2023

Ready for review, now without stupid ugly punctioation errors!
multiqc.zip

@jfy133 jfy133 merged commit f996aea into dev Jul 17, 2023
@jfy133 jfy133 deleted the print-tool-citations branch July 17, 2023 12:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Update HTML to preferred methods description
5 participants