## 2024-04-03

### Attendees:
    - Roger Simms;
    - Roni Frantchi;
    - Igor Savchenko;
    - Marcin Wyszynski
### Absent:
    - Jim Brikman

### Agenda

- The `tofu` keyword addition as an alternative to `terraform`.
    - The steering committee voted last week to block breaking changes until we have .otf files in place. However, since this is an opt-in feature, and it’s a community contribution by a member who **already created a PR for it,** it would be very discouraging to now tell them that “actually, this is gonna be frozen for a month”. Thus, I’d like to include it right away.
    - Options:
        - Reject for now, wait for RFC acceptance to the language divergence problem;
        - Accept just this one as an exception:
            - Igor: we acknowledge that this will break compatibility with some tools, but state encryption does it already, so we’re not making things worse, and we promise to have a long-term solution in 1.8 where this is a top priority. Good for adoption.
            - Roni: exception, we will not be accepting more until we have the solution to the divergence problem, including changes going into 1.8;
            - Roger: same;
            - Marcin: same;
        - We go back on our original decision, so it’s open season for divergence;
    - *Decision:* accept as an exception, unanimous;

- Discuss versioning, specifically continue to follow 1.6, 1.7, 1.8 versioning can cause confusion in differences between tofu and terraform. tofu 1.6 = terraform 1.6, but then tofu 1.7 is not the same as terraform 1.7 (both will have it’s own features and lack some). Longer we continue this pattern, more confusion it will cause on what are the differences and what are the expectations.
    - Concern (Roni): Terraform version constraints for modules;
    - We cannot forever follow Terraform versioning (Igor);
    - Could be weaponized by module authors hostile towards OpenTofu;
    - We cannot bet the future of the project on psychology of individuals - we don’t want to be anyone’s hostages;
    - Options:
        - Proposal 1: continue to use 1.X for terraform parity features and start. using 2.X for features specific to Opentofu (too late for State encryption). TBD how long we would like to support 1.X branch.
        - Proposal 2: Continue current versioning pattern;
        - Proposal 3: solicit input from the dev team and other stakeholders;
        - Proposal 4: go on the offense, provide module authors to explicitly state they don’t want their work used with OpenTofu;
        - Proposal 5: ignore Terraform versioning block in modules, if someone wants to put OpenTofu constraints, they need to put OpenTofu constraints explicitly;
    - *Decision:* take a week to openly discuss with different stakeholders, resume discussion during the next meeting;


