Skip to content

feat: lifebit related changes for 22.10 version#29

Merged
mageshwaran-lifebit merged 7 commits into22.10.8from
22-10-8-lifebit-change
Jan 23, 2026
Merged

feat: lifebit related changes for 22.10 version#29
mageshwaran-lifebit merged 7 commits into22.10.8from
22-10-8-lifebit-change

Conversation

@mageshwaran-lifebit
Copy link

@mageshwaran-lifebit mageshwaran-lifebit commented Aug 21, 2025

This pull request introduces a mechanism to preload Lifebit plugins before running a Nextflow pipeline and makes a minor change to the version checking logic to prevent pipeline failures due to lower version constraints.

Plugin Preloading Enhancements:

  • Added a new method preloadLifebitPlugins to the CmdRun class in CmdRun.groovy, which checks the NXF_LIFEBIT_PRELOAD_PLUGINS environment variable and preloads the specified plugins if present.
  • Ensured that Lifebit plugins are preloaded at the start of the CmdRun execution by invoking this.preloadLifebitPlugins() before script file resolution.

Version Checking Adjustment:

  • Commented out the assignment to the important flag in the version checking logic in Session.groovy to avoid pipeline failures when a lower version is detected, referencing a specific issue in the nf-core/raredisease repository.

Copy link
Collaborator

@tiagofilipe12 tiagofilipe12 left a comment

Choose a reason for hiding this comment

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

Looks good as well, but add branch protection rules.

@mageshwaran-lifebit mageshwaran-lifebit changed the title feat: lifebit changes feat: lifebit related changes for 22.10 version Jan 23, 2026
boolean important = false
if( version.startsWith('!') ) {
important = true
// important = true // commenting to avoid pipeline failure due to lower version. https://github.com/nf-core/raredisease/blob/master/nextflow.config#L295C5-L295C35

This comment was marked as outdated.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This pull request introduces two significant changes to Nextflow: a mechanism to preload Lifebit-specific plugins via environment variable before pipeline execution, and a modification to version checking logic that disables strict version enforcement when the '!' prefix is used in version requirements.

Changes:

  • Added environment variable-based plugin preloading functionality specifically for Lifebit plugins (NXF_LIFEBIT_PRELOAD_PLUGINS)
  • Disabled strict version checking by commenting out the flag that causes pipeline failures when version requirements are prefixed with '!'
  • Added .DS_Store to .gitignore for better macOS compatibility

Reviewed changes

Copilot reviewed 2 out of 3 changed files in this pull request and generated 7 comments.

File Description
modules/nextflow/src/main/groovy/nextflow/cli/CmdRun.groovy Adds preloadLifebitPlugins() method and calls it early in the run() method to load vendor-specific plugins before script execution
modules/nextflow/src/main/groovy/nextflow/Session.groovy Comments out the assignment to the 'important' flag in version checking logic, effectively disabling strict version enforcement
.gitignore Adds .DS_Store to ignore macOS system files

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

def envPlugins = sysEnv.get('NXF_LIFEBIT_PRELOAD_PLUGINS')
if( envPlugins && envPlugins.trim().length() > 0 ) {
log.debug("Pre-loading Lifebit's plugins '${envPlugins}'...")
Plugins.load([plugins: envPlugins.tokenize(',').collect { it.trim() }.findAll { it }.unique()])

This comment was marked as outdated.

@mageshwaran-lifebit mageshwaran-lifebit merged commit 225edac into 22.10.8 Jan 23, 2026
2 checks passed
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.

2 participants