Skip to content

Migrate to Nextflow Plugin Registry and ship 1.0 #323

Description

@drernie

Background

Nextflow is replacing the legacy nextflow-io/plugins index with the new Nextflow Plugin Registry. Per the migration guide:

  • The legacy index repo is closed to new pull requests.
  • Starting Nextflow 25.10, the registry becomes the only download source.
  • Publishing now uses ./gradlew releasePlugin from the new Nextflow Gradle plugin (≥1.0.0-beta.6) — the existing GithubUploader + publishIndex tasks are obsolete.

This blocks releasing 0.9.2 (the OffsetDateTime fix from #321/#322) and all future versions through the standard channel.

Decision: rather than publish 0.9.2 to the legacy index and 1.0 to the registry, we'll skip publishing 0.9.2 entirely and ship the migration + OffsetDateTime fix together as 1.0.0, our first release on registry.nextflow.io. Users who need the fix sooner can build locally via make install from main.

Required Changes

Per the migration guide:

  1. Delete buildSrc/, launch.sh, plugins/build.gradle
  2. Move plugins/nf-quilt/src/ → repo-root src/
  3. Replace settings.gradle with rootProject.name = 'nf-quilt'
  4. Rewrite root build.gradle to use the Nextflow Gradle plugin
  5. Rewrite Makefile with the new build targets
  6. Update README.md / README-DEV.md
  7. Verify make assemble and ./gradlew releasePlugin work

Suggested PR Breakdown

  • PR 1 — Restructure (no functional change): delete buildSrc/, launch.sh, plugins/build.gradle; move plugins/nf-quilt/src/ to root; update settings.gradle. Keep CI green by adjusting paths only.
  • PR 2 — Build system: new root build.gradle using the Nextflow Gradle plugin; new Makefile targets; ensure unit tests + make pkg-test still pass.
  • PR 3 — Docs: update README.md, README-DEV.md, and CHANGELOG.md to reflect new build/publish flow; remove nextflow-io/plugins references.
  • PR 4 — Release 1.0.0: bump Plugin-Version from 0.9.2 to 1.0.0 in MANIFEST.MF; finalize CHANGELOG entry; run ./gradlew releasePlugin; register nf-quilt on registry.nextflow.io; close Nextflow version mismatches? #321.

Risks / Open Questions

  • Verify the new Gradle plugin handles our quiltcore + Jackson dependencies cleanly (the test suite exercises real S3 against udp-spec).
  • Confirm registry account/ownership for nf-quilt (who registers it).
  • Does releasePlugin still produce a GitHub release with the meta.json + zip assets, or only push to registry.nextflow.io? Affects whether our Makefile's default NXF_PLUGINS_TEST_REPOSITORY (a GH release URL) keeps working for 1.0+; no impact on historical 0.9.1 and earlier.

References

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions