javascript: Port missing exercises from JavaScript to EcmaScript track
After more conversation with @kytrinyx and others, I’ve prepared a few things for deprecating the current JS track.
For V2, the EcmaScript track will become the “new” JavaScript track. Users’ submissions will be migrated as part of the process.
Katrina’s notes on the migration process:
We will take the v1 site down in order to launch v2. The site will have to be offline for 24-48 hours, because we have a massive data migration that we need to do.
During that time, we can:
- rename https://github.com/exercism/javascript to https://github.com/exercism/DEPRECATED.javascript
- set
active: falsein the config of DEPRECATED.javascript- rename https://github.com/exercism/ecmascript to https://github.com/exercism/javascript
- delete the GitHub team exercism/javascript
- rename the GitHub team exercism/ecmascript to exercism/javascript
In the meantime, I’ve closed all open issues and PRs on the JS track as wontfix, leaving one issue open stating the track will be deprecated. I have also updated the README to alert users to the deprecation.
On this track, we need to
- [] identify any exercises that exist in the current JS track but not in this one
- [] open issues to port those exercises
@tejasbubane @joelwallis ( @jackhughesweb ? ) would any of you care to take on the audit of missing exercises? That step seems to need to be done first.
About this issue
- Original URL
- State: closed
- Created 6 years ago
- Comments: 17 (17 by maintainers)
Done.
Not a problem at all! I just didn’t want you to be disappointed if you were fired up to do the work!
Hi @matthewmorgan,
Unfortunately, I’m not finding time this week to work on this issue. Feel free to take
point-mutationsfrom my plate. Thank you very much for stepping forward to offer some help.@joelwallis awesome! A couple of things that came up with @gavinhenderson’s PR:
I had neglected to call these out explicitly.
On #412 @joelwallis wrote:
@joelwallis I did discuss with @kytrinyx the differences in implementation syntax between the JS track and the ES track for a given exercise.
I think that changing the API of the tests and example of a newly ported exercise could be at the discretion of the implementer. Function or POJO based solutions are just as legitimate in ES6 as class-based ones. For sure we would want to update the module syntax and the test syntax (
itvstest) to conform to the ES track conventions.As far as worrying about an existing exercise that is implemented in both places, but with a different API, the ES one should take precedence and remain as-is. This may break a user’s existing solution, but this happens frequently with normal changes and improvements to exercise code anyway.
The intention is that a user’s existing solutions will be migrated to the matching exercise in the new track, though it may not exactly match because of potential API differences. The code will still be there, and they could update their solution if they want to.
Let me know if this sounds OK to you, or if you have any objections or questions.
Thanks!