Skip to content

Fix dependency issue with cmd2-ext-test plugin #1517

Closed

Description

@tleonhardt

Now that we put out a 3.0.0b1 beta release for cmd2, much of our automatic CI/CD is failing due to unsatisfiable requirements related to the cmd2-ext-test plugin.

Regardless of the path forward, the current situation we have where testing cmd2 requiring a plugin which itself depends on cmd2 is an abomination of circular dependency that needs to end. A plugin which depends on cmd2 should not IMO be part of the main repository.

I see three general possible paths forward:

  1. Deprecate the cmd2-ext-test plugin, delete the code for it, and include the mixin class in our isolated tests
  2. Move the cmd2-ext-test plugin to a separate repository and modernize it so it works with cmd2 3.x
  3. Bake the mixin class into cmd2 itself so it is available to all users and deprecate the plugin

One option is to document for users how they can create this mixin tests for their own testing ease.

Activity

  1. github-actions commented on Sep 16, 2025

    @github-actions
    Contributor

    🤖 Hi @tleonhardt, I've received your request, and I'm working on it now! You can track my progress in the logs for more details.

  2. tleonhardt commented on Sep 16, 2025

    @tleonhardt
    MemberAuthor

    @kmvanbrunt @anselor Do either of you have any thoughts or opinions here?

  3. tleonhardt commented on Sep 16, 2025

    @tleonhardt
    MemberAuthor

    PR #1518 effectively takes the first approach outline and deletes the cmd2-ext-test plugin and copies the ExternalTestMixin class to the one set of tests which use it.

    I'd be happy to explore the 2nd or 3rd option, but the first option is effectively a prerequistie.

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

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions