elsasserlab/minute

Generated scaling stats missing from the MultiQC report

cnluzon opened this issue · 3 comments

I think I unadvertedly removed the stats_summary.txt, scalinginfo.txt and the generated barplot from scaling from the final MultiQC report on #144 , but it is a bit odd because I do not remember it not showing up when I tested this.

Somehow in the recent minute runs I have done it is missing. At first I thought it was only missing from the quick run only but it is missing from both, so it most likely is the multiqc_config.yaml.

I have been looking at this and it seems that something could have changed in MultiQC parsing of custom content recently, since I have seen previous tests I did had MultiQC v1.11 and now I have MultiQC v1.12.

Documentation is very unclear in this topic, supposedly these _mqc.* extensions are only required for MultiQC to make an educated guess on what to take in the report, but this should not be an issue, since all the relevant files are listed as explicit input of the multiqc rule.

However when I was adding the bar plots to the reports I had some issues trying to make it work without having _mqc.* extension. This seems again to be an issue here. One work around is renaming the reports to have such extension, i.e. scalinginfo.txt -> scalinginfo_mqc.txt. If I do this it appears in the report. The file is found either way, as it appears in the log file as a search path, but it is just not included if it does not have this extension.

Maybe there is some more configuration required now in the custom_data items.

Older versions of MultiQC definitely don't show this behavior, I tried with v1.9 and it shows the missing custom reports. However, I am not sure whether this is a bug that I should report there or a misconfiguration on my side that was overlooked in older versions.

I have left an issue in MultiQC repo, as I think some of this behavior is unexpected: MultiQC/MultiQC#1645

The workaround I mentioned in this issue is the only one that works for me so far. Somehow making a dummy file_mqc.txt that is among the targets in the multiqc rule, makes the paths work correctly. I Think this is some buggy behavior rather than a misconfiguration - it should not be so difficult to make it work.

If I go the other way and try to rename all the relevant files _mqc the files are parsed, but then they are assigned default IDs that don't match what's in the config and it's difficult to make them appear in the order we want to. I will post a PR with the current solution, even though it's not a very pretty one, but it makes the config work at the moment.