Giter Site home page Giter Site logo

elixir's Introduction

Exercism Elixir Track

GitHub branch checks state GitHub contributors GitHub commit activity

Exercism Exercises in Elixir

Setup

The exercises currently target Elixir versions from 1.8 to 1.13 and Erlang/OTP versions from 21 to 24. Detailed installation instructions can be found at http://elixir-lang.org/install.html. We recommend using the asdf version manager to manage multiple Elixir versions.

Testing


It is recommended to test BEFORE submitting a PR. It will test your submission, ensure that the repository builds as a whole, and help guard against unintentional, unrelated changes.


Test Exercises

To test all of the exercises against their example solution, you can run bin/test_exercises.sh:

$ ./bin/test_exercises.sh
Testing: accumulate Pass
Testing: acronym Pass
...
Testing: zipper Pass
--------------------------------------------------------------------------------
93/93 tests passed.

This will take some time.

To only test some exercises, run:

$ ./bin/test_exercises.sh word-count zebra-puzzle
Testing: word-count Pass
Testing: zebra-puzzle Pass
--------------------------------------------------------------------------------
2/2 tests passed.

Dialyzer

To run dialyzer on all exercises, run ./bin/dialyzer_check.sh. It might take a really long time the first time you run it. It will also be run for you by Github Actions as part of the PR check.

Code and document formatting

To check formatting of all exercises and all documents, run ./bin/check_formatting.sh. It will also be run for you by Github Actions as part of the PR check.

Track linting

configlet is an Exercism-wide tool for working with tracks. You can download it by running:

$ ./bin/fetch_configlet.sh

Run its lint command to verify if all exercises have all the necessary files and if config files are correct:

$ ./bin/configlet lint

The `exercises.practice.slug` value is `transpose ๐Ÿ™‚`, but it must be a lowercase and kebab-case string:
/Users/angelika/Documents/exercism/elixir/config.json

Configlet detected at least one problem.
For more information on resolving the problems, please see the documentation:
https://github.com/exercism/docs/blob/main/building/configlet/lint.md

Contributing Guide

If you want to help maintain the Elixir track, take a look at HELLO.md. You will find there an introduction to all the possible ways you can help us.

If you want to contribute to this repository specifically, please see CONTRIBUTING.md.

elixir's People

Contributors

angelikatyborska avatar parkerl avatar erikschierboom avatar devonestes avatar rubysolo avatar kytrinyx avatar neenjaw avatar jiegillet avatar cohen-carlisle avatar dalexj avatar dependabot[bot] avatar petehuang avatar doggettck avatar jimmbraddock avatar henrik avatar bernardoamc avatar pminten avatar robphoenix avatar martinsvalin avatar teapane avatar exercism-bot avatar br1ght0ne avatar lauramcastro avatar elasticdog avatar jwarwick avatar andrewtimberlake avatar fireproofsocks avatar jedschneider avatar lpil avatar chriseyre2000 avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.