Skip to content

Implement the Q1 2021 small features release in DDC #44915

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

Closed
leafpetersen opened this issue Feb 9, 2021 · 11 comments
Closed

Implement the Q1 2021 small features release in DDC #44915

leafpetersen opened this issue Feb 9, 2021 · 11 comments
Assignees
Labels
area-web-js Issues related to JavaScript support for Dart Web, including DDC, dart2js, and JS interop. P1 A high priority bug; for example, a single project is unusable or has many test failures

Comments

@leafpetersen
Copy link
Member

Implementation issue for this set of features.

cc @sigmundch @franklinyow

@leafpetersen leafpetersen added the area-web-js Issues related to JavaScript support for Dart Web, including DDC, dart2js, and JS interop. label Feb 9, 2021
@leafpetersen leafpetersen added this to the March Beta Release milestone Feb 9, 2021
@leafpetersen
Copy link
Member Author

See also.

@sigmundch
Copy link
Member

Like with dart2js, I expect that metadata support is CFE only and >>> will likely be CFE + runtime libraries only, so we may have no work on the DDC side. I expect we may need to do some backend work to adapt our type representation to accept generic types in new places as proposed by the feature.

@nshahan - do you know if that's supported by our current representation or if more work will be required to support this?

@nshahan
Copy link
Contributor

nshahan commented Feb 12, 2021

AFAIK we don't have the explicit support yet in the web runtime libraries but talking with @rakudrama today made it sound like it would be a minor change to the patch files based on the existing implementations of the existing shift operators. Not expecting a large amount of work to reach a version that performs well but we need to be aware of performance.

@leafpetersen
Copy link
Member Author

@nshahan any updates?

@nshahan
Copy link
Contributor

nshahan commented Mar 12, 2021

Now that an implementation that throws an unimplemented message has landed and we have working tests @lrhn said that he was going to add a real implementation next week. I will followup and make sure we add an implementation soon.

dart-bot pushed a commit that referenced this issue Mar 16, 2021
BUG= #44915

Change-Id: Ia63d1653729ff458f9ebb2a2e33883a00a66378f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/191220
Reviewed-by: Nicholas Shahan <[email protected]>
Commit-Queue: Lasse R.H. Nielsen <[email protected]>
@sigmundch
Copy link
Member

Thanks for the update @nshahan. Do you know if there is anything left to do for "Generic function types as type arguments"?

@sigmundch sigmundch assigned nshahan and unassigned sigmundch Mar 16, 2021
@nshahan
Copy link
Contributor

nshahan commented Mar 16, 2021

Do you know if there is anything left to do for "Generic function types as type arguments"?

I'm not sure about that. My feeling is the systems might just work but there could be unexpected incompatibilities with the function type argument.

I just found a set of test suites for the features mentioned in this comment #44926 (comment). I'll use those to validate.

@nshahan
Copy link
Contributor

nshahan commented Mar 16, 2021

@leafpetersen Do you have an overview of all the tests for the various features? It would be nice to have a query for each of the features we could use to see the status.

I noticed some of the triple shift tests were being skipped because they have been around for so long https://dart-review.googlesource.com/c/sdk/+/191482. Do we have to watch out for this on the other features?

@athomas It looks like we need to roll the co19 tests again as they have been landing some updates (sorry for the noise if you are already aware).

Current DDC test status (that I'm aware of):

Triple shift operator
The language suite is passing

  • language/operator/operator_triple_shift_test

The co19 suite has failures but it looks like there was an update that needs to be rolled into the SDK

Generic Function Types in type arguments and bounds
The language suite is failing in the frontend.

Some tests have landed in co19 but have not been rolled into the SDK yet.

Non-function type alias support in DDC
I haven't found any runtime tests for the backends in the language suite.

I'm not aware of any failures from the co19 test suite that are on the DDC side, there are a lot of tests scattered in different directories. Some front end only tests are failing.

@leafpetersen
Copy link
Member Author

@nshahan I have internal docs and spreadsheets tracking all known tests and failures, I will send you links.

@sigmundch sigmundch added the P1 A high priority bug; for example, a single project is unusable or has many test failures label Mar 18, 2021
@franklinyow
Copy link
Contributor

Any update?

@leafpetersen
Copy link
Member Author

I believe this is done.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-web-js Issues related to JavaScript support for Dart Web, including DDC, dart2js, and JS interop. P1 A high priority bug; for example, a single project is unusable or has many test failures
Projects
None yet
Development

No branches or pull requests

4 participants