Skip to content

Release 3.2.0 prep: PR #447 review fixes + textexporter migration#449

Open
jonasscheid wants to merge 11 commits intonf-core:devfrom
jonasscheid:prepare-release-320
Open

Release 3.2.0 prep: PR #447 review fixes + textexporter migration#449
jonasscheid wants to merge 11 commits intonf-core:devfrom
jonasscheid:prepare-release-320

Conversation

@jonasscheid
Copy link
Copy Markdown
Collaborator

Description

Release 3.2.0 preparation. Implements review feedback from PR #447 and migrates the local openms/textexporter module to its nf-core/modules equivalent.

Fixed (from PR #447 review)

  • HIGH: OPENMS_FILECONVERTER version extraction emitted a SOH byte because the sed backref used \1 (single backslash) in Groovy — switched to \\1, matching every other OpenMS module.
  • HIGH: OPENMS_IDMASSACCURACY meta.yml was a copy-paste of openms_idfilter — rewritten to reflect the actual (meta, mzmls, idxmls) → frag_err + optional prec_err signature.
  • MED: OPENMS_IDMASSACCURACY config read params.precursor_error_units — changed to meta.precursor_error_units so per-sample preset overrides apply.
  • LOW: Tab indent in modules/local/openms/idmassaccuracy/main.nf normalized to spaces.

Changed

  • Bumped openms/fileconverter, openms/featurefinderidentification, openms/idconflictresolver local modules from OpenMS 3.4.1 → 3.5.0 (container openms:3.5.0--h78fb946_0). idmassaccuracy stays on 3.4.1 — IDMassAccuracy.cpp was removed in OpenMS 3.5.0.
  • Migrated openms/textexporter from local → nf-core/modules. The nf-core module drops the _exported suffix from the output filename, which collided with the SUMMARIZE_RESULTS input. Injected ext.prefix = { \"\${meta.id}_exported\" } in conf/modules.config to preserve the distinct-filename invariant.
  • Tightened preset normalization at utils_nfcore_mhcquant_pipeline/main.nf:135. nf-schema parses empty TSV cells as ArrayList [] (not null), so ?.trim() threw Unknown method invocation 'trim' on ArrayList type. Replaced with a type-safe check. Also emptied literal single-space FixedMods cells in assets/search_presets.tsv.
  • The reviewer-suggested "mirror -fixed_modifications after -variable_modifications" change was flagged as cosmetic but actually changes the CometAdapter CLI: passing -fixed_modifications \ (empty value) vs omitting the flag produces different Comet search results (confirmed via search_presets.nf.test — peptidoforms shifted). Reverted, keeping the pre-release CLI behavior.
  • tests/sdrf.nf.test → added tag \"test_sdrf\" for shard targeting.
  • tests/test_single_quant.nf.test → renamed tag single_replicatetest_single_quant to match profile-name convention.
  • conf/test_single_quant.config → migrated deprecated max_cpus/max_memory/max_time to process.resourceLimits.
  • Removed unused validateInputSamplesheet function from utils_nfcore_mhcquant_pipeline/main.nf (confirmed no callers).
  • Version bumped 3.2.0dev3.2.0 (via nf-core pipelines bump-version). Snapshot v3.2.0dev strings updated across all 7 tests/*.nf.test.snap files.

Dependencies

Dependency Old New
openms (three local modules) 3.4.1 3.5.0

PR checklist

  • This comment contains a description of changes (with reason).
  • Make sure your code lints (nf-core pipelines lint). — 480 passed / 64 warnings (pre-existing subworkflow meta.yml missing) / 0 failures.
  • Ensure the test suite passes. All 7 nf-tests ran green pre-textexporter-migration (default, mokapot, ionannotator, speclib, test_single_quant, sdrf, search_presets). default.nf.test re-run post-migration also passed (351s). Remaining tests skipped per user request.
  • CHANGELOG.md is updated.
  • Usage Documentation in docs/usage.md is updated. — No user-facing changes.
  • Output Documentation in docs/output.md is updated. — No user-facing changes.
  • README.md is updated. — No new tools/authors.

Follow-up notes

  • Release name placeholder [release name] still in CHANGELOG.md:6 — needs filling before tag.
  • openms/psmfeatureextractor can't be migrated to nf-core/modules without pipeline rework (local takes a second feature_file input and awks out an -extra flag; upstream takes idxml only).
  • openms/idmassaccuracy has no viable upstream migration (deprecated in OpenMS 3.5.0+).

@nf-core-bot
Copy link
Copy Markdown
Member

Warning

Newer version of the nf-core template is available.

Your pipeline is using an old version of the nf-core template: 3.5.1.
Please update your pipeline to the latest version.

For more documentation on how to update your pipeline, please see the nf-core documentation and Synchronisation documentation.

@jonasscheid
Copy link
Copy Markdown
Collaborator Author

@pinin4fjords Ok for you if we proceed with 3.2.0 release and the 3.3.0 release includes the remaining openms tools ported to nf-core? I see even more value in porting the easypqp tools then

@pinin4fjords
Copy link
Copy Markdown
Member

I really don't think you should be actively adding to local modules except for highly pipeline-specific stuff. As I mentioned on the release review I wasn't going to push you to migrate existing locals right now, but the four new ones from #447 are different:

  • openms/fileconverter - the upstream slot exists right next to the other openms wrappers
  • pridepy/download_file
  • pridepy/fetch_sdrf
  • sdrf_pipelines/parse_sdrf

What's the major blocker for those going in nf-core/modules first?

I do also worry that you've left the CLI override handling in resolveSearchParams untouched, I don't think it'll work well for the reasons in the differentialabundance PR I linked, and I don't want us setting precedent with things that people more knowledgable than myself have said are a really bad plan!

@jonasscheid
Copy link
Copy Markdown
Collaborator Author

I do also worry that you've left the CLI override handling in resolveSearchParams untouched, I don't think it'll work well for the reasons in the differentialabundance PR I linked, and I don't want us setting precedent with things that people more knowledgable than myself have said are a really bad plan!

I forgot to address this one, sorry about that

What's the major blocker for those going in nf-core/modules first?

The openms fileconverter is a simple addition that I can do. I did not add the pridepy and sdrf_pipelines tool yet to nf-core, since they are in an earlier development phase and subject to more fundamental changes. Pridepy did change the command namings and depricated some quite fast (https://github.com/PRIDE-Archive/pridepy#cli-command-overview) and therefore I thought that we will first test it for some time locally and see if the packages mature well, before we create more overhead with updating and depricating nf-core modules

…veSearchParams (renamed resolvePresetParams), add regression test, document precedence.
…s were deleted; NF 25.04 errors on missing include sources).
…k_max args (NF 25.04 rejects unquoted multi-colon selectors).
…nsensusxml output to .converted in PROCESS_FEATURE.
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.

3 participants