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

Dart 2.0 will remove optional typing from language #24

Closed
Stargator opened this issue Sep 2, 2017 · 9 comments
Closed

Dart 2.0 will remove optional typing from language #24

Stargator opened this issue Sep 2, 2017 · 9 comments
Assignees
Labels

Comments

@Stargator
Copy link
Contributor

Stargator commented Sep 2, 2017

As the Dart team announced Dart 2.0, they did so by speaking about making Dart a typing system and removing the optional typing in phases.

This month, they encouraged folks to get their code ready for Dart 2.0 by enabling strong mode and utilizing the dartdevc compiler.

For exercism, this means code written in Dart 1.0 to pass our tests, may not work for Dart 2.0.

On the plus side, we have not officially supported the Dart exercise. So we can opt to make the code written use the dartdec compiler and enable strong mode by updating the pubspec.yaml file and adding an analysis_options.yaml file, respectively.

However, users may still try to write the code with optional typing. So maybe each exercise's README can be updated to highlight these requirements.

We could also include it somewhere in the docs.

Thoughts? @kytrinyx @iHiD @SuperPaintman

@Stargator Stargator self-assigned this Sep 2, 2017
@Stargator
Copy link
Contributor Author

I should note, there is no specific or general release date given by the Dart team. So my guess is it could be this year or next year.

@kytrinyx
Copy link
Member

kytrinyx commented Sep 3, 2017

I would suggest that we wait until we know more about their timeline.

We can update the onboarding instructions to make people aware of the difference, and make sure that we update our exercises to support the new syntax in time for the Dart 2.0 release.

@Stargator
Copy link
Contributor Author

@kytrinyx I understand wanting to know more about their timeline. But from my review of their news page, they don't announce anything until it is already available.

Announced and released Dart 1.24 in June on the same day
Announced and released AngularDart 3.0 in May on the same day
Dart 1.23 in April
Dart 1.22 in February
Dart 1.21 in December 2016
AngularDart 2.1 in November 2016, which makes a point to say they announced/launched AngularDart 2.0 at a summit event. Which gives me the impression we won't have any other heads up about Dart 2.0 until it's already out.

Last year, when they talked about Dart's future for 2017 and "beyond", they left out specifics. So they only will talk about something when they feel either it's ready or close to done.

Hence why given the fact they announced Dart 2.0 in June and then encouraged folks to get their ready for Dart 2.0 in August makes me feel it's closer to release, assuming nothing critical prevents thier progress.

I know this is painting the picture its closer than I originally guessed, but I wanted to look over their habit of public announcements when compared to releases and they are much closer than I thought.

At the very least, we can update our tests to be typed and that may encourage some behaviors from our users that will help with the migration.

@kytrinyx
Copy link
Member

kytrinyx commented Sep 3, 2017

Which gives me the impression we won't have any other heads up about Dart 2.0 until it's already out.

That's totally fair.

At the very least, we can update our tests to be typed and that may encourage some behaviors from our users that will help with the migration.

Just so I'm sure I understand: we can update the tests to be typed and it would work for both v1 and v2?

@Stargator
Copy link
Contributor Author

Yes, since in v1 typing is optional. It would be different if v1 had no typing and v2 had typing,

But it's optional, so our tests can be updated.

@kytrinyx
Copy link
Member

kytrinyx commented Sep 3, 2017

Ah, ok, that makes more sense now, thanks for clarifying.

I think updating now seems like the best plan, then.

We could use this as a basis for opening a number of "good first patch" issues https://github.com/exercism/docs/blob/master/language-tracks/launch/open-issues.md

@Stargator
Copy link
Contributor Author

Sounds good!

@Stargator
Copy link
Contributor Author

I'll make the Hello World exercise the template and reference that in the tickets.

@Stargator
Copy link
Contributor Author

Closing as issue #27 will take over from here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants