.PHONY: check clean docs

README_READERS += lib/open_telemetry/honeycomb.ex
README_READERS += lib/open_telemetry/honeycomb/attributes.ex
README_READERS += lib/open_telemetry/honeycomb/config.ex
ELIXIR_SOURCE := $(shell find lib -type f -name \*.ex)

check: deps $(ELIXIR_SOURCE)
	mix format --check-formatted --dry-run --check-equivalent
	mix compile --warnings-as-errors
	mix coveralls.html
	mix credo --strict
	mix dialyzer
	@echo "OK"

mix.lock: mix.exs
	mix deps.get
	mix deps.unlock --unused
	mix deps.clean --unused
	touch $@

deps: mix.lock
	mix deps.get
	touch $@

doc/index.html: $(ELIXIR_SOURCE)
	mix docs

docs: doc/index.html

$(README_READERS): README.md
	touch $@

clean:
	rm -rf _build/test/lib _build/dev/lib _build/prod/lib cover deps doc
