Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Consider enabling the sound variance experiment. #2555

Closed
modulovalue opened this issue Jun 21, 2023 · 6 comments
Closed

Consider enabling the sound variance experiment. #2555

modulovalue opened this issue Jun 21, 2023 · 6 comments
Labels
area-dart-services closed-not-planned Closed as we don't intend to take action on the reported issue type-enhancement A request for a change that isn't a bug

Comments

@modulovalue
Copy link

@domesticmouse If possible, could the sound variance experiment be enabled on the master channel? (#2480 (comment))

@domesticmouse
Copy link
Member

@mit-mit what experiments do you want running on DartPad master?

@mit-mit
Copy link
Member

mit-mit commented Jun 21, 2023

I think we should have DartPad mirror the standard configuration of the SDK; it not it seems like it might get really confusing what the default developer experience is?

@modulovalue
Copy link
Author

[...] like it might get really confusing what the default developer experience is?

It looks to me like most people will be using the stable channel on DartPad because that is the default. It could be confusing to some people, but we already have enabled inline-classes as an experiment and it doesn't seem like that has lead to any issues so far. Furthermore, the channel selector is pretty explicit that there are experiments enabled.


The master channel + experiment flags are really convenient for discovering issues with the experiments.

An alternative would be (which Erik proposed here) to have a "bleeding_edge" channel:

Quote:

[...] or we might add a new channel (perhaps "bleeding_edge") where every experiment that has an experiment flag is enabled (or at least every experiment which isn't considered too incomplete or too unstable to be a useful foundation for exploration).

The point is that this allows developers who are interested in the evolution of Dart to try out various small experiments in Dart-with-X for any experiment X which is included. The same thing could be done using command line tools in a suitable version with --enable-experiment=X, but dart-pad is a very convenient place for trying out small exploratory programs.

Another benefit could be that upcoming experiments are thus being tested more intensively, all enabled at the same time, and this could help detecting bugs that arise because of conflicts between the code enabled for one experiment and that for a different experiment.

@modulovalue
Copy link
Author

For example, the following issues were discovered because the master channel on DartPad enables inline-classes: dart-lang/sdk#52667 & dart-lang/sdk#52674

I'm trying to see if the sound variance experiment is far enough to deal with the following issue: dart-lang/language#3156.

@mateusfccp
Copy link

This experiment exist in years, and enabling it will maybe give the idea that it will be a default feature in the master branch (and thus, released in the next stable version).

Instead, we should have a way of enabling/disabling for all experiments in the DartPad menu.

@johnpryan johnpryan added type-enhancement A request for a change that isn't a bug area-dart-services labels Jan 8, 2024
@parlough
Copy link
Member

Thanks for the suggestion and discussion here.

For now, we'd like to avoid too much client side configuration in the DartPad UI, especially if it requires changes to the analysis configuration and context due to the setup of the backend.

As for the sound variance experiment, we'll likely stick to only enabling experiments that are more likely to land in upcoming stable releases, and even then, only in the main channel.

Perhaps we can revisit this in the future, but giving DartPad's current goals and support levels, I think this is the best way forward for now. Please feel free to continue the discussion though!

@parlough parlough closed this as not planned Won't fix, can't repro, duplicate, stale Jun 17, 2024
@parlough parlough added the closed-not-planned Closed as we don't intend to take action on the reported issue label Jun 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-dart-services closed-not-planned Closed as we don't intend to take action on the reported issue type-enhancement A request for a change that isn't a bug
Projects
None yet
Development

No branches or pull requests

6 participants