Skip to content

CCLib harness integration for qchem and orca - #515

Draft
Awallace3 wants to merge 48 commits into
MolSSI:masterfrom
Awallace3:cclib_harness
Draft

CCLib harness integration for qchem and orca#515
Awallace3 wants to merge 48 commits into
MolSSI:masterfrom
Awallace3:cclib_harness

Conversation

@Awallace3

@Awallace3 Awallace3 commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

Description

cclib can be used to add "second class" harnesses more easily by leveraging their parsers of programs. This PR starts laying out how cclib can be used in a harness for orca and extended qchem support.

Changelog description

Adds cclib_programs for a base cclib harness along with orca/qchem

Status

  • Reduce TDD tests
  • Ready for code review (currently draft but wanted to make public)
  • Code base linted
  • Ready to go

if changes.pop("permissions", False):
os.chmod(environment["QC"], 0o300)
os.chmod(environment["QCAUX"], 0o300)
os.chmod(environment["QCPROG"], 0o644)
os.chmod(environment["QC"], 0o300)
os.chmod(environment["QCAUX"], 0o300)
os.chmod(environment["QCPROG"], 0o644)
os.chmod(executable, 0o644)
if parser_input is not None:
try:
parser_input.close()
except Exception:
if temporary_path is not None:
try:
os.unlink(temporary_path)
except FileNotFoundError:

import pytest

import qcengine as qcng
import pytest

import qcengine as qcng
import qcengine.programs.cclib_programs.base as cclib_base

from qcengine.config import TaskConfig
from qcengine.exceptions import InputError, ResourceError, UnknownError
from qcengine.programs.cclib_programs.base import CCLibHarness

def test_missing_executable_is_a_resource_error(monkeypatch):
harness = ORCACCLibHarness()
monkeypatch.setattr(cclib_base, "_load_cclib_api", lambda: object())
@codecov

codecov Bot commented Jul 30, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 20.28640% with 1002 lines in your changes missing coverage. Please review.
✅ Project coverage is 26.15%. Comparing base (cdda366) to head (a42f15a).
⚠️ Report is 26 commits behind head on master.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

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