Skip to content

Sync: align ncbo/ncbo_cron with the AgroPortal codebase#121

Draft
mdorf wants to merge 35 commits intodevelopfrom
chore/ontoportal-lirmm-goo-compat
Draft

Sync: align ncbo/ncbo_cron with the AgroPortal codebase#121
mdorf wants to merge 35 commits intodevelopfrom
chore/ontoportal-lirmm-goo-compat

Conversation

@mdorf
Copy link
Member

@mdorf mdorf commented Mar 17, 2026

Overview

This PR aligns ncbo/ncbo_cron with the implementation maintained by the AgroPortal team in agroportal/ncbo_cron (development branch), incorporating selected updates while preserving NCBO-specific behavior where required.

The changes bring ncbo_cron into compatibility with the synchronized OntoPortal stack and include scheduler fixes, ontology processing enhancements, and test infrastructure improvements.

Unlike the full replacements performed for goo and sparql-client, this PR incrementally aligns the existing codebase with AgroPortal while maintaining compatibility with the NCBO deployment.

Prerequisites

This PR depends on the following changes being merged:

Key Changes

Alignment and compatibility

  • Synchronizes with AgroPortal development branch
  • Updates dependencies for compatibility with the aligned OntoPortal stack

Runtime and scheduler improvements

  • Adds Ruby 3.2 support and updates dependencies
  • Fixes scheduler interval handling and task configuration loading
  • Improves logging and job execution reliability

Ontology processing and graph management

  • Adds new processing actions (extract_metadata, index_all_data)
  • Introduces optional handling of “zombie graphs” during flush operations
  • Adds graph-count reporting (scheduled job + standalone script)

Test and CI updates

  • Upgrades test framework to Minitest 6
  • Aligns test suite with OntoPortal practices
  • Introduces testkit integration and more deterministic tests
  • Improves CI stability

Notes

This PR is part of a broader effort to reduce divergence between BioPortal and AgroPortal codebases and improve maintainability across OntoPortal deployments.

mdorf and others added 30 commits December 9, 2025 12:55
…e old code was causing intermittent test errors
…ors due to non-deterministic order of test executions
…rking

  - convert test_ontology_pull from WEBrick server threads to WebMock stubs
  - remove webrick from test dependencies (Gemfile, gemspec, lockfile)
  - refactor scheduler tests to bind TCPServer on 127.0.0.1:0 and reuse the open socket
  - remove TestCase.unused_port helper and all call sites
  - keep cleanup explicit (server.close in ensure) to avoid port leaks
alexskr and others added 5 commits March 6, 2026 12:01
Setting $0 = "ncbo_cron" before `require` calls causes Ruby to misreport
errors as "cannot load such file -- ncbo_cron"
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