-
Notifications
You must be signed in to change notification settings - Fork 51
Release 1.7.0 - Major changes with quantms-rescoring #625
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
Conversation
Increase dev version
fixing of bug in msstats_tmt.R (Issue: Error in the msstats_tmt.R function parse_contrasts #577)
Pass correct flag to ProteinQuantifier
fixed rescoring range bugs
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: qodo-code-review[bot] <151058649+qodo-code-review[bot]@users.noreply.github.com>
jpfeuffer
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
After my comments, good to go.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 4
🤖 Fix all issues with AI agents
In @modules/local/utils/msrescore_features/main.nf:
- Around line 25-34: The current logic sets ms2_model_dir using ${model_weight}
without checking model_weight; update the branch that handles
params.ms2features_model_dir to first validate that model_weight is defined and
non-empty (not null, empty string, or whitespace) before using it, and if
validation fails fall back to the safe default "--ms2_model_dir ./" (or emit a
clear error/exit if you prefer); specifically modify the condition around
params.ms2features_model_dir and the assignment to ms2_model_dir so it uses the
validated model_weight only when present, otherwise uses the default.
- Around line 40-61: The tolerance assignment logic for ms2 features
(ms2_tolerance, ms2_tolerance_unit) is confusing due to multiple overwrites;
simplify by: set defaults from meta['fragmentmasstolerance'] and
meta['fragmentmasstoleranceunit'] first, then if using_ms2pip is true override
only when necessary—compute fragment_unit_lower =
meta['fragmentmasstoleranceunit'].toLowerCase() and if it endsWith('da') keep
meta tolerance (and set ms2_tolerance_unit='Da'), else set ms2_tolerance =
params.ms2features_tolerance and ms2_tolerance_unit =
params.ms2features_tolerance_unit (and emit the existing log.warn when unit
unsupported/ppm); remove the unconditional assignment ms2_tolerance =
params.ms2features_tolerance inside the using_ms2pip block so values are
assigned exactly once according to the clarified branches.
- Around line 36-38: params.ms2features_generators may be null or ambiguous; add
a null/empty guard, normalize its value once (e.g., toLowerCase()), then compute
using_ms2pip and using_alphapeptdeep from that normalized string; explicitly
handle the three cases—only ms2pip, only alphapeptdeep, and both present (either
throw a clear validation error or enforce a documented priority), and handle
neither present by setting a safe default or failing fast with a validation
error; ensure any downstream logic that mutates ms2_tolerance_unit only runs in
the branch where a generator was unambiguously selected.
- Around line 94-107: The code calls
meta['fragmentmasstoleranceunit'].toLowerCase() (used to set ms2_tolerance_unit)
without ensuring meta['fragmentmasstoleranceunit'] is defined when reading from
SDRF (row.FragmentMassToleranceUnit); add a null/undefined check right after
assigning from row.FragmentMassToleranceUnit and either set a safe default
('Da') or throw a validation error indicating the SDRF is missing
fragmentmasstoleranceunit, then use the validated variable for the
.toLowerCase() call so .toLowerCase() never runs on null/undefined.
🧹 Nitpick comments (1)
CHANGELOG.md (1)
15-20: Minor wording improvement in the Changed section.Line 17 could be slightly clarified for consistency: "Update quantms-utils 0.0.24 and pmultiqc 0.0.39" reads more naturally as "Update quantms-utils to 0.0.24 and pmultiqc to 0.0.39". Similarly, line 18 is wordy; consider: "Changed enable_diann_mztab default from true to false; mzTab for DIA pipelines now requires explicit --enable_diann_mztab true parameter."
📜 Review details
Configuration used: defaults
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (2)
CHANGELOG.mdmodules/local/utils/msrescore_features/main.nf
🔇 Additional comments (4)
CHANGELOG.md (1)
6-36: Well-structured release notes for 1.7.0.The changelog entry is well-organized with clear sections for Added, Changed, Fixed, Dependencies, and Deprecations. Cross-references between PR numbers and versions are consistent. The deprecation section (lines 33-36) provides helpful context for the migration from luciphor to onsite parameters, making the breaking change explicit.
modules/local/utils/msrescore_features/main.nf (3)
69-91: LGTM! Parameter renaming and debug flag addition look good.The parameter naming has been consistently updated to the
ms2features_*namespace, and the new debug flag provides useful logging control. The conditional logic is clear and straightforward.
5-7: Address inconsistent container versions and missing documentation.Version 0.0.14 is not documented in the CHANGELOG and is used inconsistently across related processes. The
msrescore_featuresandmsrescore_fine_tuningprocesses use 0.0.14, whilepsm_cleanandspectrum_featuresstill use 0.0.13. Either complete the version upgrade across all four processes or document why they use different versions. Additionally, ensure the CHANGELOG is updated to reflect the 0.0.14 release.
10-10: All invocations ofMSRESCORE_FEATUREShave been properly updated to pass the new expanded input tuple. Both code paths (with and without fine-tuning) correctly construct the 5-element tuple withmeta,idxml,mzml,model_weight, andsearch_enginein the correct order.
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as outdated.
This comment was marked as outdated.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 2
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
nextflow_schema.json (1)
569-696: Critical: Extensive MS2 rescoring parameter renaming lacks CHANGELOG and migration documentation.The schema shows a major breaking refactoring of rescoring parameters with complete namespace migration:
ms2rescore→ms2features_enablefeature_generators→ms2features_generatorscalibration_set_size→ms2features_calibrationms2_model→ms2features_modeland related model parametersOld parameter names are completely removed from the schema (not present alongside new ones), confirming this is a full breaking change rather than additive.
Critical gap: The CHANGELOG (version 1.7.0) documents the quantms-rescoring update to v0.0.13 supporting transfer learning but contains zero documentation of these parameter renames. No migration guide exists in the documentation.
This requires:
- CHANGELOG entry documenting all parameter name changes and mappings
- Migration guide for users upgrading from previous versions
- Updated documentation in docs/usage.md
🤖 Fix all issues with AI agents
In @nextflow_schema.json:
- Around line 440-532: The changelog mentions renaming luciphor_* parameters to
onsite_* but the mapping is incomplete and there is no migration documentation;
add a migration guide and update docs to enumerate all parameter mappings (e.g.,
luciphor_algorithm → onsite_algorithm, luciphor_fragment_method →
onsite_fragment_method, luciphor_fragment_tolerance → onsite_fragment_tolerance,
luciphor_fragment_error_units → onsite_fragment_error_units, luciphor_add_decoys
→ onsite_add_decoys, luciphor_neutral_losses → onsite_neutral_losses,
luciphor_decoy_mass → onsite_decoy_mass, luciphor_decoy_neutral_losses →
onsite_decoy_neutral_losses, luciphor_threads → onsite_threads,
luciphor_min_psms → onsite_min_psms, luciphor_disable_split_by_charge →
onsite_disable_split_by_charge, luciphor_compute_all_scores →
onsite_compute_all_scores, luciphor_debug → onsite_debug), add a migration
document (e.g., migration.md) and a parameter mapping table in the main usage
docs showing old → new names and defaults, and update CHANGELOG.md to reference
that migration guide; also add a note in the schema or UI help_text for each
onsite_* field pointing to the migration guide so users of the old luciphor
module can find the mapping.
- Around line 1383-1399: The description for the enable_pmultiqc property is
inconsistent with its actual default; update the "description" string for
enable_pmultiqc to indicate the true default (enabled/true) instead of
"'false'". Locate the enable_pmultiqc JSON object and modify its description to
reflect that pmultiqc report generation is enabled by default (e.g., change
"default: 'false'" to "default: true" or similar wording) while leaving the
"default": true field unchanged.
📜 Review details
Configuration used: defaults
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
nextflow_schema.json
🔇 Additional comments (8)
nextflow_schema.json (8)
389-412: LGTM: Sensible defaults for mass range filters.The explicit default values for precursor and fragment m/z ranges (400-2400 and 100-1800 respectively) are appropriate for typical proteomics experiments and improve the schema's usability.
835-841: LGTM: Sensible default for quantification activation method.Adding
"default": "HCD"with explicit enum values is appropriate, as HCD (Higher-energy Collisional Dissociation) is the most common fragmentation method in modern quantitative proteomics workflows.
1282-1287: LGTM: Explicit default for contrasts parameter.Adding
"default": "pairwise"makes the default behavior explicit and improves schema documentation. This likely matches the previous implicit behavior.
1115-1121: No behavior change—this makes the implicit default explicit.The
lfq_intensity_thresholddefault of1000.0matches the existing default already defined innextflow.config(line 199:lfq_intensity_threshold = 1000). The schema is simply making this implicit default explicit and was already documented in the CHANGELOG. The parameter is passed to OpenMS as${params.lfq_intensity_threshold}in the workflow.
1257-1262: This is an intentional breaking change from PR #614. Theenable_diann_mztabdefault was changed fromtruetofalse. Users previously relying on automatic mzTab generation for DIA-NN results must now explicitly pass--enable_diann_mztab true. This change and its impact are documented in the CHANGELOG.
1551-1562: No action needed. Thehelpparameter correctly uses type["boolean", "string"]to support topic-specific help. The codebase explicitly handles string values viainstanceof Stringcheck insubworkflows/nf-core/utils_nfschema_plugin/main.nf, passing them to theparamsHelp()function. This design allows users to run--help topic_namefor targeted help output.Likely an incorrect or invalid review comment.
84-116: Document these parameter defaults in CHANGELOG.md.The parameters
validate_ontologies,skip_factor_validation, anduse_ols_cache_onlyall have"default": trueset in nextflow_schema.json (lines 88, 101, 114), but this is not documented in CHANGELOG.md. These defaults should be explicitly documented in release notes, particularly if they represent changed behavior from previous versions.
69-75: The"default": trueaddition toexport_decoy_psmformalizes existing behavior already set innextflow.config(line 137:export_decoy_psm = true), so this is not a breaking change. The implementation inmodules/local/utils/psm_conversion/main.nfcorrectly handles bothtrueandfalsevalues, constructing the command appropriately in each case.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 2
🤖 Fix all issues with AI agents
In @nextflow_schema.json:
- Around line 88-89: The schema currently sets skip_factor_validation default
true while validate_ontologies default true, creating inconsistent validation
behavior; either align the defaults (set both to true for permissive/offline
mode or both to false for strict validation) or update the help_text for
skip_factor_validation and validate_ontologies to explicitly state the intended
interaction and rationale. Locate the JSON entries for "skip_factor_validation"
and "validate_ontologies" (and the other occurrences with the same keys) and
either change the "default" booleans to match or expand their "help_text"
strings to clarify that ontology validation may still run when factor validation
is skipped (or vice versa), ensuring all occurrences are updated consistently.
📜 Review details
Configuration used: defaults
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
nextflow_schema.json
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (14)
- GitHub Check: Docker Tests (latest-everything, test_tmt)
- GitHub Check: Docker Tests (latest-everything, test_dda_id_fine_tuning)
- GitHub Check: Docker Tests (latest-everything, test_tmt)
- GitHub Check: Docker Tests (25.04.0, test_localize)
- GitHub Check: Run pipeline with test data (25.04.0, test_localize, docker)
- GitHub Check: Run pipeline with test data (25.04.0, test_dda_id_ms2pip, docker)
- GitHub Check: Run pipeline with test data (25.04.0, test_dia, docker)
- GitHub Check: Run pipeline with test data (25.04.0, test_dda_id_fine_tuning, docker)
- GitHub Check: Run pipeline with test data (25.04.0, test_dia, docker)
- GitHub Check: Run pipeline with test data (25.04.0, test_lfq, docker)
- GitHub Check: Run pipeline with test data (25.04.0, test_tmt, docker)
- GitHub Check: Run pipeline with test data (25.04.0, test_localize, docker)
- GitHub Check: Run pipeline with test data (25.04.0, test_dda_id_alphapeptdeep, docker)
- GitHub Check: Run pipeline with test data (25.04.0, test_dda_id_ms2pip, docker)
🔇 Additional comments (10)
nextflow_schema.json (10)
29-30: LGTM!Adding the
"format": "directory-path"validation to the output directory parameter is a good improvement for input validation.
73-74: LGTM! Behavior change to note.Setting
export_decoy_psmdefault totruechanges the default behavior—decoy PSMs will now be exported by default. This is reasonable for analysis purposes, but ensure this is documented in release notes.
392-411: LGTM!The default m/z ranges are reasonable for typical mass spectrometry experiments:
- Precursor: 400-2400 Da covers most peptides
- Fragment: 100-1800 Da is appropriate for MS/MS
839-840: LGTM!Setting
quant_activation_methoddefault to "HCD" is appropriate, as it's the most common fragmentation method for modern mass spectrometers.
1118-1122: LGTM!Setting
lfq_intensity_thresholddefault to 1000.0 is appropriate for filtering out low-quality features in label-free quantification.
1261-1261: Note the behavior change.Setting
enable_diann_mztabdefault tofalsemeans DIA-NN results won't be exported to mzTab format by default. This reduces output size but requires users to explicitly enable mzTab export if needed. Ensure this is documented in release notes.
1286-1287: LGTM!Setting
contrastsdefault to "pairwise" is appropriate for typical differential expression analysis scenarios.
1387-1400: LGTM!The quality control defaults are well-chosen:
enable_pmultiqc: trueenables comprehensive QC reportingpmultiqc_idxml_skip: truereduces processing overheadcontaminant_string: "CONT"is a standard convention
1552-1554: Thehelpparameter type definition is correct and intentional.The
"type": ["boolean", "string"]definition supports two distinct usage patterns:--helpas a boolean flag displays the general help message, while--help <topic>with a string argument displays topic-specific help. This dual-type design is validated and handled directly in the code (seesubworkflows/nf-core/utils_nfschema_plugin/main.nfline 41, which checksparams.help instanceof String), so no changes are needed.Likely an incorrect or invalid review comment.
569-696: Parameter migration toms2features_*namespace is complete and correctly implemented.The extensive addition of
ms2features_*parameters and the rename fromms2rescoretoms2features_enablehas been properly completed across the codebase:
subworkflows/local/dda_id/main.nfcorrectly usesparams.ms2features_range(line 46)msrescore_fine_tuningmodule correctly uses new parameters:force_transfer_learning,epoch_to_train_ms2,transfer_learning_test_ratiosubworkflows/local/peptide_database_search/main.nfcorrectly uses all new parameters:ms2features_enable,ms2features_model_dir,ms2features_fine_tuning,ms2features_generators,ms2features_snr,ms2features_range- No old
ms2rescoreorrescore_rangeparameter references remainThe defaults in
nextflow_schema.jsonare well-chosen and align with recommended practices (calibration: 0.15, generators: "deeplc,alphapeptdeep", auto-select enabled by default).
minor changes for release
Minor changes
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
🤖 Fix all issues with AI agents
In @CHANGELOG.md:
- Line 18: Reword the CHANGELOG entry to clarify the default change for
enable_diann_mztab; replace the awkward phrase "enable_diann_mztab from true to
false as default" with a clear sentence such as "Changed enable_diann_mztab
default from true to false" or "enable_diann_mztab now defaults to false instead
of true" and keep the note about DIA pipelines and the CLI parameter
--enable_diann_mztab true.
🧹 Nitpick comments (1)
CHANGELOG.md (1)
6-6: Clarify the release date format for international audiences.The date format
[08/01/2026]is potentially ambiguous (could be interpreted as January 8th or August 1st depending on locale). For clarity across regions, consider using ISO 8601 format ([2026-01-08]) or spelling out the month name (e.g.,[January 8, 2026]), especially since other entries follow DD/MM/YYYY convention (e.g., line 37 shows[13/08/2025]).
📜 Review details
Configuration used: defaults
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
CHANGELOG.md
🔇 Additional comments (1)
CHANGELOG.md (1)
11-11: Verify ms2features module and migration guide references.The AI summary mentions "adds ms2features" as a major feature, but the changelog entry (line 11) refers to this as "transfer learning module for MS2 intensity prediction" (PR 629). Additionally, line 35 references a migration guide at
docs/usage.md#migrating-from-luciphor_-to-onsite_-parameters-version-170. Verify that:
- ms2features is the same as or correctly named within PR 629, or if it's a separate module that should be listed in the Added section.
- The migration guide section exists and uses the exact anchor/path specified.
Also applies to: 35-35
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
🤖 Fix all issues with AI agents
In @CHANGELOG.md:
- Around line 33-36: Update the broken migration guide anchor in CHANGELOG.md by
replacing the incorrect link fragment
`#migrating-from-luciphor_-to-onsite_-parameters-version-170` with the correct
GitHub anchor `#migrating-from-luciphor-to-onsite-parameters-version-1.7.0` in
the line referencing the Migration Guide so the link points to the `Migrating
from luciphor to onsite parameters (Version 1.7.0)` heading in docs/usage.md.
📜 Review details
Configuration used: defaults
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
CHANGELOG.md
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (20)
- GitHub Check: Docker Tests (25.04.0, test_lfq)
- GitHub Check: Docker Tests (25.04.0, test_dda_id_alphapeptdeep)
- GitHub Check: Docker Tests (latest-everything, test_dda_id_alphapeptdeep)
- GitHub Check: Docker Tests (latest-everything, test_dda_id_fine_tuning)
- GitHub Check: Docker Tests (latest-everything, test_lfq)
- GitHub Check: Docker Tests (latest-everything, test_dda_id_ms2pip)
- GitHub Check: Docker Tests (25.04.0, test_tmt_corr)
- GitHub Check: Docker Tests (25.04.0, test_tmt)
- GitHub Check: Docker Tests (latest-everything, test_localize)
- GitHub Check: Docker Tests (25.04.0, test_dda_id_ms2pip)
- GitHub Check: Docker Tests (latest-everything, test_tmt)
- GitHub Check: Docker Tests (latest-everything, test_tmt_corr)
- GitHub Check: Docker Tests (25.04.0, test_localize)
- GitHub Check: Docker Tests (latest-everything, test_dia)
- GitHub Check: Docker Tests (25.04.0, test_dia)
- GitHub Check: Docker Tests (latest-everything, test_lfq)
- GitHub Check: Docker Tests (25.04.0, test_tmt_corr)
- GitHub Check: Docker Tests (latest-everything, test_tmt)
- GitHub Check: Docker Tests (25.04.0, test_dda_id_fine_tuning)
- GitHub Check: Docker Tests (25.04.0, test_localize)
🔇 Additional comments (1)
CHANGELOG.md (1)
6-36: Changelog entry structure is clear and well-organized.The 1.7.0 entry follows the established format with clear sections for Added, Changed, Fixed, Dependencies, and Deprecations. PR references are properly linked. The deprecation note provides helpful context about the luciphor-to-onsite migration with guidance on where to find additional details.
One observation: PR references include 626, 627, 629, 614, 615, 619, and 635—some are higher-numbered than the current PR (625). If these represent planned/concurrent contributions for the 1.7.0 release, this is reasonable for a coordinated release. Otherwise, verify the PR numbering is accurate.
| ### `Deprecations` | ||
|
|
||
| - [626](https://github.com/bigbio/quantms/pull/626) Removed luciphor-specific parameters: `luciphor_neutral_losses`, `luciphor_decoy_mass`, `luciphor_decoy_neutral_losses`. These have been replaced with onsite parameters: `onsite_neutral_losses`, `onsite_decoy_mass`, `onsite_decoy_neutral_losses`. The new onsite module provides support for multiple PTM localization algorithms (AScore, PhosphoRS, and LucXor) with unified parameter naming. See the [Migration Guide](docs/usage.md#migrating-from-luciphor_-to-onsite_-parameters-version-170) in the documentation for a complete parameter mapping table and migration instructions. | ||
|
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
# Check if docs/usage.md exists and search for migration guide sections
if [ -f "docs/usage.md" ]; then
echo "=== File found: docs/usage.md ==="
# Search for headings related to migration/luciphor/onsite
echo "=== Searching for migration guide headings ==="
grep -E "^#+.*[Mm]igrat|^#+.*[Ll]uciphor|^#+.*[Oo]nsite" docs/usage.md | head -20
# Extract all markdown headings to inspect format
echo ""
echo "=== All headings in docs/usage.md (for context) ==="
grep -E "^#+\s" docs/usage.md | head -30
else
echo "docs/usage.md not found"
# Check if docs directory exists at all
if [ -d "docs" ]; then
echo "docs/ directory exists. Files:"
ls -la docs/
else
echo "docs/ directory does not exist"
fi
fiRepository: bigbio/quantms
Length of output: 1078
🏁 Script executed:
#!/bin/bash
# Get the exact heading from the file without grep escaping
echo "=== Raw heading from docs/usage.md ==="
sed -n '/### Migrating from luciphor/p' docs/usage.md
# Show what GitHub would generate as an anchor
echo ""
echo "=== Expected GitHub anchor (lowercase, spaces→hyphens, special chars removed) ==="
# Extract the heading text and convert to GitHub anchor format
HEADING=$(sed -n '/### Migrating from luciphor/p' docs/usage.md | sed 's/^### //' | tr '[:upper:]' '[:lower:]' | sed 's/[*]//g' | sed 's/ /-/g' | sed 's/[()]//g')
echo "migrating-from-${HEADING}"
# Show the anchor in CHANGELOG.md
echo ""
echo "=== Anchor used in CHANGELOG.md ==="
grep "#migrating-from-luciphor" CHANGELOG.mdRepository: bigbio/quantms
Length of output: 993
🏁 Script executed:
#!/bin/bash
# Let me compute the correct GitHub anchor format more carefully
echo "=== Analyzing anchor format ==="
HEADING_TEXT="Migrating from luciphor** to onsite** parameters (Version 1.7.0)"
echo "Original heading: $HEADING_TEXT"
echo ""
# GitHub anchor generation: lowercase, remove special chars except hyphens, replace spaces with hyphens
CORRECT_ANCHOR=$(echo "$HEADING_TEXT" | \
tr '[:upper:]' '[:lower:]' | \
sed 's/\*\*//g' | \
sed 's/[()]//g' | \
sed 's/ /-/g' | \
sed 's/--/-/g')
echo "Correct anchor should be: #$CORRECT_ANCHOR"
echo ""
echo "Anchor in CHANGELOG.md: #migrating-from-luciphor_-to-onsite_-parameters-version-170"
echo ""
echo "Match? $([ "#$CORRECT_ANCHOR" = "#migrating-from-luciphor_-to-onsite_-parameters-version-170" ] && echo 'YES' || echo 'NO - LINK IS BROKEN')"Repository: bigbio/quantms
Length of output: 372
Fix the broken migration guide link anchor.
Line 35 references the migration guide with an incorrect anchor. The heading in docs/usage.md is ### Migrating from luciphor** to onsite** parameters (Version 1.7.0), which generates the GitHub anchor #migrating-from-luciphor-to-onsite-parameters-version-1.7.0. Update the CHANGELOG link from #migrating-from-luciphor_-to-onsite_-parameters-version-170 to #migrating-from-luciphor-to-onsite-parameters-version-1.7.0.
🤖 Prompt for AI Agents
In @CHANGELOG.md around lines 33 - 36, Update the broken migration guide anchor
in CHANGELOG.md by replacing the incorrect link fragment
`#migrating-from-luciphor_-to-onsite_-parameters-version-170` with the correct
GitHub anchor `#migrating-from-luciphor-to-onsite-parameters-version-1.7.0` in
the line referencing the Migration Guide so the link points to the `Migrating
from luciphor to onsite parameters (Version 1.7.0)` heading in docs/usage.md.
PR checklist
nf-core pipelines lint).nextflow run . -profile test,docker --outdir <OUTDIR>).nextflow run . -profile debug,test,docker --outdir <OUTDIR>).docs/usage.mdis updated.docs/output.mdis updated.CHANGELOG.mdis updated.README.mdis updated (including new tool citations and authors/contributors).Summary by CodeRabbit
New Features
Bug Fixes
Chores
Documentation
✏️ Tip: You can customize this high-level summary in your review settings.