Commit graph

270 commits

Author SHA1 Message Date
Erik Simmler
3f35e2ac0b Merge pull request #165 from anuragsoni/isograms
use isAlpha definition from the upcoming elm-lang core
2017-10-14 19:43:38 -04:00
Anurag Soni
d82d346afe
use isAlpha definition from the upcoming elm-lang core 2017-10-11 20:22:46 -04:00
Erik Simmler
ab69147dd9 Merge pull request #164 from anuragsoni/isogram-exercise
Elm: isograms
2017-10-10 22:14:52 -04:00
Erik Simmler
16a757cc3f Merge branch 'mcmillhj/add-all-your-base-exercise' 2017-10-10 22:12:49 -04:00
Erik Simmler
28733d404a Remove generated index.html 2017-10-10 22:11:03 -04:00
Erik Simmler
4aca4bc29c Merge remote-tracking branch 'mortenaa/CollatzConjecture' 2017-10-10 22:07:54 -04:00
Erik Simmler
56a653c045 Merge branch 'BuildOnWindows' 2017-10-10 22:04:44 -04:00
Erik Simmler
59bb15e0c1 Standardize line endings 2017-10-10 21:53:47 -04:00
Anurag Soni
528b355c81
skip all tests after the first 2017-10-10 21:36:08 -04:00
Anurag Soni
3c93d1f54c
Elm: isograms 2017-10-10 21:10:32 -04:00
Morten Nygaard Åsnes
44b1cde071 Removed debugging printing 2017-10-10 20:53:16 +02:00
Morten Nygaard Åsnes
92305de08b Download elm-format on windows 2017-10-10 20:41:48 +02:00
Hunter McMillen
3ab84a5143 add exercise to config.json 2017-10-10 13:18:11 -04:00
Hunter McMillen
8f59849a69 add all-your-base exercise and canonical tests 2017-10-10 13:15:53 -04:00
Morten Nygaard Åsnes
8bc34db0f2 Correct formatting 2017-10-08 17:57:29 +02:00
Morten Nygaard Åsnes
1b852aeeb4 Added uuid for collatz-conjecture to config.json 2017-10-08 17:45:28 +02:00
Morten Nygaard Åsnes
f4bee79297 Merge branch 'master' into CollatzConjecture 2017-10-08 11:47:31 +02:00
Morten Nygaard Åsnes
dfd20410a8 Added Collatz Conjecture to config 2017-10-08 11:40:05 +02:00
Morten Nygaard Åsnes
f40f8a1ac0 Fixed elm-format 2017-10-08 11:30:04 +02:00
Erik Simmler
b4c2346263 Merge pull request #161 from anuragsoni/pascals-triangle
add pascals-triangle exercise
2017-10-07 20:10:44 -04:00
Anurag Soni
d01d73544b
format with elm-format 0.6.1 2017-10-07 19:52:05 -04:00
Anurag Soni
afa928fdba
remove lock file 2017-10-07 14:40:53 -04:00
Anurag Soni
ecccfcbef0
add pascals-triangle exercise 2017-10-07 14:38:24 -04:00
Morten Nygaard Åsnes
6b76c9b1d5 Added CollatzConjecture 2017-10-07 18:36:25 +02:00
Katrina Owen
243915c4eb Merge pull request #159 from exercism/default-snippet
Add default introductory code example
2017-09-01 16:34:43 -06:00
Katrina Owen
0abb4b208b Add default introductory code example
Instead of having logic for a fallback in the backend, we're choosing a
default for the snippet file.

For tracks that have core exercises, we pick the first core exercise.
For tracks without these, we pick the first exercise listed in the config.

Note that we're aiming for 10 lines and a max-width of 40 columns.
This solution has 11 lines, so we may want to adjust it.
2017-09-01 16:14:46 -06:00
Katrina Owen
bd7f8e57d3 Merge pull request #158 from kytrinyx/generate-maintainer-json
Add default maintainers file
2017-08-04 16:16:59 -06:00
Katrina Owen
06522f623e Add default maintainers file
We wish to feature the maintainers of each track on the new (nextercism) website. Ideally, the bios will be tailored to each track, giving a friendly view into each maintainer's background and interest in the language, and even (perhaps) what they enjoy most about maintaining the track, or what type of things they tend to focus on.

The main reasons for including these are to:

* provide a stronger basis for empathy with maintainers
* give well-deserved recognition
* plant a seed in people's minds that _Exercism tracks are maintained by people like me... I could do that!_

Being featured on the Exercism website is entirely optional, and we're generating all the data with show_on_website=false so that if you don't want to bother, you don't have to change anything.

If you've moved on, or decide to do so, please submit and merge a PR (for visibility to the others involved) that sets **alumnus** to _true_ for your maintainer entry. I'm working on a bot that will update the GitHub team to reflect the current state of this file.

We can merge this as is, and any changes can be added in subsequent pull requests.
2017-07-29 09:30:45 -06:00
Katrina Owen
a85e637f20 Merge pull request #157 from exercism/rm-config-redundancy
Remove redundant key/value pairs from config.json
2017-07-28 21:23:40 -06:00
Katrina Owen
d1d3285d20 Merge pull request #155 from exercism/nextercism-defaults
Add configuration defaults for nextercism
2017-07-28 21:20:32 -06:00
Katrina Owen
3a2621af3a Merge pull request #156 from exercism/generate-readme
Generate static exercise README templates
2017-07-28 21:14:11 -06:00
Katrina Owen
f084e58638 Remove redundant key/value pairs from config.json
The slug is not used anywhere. We initialize a track based on knowing the Track ID.
Since the repository is always named after the track ID, this field, too, is redundant,
as it can be inferred.
2017-07-21 13:51:50 -06:00
Katrina Owen
6151955420 Generate static exercise README templates
We are working towards making exercises stand-alone. That is to say: no more generating READMEs on the fly.

This will give maintainers more control over each individual exercise README, and it will also make some of the backend logic for delivering exercises simpler.

The README template uses the Go text/template package, and the default templates generate the same READMEs as we have been generating on the fly.  See the documentation in [regenerating exercise readmes][regenerate-docs] for details.

The READMEs can be generated at any time using a new 'generate' command in configlet. This command has not yet landed in master or been released, but can be built from source in the generate-readmes branch on [configlet][].

[configlet]: https://github.com/exercism/configlet
[regenerate-docs]: https://github.com/exercism/docs/blob/master/maintaining-a-track/regenerating-exercise-readmes.md
2017-07-16 13:24:35 -06:00
Katrina Owen
f7cd1f331c Add default exercise readme template 2017-07-16 13:24:35 -06:00
Katrina Owen
8c5941e864 Add configuration defaults for nextercism
We will be moving to a tree-shaped track rather than a linear one, as described in the [progression & learning in Exercism](https://github.com/exercism/docs/blob/master/about/conception/progression.md) design document.

In order to support this, we need to expand the metadata that exercises are configured with.

Note that 'core' exercises are never unlocked by any other exercises. Core exercises appear in the track in the order that they are listed in the array.

Non-core exercises depend on only one exercise (unlocked_by: ). At the moment we are assuming that this is a core exercise, but there is no reason that it needs to be.

Until now we have operated with a separate deprecated array. These are now being moved into the exercises array with a deprecated field.

With these defaults the track in nextercism will have no core exercises, and all the exercises will be available as 'extras' from the start.

If you haven't already, now would be a good time to do the following:

* add a rough estimate of difficulty to each exercise (scale: 1-10)
* add topics to each exercise
* choose *at most 20 exercises* to be core exercises (set core: true, and delete the unlocked_by key)
* for each exercise that is not core, decide which exercise is the prerequisite (max 1)

If possible, leave 3 or 4 simple exercises as (core: false, unlocked_by: null), as this will provide new participants with some exercises that they can tackle even if they have not finished the first core exercise.
2017-07-14 22:52:08 -06:00
Erik Simmler
9439712e42 Merge pull request #154 from exercism/configlet-subcommand
Call configlet subcommand on CI
2017-07-09 14:48:06 -04:00
Katrina Owen
5cc237a332 Call configlet subcommand on CI
This changes configlet to pass a subcommand.

For now, we've released a version of configlet which handles both the old command:

    configlet path/to/track

as well as the new command:

    configlet lint path/to/track

This will let us update all the travis files to include the subcommand before we
release the version of configlet that requires the subcommand.
2017-07-09 12:12:17 -06:00
Erik Simmler
505be0c663 Merge pull request #144 from tgecho/etl
Add etl exercise
2017-07-07 21:09:10 -04:00
Erik Simmler
c3a8a8ec85 Add etl exercise 2017-07-07 21:08:40 -04:00
Erik Simmler
eeeab525b9 Merge pull request #152 from iamvery/skip-tests
Skip all but first test of each example
2017-07-07 20:37:14 -04:00
Erik Simmler
be936a14d4 Merge branch 'master' into skip-tests 2017-07-07 20:37:02 -04:00
Erik Simmler
8b5ef02a1e Add a bit of documentation for the test skips 2017-07-07 20:35:54 -04:00
Erik Simmler
1ebbaae152 Remove skips from tests before checking in CI
This is a bit gross, but I think optimizing for the end users is important enough to justify the dance.
2017-07-07 20:23:32 -04:00
Erik Simmler
2125fcf43c Merge pull request #153 from iamvery/triangle-version-test
Add version test to triangle exercise
2017-07-07 20:09:12 -04:00
Jay Hayes
7b3e9e4cb2 Skip at describe level for generated tests 2017-07-07 15:43:28 -05:00
Jay Hayes
965a615782 Don't skip first _actual_ test
I failed to notice with the initial commit that the first tests in these
files are just the "version sanity check". This should start learners
off with a useful first failure.
2017-07-07 15:42:31 -05:00
Jay Hayes
fff2196a6d Expose version func from Triangle module to tests 2017-07-07 12:24:16 -05:00
Erik Simmler
604908a29c Merge pull request #150 from iamvery/watch-tests
Add "watch" command to all exercises
2017-07-06 20:01:51 -04:00
Jay Hayes
183847554f Add version test to triangle exercise
This follows the pattern set by some of the other exercises.
2017-07-06 07:19:14 -05:00
Jay Hayes
4d81104a85 Skip all but first test of each example
This allows learners to gradually approach exercise. However, unlike
commented tests, the Elm compiler is still able to infer type
information from the skipped tests.
2017-07-05 15:35:15 -05:00