Skip to content

Policy on support for OpenFOAM.org and other versions #328

@MakisH

Description

@MakisH

As the ESI / OpenCFD (.com) and CFD Direct / OpenFOAM Foundation (.org) versions are diverging more and more, it is becoming impossible to maintain the same level of support we started with. The amount of effort required is extremely high, especially since every new version of OpenFOAM.org brings several breaking changes.

There seem to be some users relying mainly on the latest versions of OpenFOAM.org, mainly judging from the download numbers of the release artifacts and PRs such as #310 (and similarly for foam-extend #302).

At the same time, we currently maintain commented-out configuration variants in some of our tutorials, and since OpenFOAM 10, a complete branch.

Motivation for supporting multiple versions is mainly because people are often restricted from custom codes and what version is installed on their local system. We couple codes, so we want to enable diversity. However, supporting old versions as well is becoming extremely complex and keeps the whole project behind.

As a way forward, and to (a) simplify our release process and (b) facilitate community contributions for other versions, I suggest the following:

  • Our latest release only supports the latest OpenFOAM.com version, as we mostly already do. This means:
  • We host one branch for OpenFOAM.org, aiming to support the latest release of OpenFOAM.org.
    • The community can contribute to this branch.
    • Only compatibility updates can be contributed to these branches. All features and general fixes must be contributed to the develop branch.
    • We generate release artifacts for the latest supported version in every release.
    • If this is not ready, we proceed with our release, and attach additional artifacts later.
    • We only attach an artifact if all tests (see below) pass, and all preCICE features of the main adapter are supported or documented in the code and the user documentation.
  • We similarly host one branch for foam-extend, etc.

For tutorials:

  • We consider each OpenFOAM variant to be a separate code. This means that it will get its own case directory in some tutorials: fluid-openfoam-org.
  • We only provide such variants for a couple of tutorials (partitioned-heat-conduction, flow-over-heated-plate, and perpendicular-flap, potentially also partitioned-pipe). If someone wants to port more cases, they can compare the changes.
  • We add these cases to the system tests.

Any suggestions?

Metadata

Metadata

Assignees

No one assigned

    Labels

    compatibilityAffecting only specific OpenFOAM / preCICE versions

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions