Skip to content

Commit

Permalink
Merge branch 'exercism:main' into main
Browse files Browse the repository at this point in the history
  • Loading branch information
lorisp1 authored Jul 15, 2024
2 parents d7ecc0b + 0973cb7 commit 1722dcd
Show file tree
Hide file tree
Showing 102 changed files with 49 additions and 183 deletions.
2 changes: 0 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -76,8 +76,6 @@ jobs:
strategy:
matrix:
include:
- elixir: '1.12.0'
otp: '24.0'
- elixir: '1.13.0'
otp: '24.1'
- elixir: '1.14.0'
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

## Setup

The exercises currently target Elixir versions from 1.12 to 1.17 and Erlang/OTP versions from 24 to 27. Detailed installation instructions can be found at
The exercises currently target Elixir versions from 1.13 to 1.17 and Erlang/OTP versions from 24 to 27. Detailed installation instructions can be found at
[https://elixir-lang.org/install.html](https://elixir-lang.org/install.html). We recommend using the [asdf version manager](https://github.com/asdf-vm/asdf) to manage multiple Elixir versions.

## Testing
Expand Down
1 change: 0 additions & 1 deletion bin/bootstrap_practice_exercise.exs
Original file line number Diff line number Diff line change
Expand Up @@ -167,7 +167,6 @@ defmodule #{module}.MixProject do
[
app: :#{exercise_snake_case},
version: "0.1.0",
# elixir: "~> 1.10",
start_permanent: Mix.env() == :prod,
deps: deps()
]
Expand Down
23 changes: 12 additions & 11 deletions bin/fetch-configlet
Original file line number Diff line number Diff line change
Expand Up @@ -24,10 +24,11 @@ get_download_url() {
local latest='https://api.github.com/repos/exercism/configlet/releases/latest'
local arch
case "$(uname -m)" in
x86_64) arch='x86-64' ;;
*686*) arch='i386' ;;
*386*) arch='i386' ;;
*) arch='x86-64' ;;
aarch64|arm64) arch='arm64' ;;
x86_64) arch='x86-64' ;;
*686*) arch='i386' ;;
*386*) arch='i386' ;;
*) arch='x86-64' ;;
esac
local suffix="${os}_${arch}.${ext}"
curl "${curlopts[@]}" --header 'Accept: application/vnd.github.v3+json' "${latest}" |
Expand All @@ -47,7 +48,7 @@ main() {
fi

local os
case "$(uname)" in
case "$(uname -s)" in
Darwin*) os='macos' ;;
Linux*) os='linux' ;;
Windows*) os='windows' ;;
Expand All @@ -58,8 +59,8 @@ main() {

local ext
case "${os}" in
windows*) ext='zip' ;;
*) ext='tar.gz' ;;
windows) ext='zip' ;;
*) ext='tar.gz' ;;
esac

echo "Fetching configlet..." >&2
Expand All @@ -69,16 +70,16 @@ main() {
curl "${curlopts[@]}" --output "${output_path}" "${download_url}"

case "${ext}" in
*zip) unzip "${output_path}" -d "${output_dir}" ;;
*) tar xzf "${output_path}" -C "${output_dir}" ;;
zip) unzip "${output_path}" -d "${output_dir}" ;;
*) tar xzf "${output_path}" -C "${output_dir}" ;;
esac

rm -f "${output_path}"

local executable_ext
case "${os}" in
windows*) executable_ext='.exe' ;;
*) executable_ext='' ;;
windows) executable_ext='.exe' ;;
*) executable_ext='' ;;
esac

local configlet_path="${output_dir}/configlet${executable_ext}"
Expand Down
1 change: 0 additions & 1 deletion exercises/concept/basketball-website/.meta/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,5 @@
".meta/exemplar.ex"
]
},
"language_versions": ">=1.10",
"blurb": "Learn about Access Behaviour by helping extract deeply nested data for the basketball team's website."
}
1 change: 0 additions & 1 deletion exercises/concept/basketball-website/mix.exs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ defmodule BasketballWebsite.MixProject do
[
app: :basketball_website,
version: "0.1.0",
# elixir: "~> 1.10",
start_permanent: Mix.env() == :prod,
deps: deps()
]
Expand Down
1 change: 0 additions & 1 deletion exercises/concept/bird-count/.meta/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@
".meta/exemplar.ex"
]
},
"language_versions": ">=1.10",
"forked_from": [
"csharp/bird-watcher"
],
Expand Down
1 change: 0 additions & 1 deletion exercises/concept/bird-count/mix.exs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ defmodule BirdCount.MixProject do
[
app: :bird_count,
version: "0.1.0",
# elixir: "~> 1.10",
start_permanent: Mix.env() == :prod,
deps: deps()
]
Expand Down
1 change: 0 additions & 1 deletion exercises/concept/boutique-inventory/.meta/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,5 @@
".meta/exemplar.ex"
]
},
"language_versions": ">=1.10",
"blurb": "Learn about the Enum module by preparing your fashion boutique for the big annual sale."
}
1 change: 0 additions & 1 deletion exercises/concept/boutique-inventory/mix.exs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ defmodule BoutiqueInventory.MixProject do
[
app: :boutique_inventory,
version: "0.1.0",
# elixir: "~> 1.10",
start_permanent: Mix.env() == :prod,
deps: deps()
]
Expand Down
1 change: 0 additions & 1 deletion exercises/concept/boutique-suggestions/.meta/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,5 @@
".meta/exemplar.ex"
]
},
"language_versions": ">=1.10",
"blurb": "Learn about list comprehensions by generating outfit suggestions for the clients of your fashion boutique."
}
1 change: 0 additions & 1 deletion exercises/concept/boutique-suggestions/mix.exs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ defmodule BoutiqueSuggestions.MixProject do
[
app: :boutique_suggestions,
version: "0.1.0",
# elixir: "~> 1.10",
start_permanent: Mix.env() == :prod,
deps: deps()
]
Expand Down
1 change: 0 additions & 1 deletion exercises/concept/bread-and-potions/.meta/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,5 @@
".meta/exemplar.ex"
]
},
"language_versions": ">=1.10",
"blurb": "Learn about protocols by developing your own role-playing video game."
}
1 change: 0 additions & 1 deletion exercises/concept/bread-and-potions/mix.exs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ defmodule RPG.MixProject do
[
app: :bread_and_potions,
version: "0.1.0",
# elixir: "~> 1.10",
start_permanent: Mix.env() == :prod,
deps: deps()
]
Expand Down
1 change: 0 additions & 1 deletion exercises/concept/captains-log/.meta/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,5 @@
".meta/exemplar.ex"
]
},
"language_versions": ">=1.10",
"blurb": "Learn about randomness and using Erlang libraries from Elixir by helping Mary generate stardates and starship registry numbers for her Star Trek themed pen-and-paper role playing sessions."
}
1 change: 0 additions & 1 deletion exercises/concept/captains-log/mix.exs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ defmodule CaptainsLog.MixProject do
[
app: :captains_log,
version: "0.1.0",
# elixir: "~> 1.10",
start_permanent: Mix.env() == :prod,
deps: deps()
]
Expand Down
1 change: 0 additions & 1 deletion exercises/concept/chessboard/.meta/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,5 @@
".meta/exemplar.ex"
]
},
"language_versions": ">=1.10",
"blurb": "Learn about ranges by generating a chessboard."
}
1 change: 0 additions & 1 deletion exercises/concept/chessboard/mix.exs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ defmodule Chessboard.MixProject do
[
app: :chessboard,
version: "0.1.0",
# elixir: "~> 1.10",
start_permanent: Mix.env() == :prod,
deps: deps()
]
Expand Down
1 change: 0 additions & 1 deletion exercises/concept/city-office/.meta/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,5 @@
".meta/exemplar.ex"
]
},
"language_versions": ">=1.10",
"blurb": "Learn about writing documentation and typespecs by getting your code ready for the arrival of a new colleague at the city office."
}
1 change: 0 additions & 1 deletion exercises/concept/city-office/mix.exs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ defmodule Form.MixProject do
[
app: :city_office,
version: "0.1.0",
# elixir: "~> 1.10",
start_permanent: Mix.env() == :prod,
deps: deps()
]
Expand Down
1 change: 0 additions & 1 deletion exercises/concept/community-garden/.meta/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,5 @@
".meta/exemplar.ex"
]
},
"language_versions": ">=1.10",
"blurb": "Learn about the Agent module by helping your local community handle community garden registrations."
}
1 change: 0 additions & 1 deletion exercises/concept/community-garden/mix.exs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ defmodule CommunityGarden.MixProject do
[
app: :community_garden,
version: "0.1.0",
# elixir: "~> 1.10",
start_permanent: Mix.env() == :prod,
deps: deps()
]
Expand Down
1 change: 0 additions & 1 deletion exercises/concept/dancing-dots/.meta/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,5 @@
"lib/dancing_dots/dot_group.ex"
]
},
"language_versions": ">=1.10",
"blurb": "Learn about behaviours by writing animations for dot-based generative art."
}
1 change: 0 additions & 1 deletion exercises/concept/dancing-dots/mix.exs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ defmodule DancingDots.MixProject do
[
app: :dancing_dots,
version: "0.1.0",
# elixir: "~> 1.10",
start_permanent: Mix.env() == :prod,
deps: deps()
]
Expand Down
1 change: 0 additions & 1 deletion exercises/concept/date-parser/.meta/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,5 @@
".meta/exemplar.ex"
]
},
"language_versions": ">=1.10",
"blurb": "Learn about regular expressions by parsing dates."
}
1 change: 0 additions & 1 deletion exercises/concept/date-parser/mix.exs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ defmodule DateParser.MixProject do
[
app: :date_parser,
version: "0.1.0",
# elixir: "~> 1.10",
start_permanent: Mix.env() == :prod,
deps: deps()
]
Expand Down
1 change: 0 additions & 1 deletion exercises/concept/dna-encoding/.meta/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,5 @@
".meta/exemplar.ex"
]
},
"language_versions": ">=1.10",
"blurb": "Learn about bitstrings and tail call recursion by encoding DNA sequences as binary data."
}
1 change: 0 additions & 1 deletion exercises/concept/dna-encoding/mix.exs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ defmodule DNA.MixProject do
[
app: :dna,
version: "0.1.0",
# elixir: "~> 1.10",
start_permanent: Mix.env() == :prod,
deps: deps()
]
Expand Down
1 change: 0 additions & 1 deletion exercises/concept/file-sniffer/.meta/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,5 @@
".meta/exemplar.ex"
]
},
"language_versions": ">=1.10",
"blurb": "Learn about binaries by verifying the mime type of files uploaded to your server."
}
1 change: 0 additions & 1 deletion exercises/concept/file-sniffer/mix.exs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ defmodule FileSniffer.MixProject do
[
app: :file_sniffer,
version: "0.1.0",
# elixir: "~> 1.10",
start_permanent: Mix.env() == :prod,
deps: deps()
]
Expand Down
1 change: 0 additions & 1 deletion exercises/concept/freelancer-rates/.meta/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@
".meta/exemplar.ex"
]
},
"language_versions": ">=1.10",
"forked_from": [
"javascript/freelancer-rates"
],
Expand Down
1 change: 0 additions & 1 deletion exercises/concept/freelancer-rates/mix.exs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ defmodule FreelancerRates.MixProject do
[
app: :freelancer_rates,
version: "0.1.0",
# elixir: "~> 1.10",
start_permanent: Mix.env() == :prod,
deps: deps()
]
Expand Down
1 change: 0 additions & 1 deletion exercises/concept/german-sysadmin/.meta/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,5 @@
".meta/exemplar.ex"
]
},
"language_versions": ">=1.10",
"blurb": "Learn about charlists and the case conditional expression by sanitizing usernames of employees in a German company."
}
1 change: 0 additions & 1 deletion exercises/concept/german-sysadmin/mix.exs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ defmodule Username.MixProject do
[
app: :german_sysadmin,
version: "0.1.0",
# elixir: "~> 1.10",
start_permanent: Mix.env() == :prod,
deps: deps()
]
Expand Down
1 change: 0 additions & 1 deletion exercises/concept/guessing-game/.meta/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@
".meta/exemplar.ex"
]
},
"language_versions": ">=1.10",
"forked_from": [
"fsharp/guessing-game"
],
Expand Down
1 change: 0 additions & 1 deletion exercises/concept/guessing-game/mix.exs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ defmodule GuessingGame.MixProject do
[
app: :guessing_game,
version: "0.1.0",
# elixir: "~> 1.10",
start_permanent: Mix.env() == :prod,
deps: deps()
]
Expand Down
1 change: 0 additions & 1 deletion exercises/concept/high-school-sweetheart/.meta/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@
".meta/exemplar.ex"
]
},
"language_versions": ">=1.10",
"icon": "high-school-sweethearts",
"blurb": "Learn about strings and the pipe operator by helping high school sweethearts profess their love on social media via ASCII art."
}
1 change: 0 additions & 1 deletion exercises/concept/high-school-sweetheart/mix.exs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ defmodule HighSchoolSweetheart.MixProject do
[
app: :high_school_sweetheart,
version: "0.1.0",
# elixir: "~> 1.10",
start_permanent: Mix.env() == :prod,
deps: deps()
]
Expand Down
1 change: 0 additions & 1 deletion exercises/concept/high-score/.meta/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@
".meta/exemplar.ex"
]
},
"language_versions": ">=1.10",
"icon": "high-scores",
"blurb": "Learn about maps by keeping track of the high scores in your local arcade hall."
}
1 change: 0 additions & 1 deletion exercises/concept/high-score/mix.exs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ defmodule HighScore.MixProject do
[
app: :high_score,
version: "0.1.0",
# elixir: "~> 1.10",
start_permanent: Mix.env() == :prod,
deps: deps()
]
Expand Down
1 change: 0 additions & 1 deletion exercises/concept/kitchen-calculator/.meta/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,5 @@
".meta/exemplar.ex"
]
},
"language_versions": ">=1.10",
"blurb": "Learn about tuples and pattern matching by converting common US baking measurements to the metric system."
}
1 change: 0 additions & 1 deletion exercises/concept/kitchen-calculator/mix.exs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ defmodule KitchenCalculator.MixProject do
[
app: :kitchen_calculator,
version: "0.1.0",
# elixir: "~> 1.10",
start_permanent: Mix.env() == :prod,
deps: deps()
]
Expand Down
1 change: 0 additions & 1 deletion exercises/concept/language-list/.meta/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@
".meta/exemplar.ex"
]
},
"language_versions": ">=1.10",
"forked_from": [
"clojure/tracks-on-tracks-on-tracks"
],
Expand Down
1 change: 0 additions & 1 deletion exercises/concept/language-list/mix.exs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ defmodule LanguageList.MixProject do
[
app: :language_list,
version: "0.1.0",
# elixir: "~> 1.10",
start_permanent: Mix.env() == :prod,
deps: deps()
]
Expand Down
1 change: 0 additions & 1 deletion exercises/concept/lasagna/.meta/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@
".meta/exemplar.ex"
]
},
"language_versions": ">=1.10",
"forked_from": [
"csharp/lucians-luscious-lasagna"
],
Expand Down
Loading

0 comments on commit 1722dcd

Please sign in to comment.