Skip to content

Add deprecation warnings for all variable hierarchy name changes since 1.0. #1289

Description

@Kenneth-T-Moore

Description

Name changes can catch people by surprise. We should enforce some kind of warning behavior to help them migrate their csv file or components to address the changes.

There are different ways we can handle this:

  • raise an error?
  • raise a warning and automatically replace the old names with the correct ones?
  • do we keep the old names in the hiearchy?
  • how long until we remove the deprecation?

Example

No response

Error Message

No response

Aviary Version

1.0.3-dev

Environment Information

No response

Activity

  1. xjjiang commented on Sep 2, 2026

    @xjjiang
    Contributor

    In one of my PRs (#1285), I removed Aircraft.Design.COMPUTE_HTAIL_VOLUME_COEFF and Aircraft.Design.COMPUTE_VTAIL_VOLUME_COEFF. I am wondering whether I should do something.

  2. self-assigned this
    on Sep 4, 2026
  3. jkirk5 commented on Sep 14, 2026

    @jkirk5
    Contributor

    In one of my PRs (#1285), I removed Aircraft.Design.COMPUTE_HTAIL_VOLUME_COEFF and Aircraft.Design.COMPUTE_VTAIL_VOLUME_COEFF. I am wondering whether I should do something.

    Don't worry about it right now, you listed the change in the PR description so adding this later won't be a problem

  4. jkirk5 commented on Sep 14, 2026

    @jkirk5
    Contributor

    We might want to add a a new step to loading aircraft input files to tackle this - it could contain a dict of deprecated variables and their new names, and if a deprecated one is found replace it with the new name and warn the user. The dict could have comments for which version a deprecated variable should get removed (probably let them sit for 1 major iteration, so a deprecation added in [1.1.X] would be removed in [1.2.0]. Maybe we flag everything initially added for a [1.2.0] removal.

  5. jkirk5 commented on Sep 14, 2026

    @jkirk5
    Contributor

    Thinking about it more, the deprecation warning should probably also list when variables will be removed, and that info gets wrapped up into the dict.

  6. added
    documentationImprovements or additions to documentation
    requestSuggestion for new feature or change
    on Sep 14, 2026
  7. added theissue type on Sep 14, 2026
  8. jkirk5 commented on Sep 14, 2026

    @jkirk5
    Contributor

    The old names might have to stay in the hierarchy because if it is not easy to intercept the load inputs step in a clean, one-step way. I think it automatically throws everything in an AviaryValues object which requires a matching variable name (not sure if metadata is required or not but I assume so)

  9. xjjiang commented on Oct 6, 2026

    @xjjiang
    Contributor

    Currently, we remove deprecated Aviary variables as soon as we create new variables. In PR #1299, I include the PR number in which the action is taken. The timestamp is when the PR is merged into main.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

documentationImprovements or additions to documentationrequestSuggestion for new feature or change

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions