Skip to content

Diagnosticable should be made into a mixin #50498

Description

@gspencergoog

Since Diagnosticable and classes that implement DiagnosticableMixin aren't the same type, code can't compare the type of an object with Diagnosticable to find out if it should call toDiagnosticsNode or not. See #49647 for more details.

In #49726, I fixed all the instances of this in Flutter where this happens by adding implements Diagnosticable to all of the mixin classes, but I still need to fix some instances of it in Google internal code before removing Diagnosticable entirely in favor of DiagnosticableMixin

Activity

  1. added
    c: contributor-productivityTeam-specific productivity, code health, technical debt.
    frameworkflutter/packages/flutter repository. See also f: labels.
    on Feb 10, 2020
  2. self-assigned this
    on Feb 10, 2020
  3. changed the title [-]Diagnosticable should be remove in favor of DiagnosticableMixin[/-] [+]Diagnosticable should be removed in favor of DiagnosticableMixin[/+] on Feb 10, 2020
  4. changed the title [-]Diagnosticable should be removed in favor of DiagnosticableMixin[/-] [+]Diagnosticable should be made into a mixin[/+] on Feb 26, 2020
  5. gspencergoog commented on Feb 26, 2020

    @gspencergoog
    ContributorAuthor

    The plan now is to remove DiagnosticableMixin eventually, and just keep the mixin Diagnosticable, effectively converting the abstract class Diagnosticable into a mixin.

    DiagnosticableMixin can't be removed until the mixin version of Diagnosticable is available in the stable branch, since some plugins that currently use DiagnosticableMixin want to be compatible with both stable and master.

  6. Hixie commented on May 31, 2020

    @Hixie
    Contributor

    I believe this has now been in a stable release.

  7. gspencergoog commented on May 31, 2020

    @gspencergoog
    ContributorAuthor

    Yes, this is already on my list to do.

  8. github-actions commented on Aug 19, 2021

    @github-actions

    This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of flutter doctor -v and a minimal reproduction of the issue.

  9. locked as resolved and limited conversation to collaborators on Aug 19, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

c: contributor-productivityTeam-specific productivity, code health, technical debt.frameworkflutter/packages/flutter repository. See also f: labels.

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions