Changelog

5.0.2

5.0.1

5.0.0

Overview

This version adds support for running solutions against multiple example inputs in both iex and in test modules. Since this requires changing the naming scheme of example files, users who wrote tests that rely on example input must run mix aoc.get to fetch the examples for each day that uses example input in tests.

Detailed Changelog

4.0.1

4.0.0

Overview

Dropping support for helper functions in solution modules

This update makes the "puzzle input" method introduced in 3.0.0 the only way to write solution modules. The old, "helper function" method is no longer supported.

The helper function method worked as follows:

aoc year, day do
def p1, do: input_string() |> # Solve puzzle
end

The puzzle input method works as follows:

aoc year, day do
def p1(input), do: input |> # solve puzzle
end

Input is provided through the use of the helpers in AOC.IEx.

The input method is preferred as it makes it easier to test your solution using different inputs without the need to modify any code. It also makes it significantly easier to write tests for your solution module.

Users who wish to keep using the helper method are advised to stick to version 3 of Advent of Code Utils.

aoc_test/4

This update adds optional support for generating unit test modules for your solution modules. You can now write:

aoc_test year, day do
end

Which will create an ExUnit.Case which tests your solution module. The generated case will automatically call the doctests of your solution module.

mix aoc.gen can now also generate this test code and add doctests to your solution module.

Detailed Changelog

3.1.3

3.1.2

3.1.1

3.1.0

3.0.0

2.0.2

2.0.1

2.0.0

1.1.0

1.0.1

1.0.0