Skip to content

Allow getters to be executed lazily instead of up-front #4234

Closed

Description

@DanTup

DAP now allows us to wrap expensive getters in an object and signal that it's to support lazy-fetching of expensive/potential-side-effect properties:

microsoft/vscode#134450

We should look at adopting this and then ditching the option that does this up-front (or keeping it as a way to opt-in to previous behaviour if it's more convenient and you have no concerns about side-effects/perf).

  • Roll into Flutter and update its argument classes to pass this value
  • Update Dart-Code to support setting this option

Activity

  1. added
    is enhancementAn enhancement or improvement that should be listed in release notes but is not a bug fix.
    in debuggingRelates to the debug adapter or process of running debug sessions
    on Oct 24, 2022
  2. added this to the On Deck milestone on Oct 24, 2022
  3. modified the milestones: On Deck, v3.62.0 on Feb 27, 2023
  4. modified the milestones: v3.62.0, v3.64.0 on Mar 23, 2023
  5. modified the milestones: v3.64.0, v3.66.0 on Apr 4, 2023
  6. modified the milestones: v3.66.0, v3.68.0 on May 16, 2023
  7. DanTup commented on Jun 19, 2023

    @DanTup
    MemberAuthor

    Initial Dart change is here:

    https://dart-review.googlesource.com/c/sdk/+/310164

    Looks like this (the UI/icon is from VS Code):

    lazy.getters.mp4

    We still need to roll into Flutter + update Dart-Code.

  8. modified the milestones: v3.68.0, v3.70.0 on Jun 22, 2023
  9. modified the milestones: v3.70.0, v3.72.0 on Jul 25, 2023
  10. modified the milestones: v3.72.0, v3.74.0 on Aug 31, 2023
  11. added
    relies on sdk changesSomething that requires changes in the Dart/Flutter SDK to ship before it will become available
    on Oct 31, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    in debuggingRelates to the debug adapter or process of running debug sessionsis enhancementAn enhancement or improvement that should be listed in release notes but is not a bug fix.relies on sdk changesSomething that requires changes in the Dart/Flutter SDK to ship before it will become available

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions