This year, after much debate I will be using golang for the annual advent of code competition.
While this is a repeat of 2020, golang and it's ecosystem seems to have moved on quite a bit since then.
Of the features I know about, generics is the one that I expect will be the most useful.
While I have in previous years created test cases, this year I've been challenged to stick to a more tdd-focused approach (rather than simply test to execute).
# create go.mod file
go mod init github.com/miketzian/adventofcode2023
# add testify dependency
go get github.com/stretchr/testify
# add cobra dependency for cli
go get -u github.com/spf13/cobra@latest
- In vscode - Add Dev Container Configuration Files
- Choose 'Go' option
- No options selected
- In actions, choose [https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-go](go action)
- In test workflow step, add coverage option (by default no coverage report)
- Login to codecov*, get the secret, create the repository secret
- Add the codecov workflow action
*note! codecov.io wants to know our email address. They're not allowed to know this, so I had to create another dummy github account with an email address they're allowed to know.