From 2fce05d48e58f6218b7d80fd6036764605adff03 Mon Sep 17 00:00:00 2001 From: Marc Worrell Date: Fri, 20 Sep 2024 11:41:02 +0200 Subject: [PATCH 1/5] Hex docs --- rebar.config | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/rebar.config b/rebar.config index e6fc60c..f4efbd7 100644 --- a/rebar.config +++ b/rebar.config @@ -4,7 +4,7 @@ {erl_opts, [ ]}. -{edoc_opts, [{preprocess, true}]}. +{project_plugins, [rebar3_ex_doc]}. {deps, []}. @@ -24,6 +24,16 @@ ]} ]} ]}. + {edoc_opts, [ - {preprocess, true}, {stylesheet, "style.css"} + {preprocess, true}, + {stylesheet, "style.css"} +]}. + +{hex, [{doc, ex_doc}]}. + +{ex_doc, [ + {source_url, <<"https://github.com/mworrell/filezcache">>}, + {extras, [ <<"README.md">>, <<"LICENSE">> ]}, + {main, <<"readme">>} ]}. From 8a08fd227ac05dc2ca4f3a0c6de0139518e5a425 Mon Sep 17 00:00:00 2001 From: Marc Worrell Date: Fri, 20 Sep 2024 11:45:23 +0200 Subject: [PATCH 2/5] Update readme --- README.md | 2 +- doc/img/logo.png | Bin 9843 -> 0 bytes doc/overview.edoc | 11 ------- doc/style.css | 71 ---------------------------------------------- 4 files changed, 1 insertion(+), 83 deletions(-) delete mode 100644 doc/img/logo.png delete mode 100644 doc/overview.edoc delete mode 100644 doc/style.css diff --git a/README.md b/README.md index 94c6662..852d288 100644 --- a/README.md +++ b/README.md @@ -70,5 +70,5 @@ There are some known issues that need to be resolved: [hexdocs]: https://hexdocs.pm/filezcache [gh]: https://github.com/mworrell/filezcache/actions/workflows/test.yaml [gh badge]: https://img.shields.io/github/workflow/status/mworrell/filezcache/Test?style=flat-curcle -[erlang version badge]: https://img.shields.io/badge/Supported%20Erlang%2FOTP-22.3%20to%2024.0.1-blue.svg?style=flat-curcle +[erlang version badge]: https://img.shields.io/badge/Supported%20Erlang%2FOTP-22.3%20to%2026-blue.svg?style=flat-curcle [license]: https://img.shields.io/badge/License-Apache_2.0-blue.svg?logo=apache&logoColor=red "Apache 2.0" diff --git a/doc/img/logo.png b/doc/img/logo.png deleted file mode 100644 index 94ea9de05137b897f08fbc6d773ccaeeb0ae042b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9843 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 TY{%yjg-H9T-tXy0tgrnqF_4I{ diff --git a/doc/overview.edoc b/doc/overview.edoc deleted file mode 100644 index d9387b2..0000000 --- a/doc/overview.edoc +++ /dev/null @@ -1,11 +0,0 @@ -@author Marc Worrell - [https://whatwebwhat.com/] -@author Zotonic Team - [http://zotonic.com] -@title filezcache -@doc File cache for use with webzmachine -This is a file caching system optimized for use with cowmachine -but then also be used with other services. - -@copyright Apache-2.0 -@since 2013 \ No newline at end of file diff --git a/doc/style.css b/doc/style.css deleted file mode 100644 index cfdb6ba..0000000 --- a/doc/style.css +++ /dev/null @@ -1,71 +0,0 @@ -/* standard EDoc style sheet */ -body { - font-family: Verdana, Arial, Helvetica, sans-serif; - margin-left: .25in; - margin-right: .2in; - margin-top: 0.2in; - margin-bottom: 0.2in; - color: #000000; - background-color: #ffffff; -} -h1,h2 { - margin-left: -0.2in; -} -div.navbar { - background-color: #add8e6; - padding: 0.2em; -} -h2.indextitle { - padding: 0.4em; - background-color: #add8e6; -} -h3.function,h3.typedecl { - background-color: #add8e6; - padding-left: 1em; -} -div.spec { - margin-left: 2em; - - background-color: #eeeeee; -} -a.module { - text-decoration:none -} -a.module:hover { - background-color: #eeeeee; -} -ul.definitions { - list-style-type: none; -} -ul.index { - list-style-type: none; - background-color: #eeeeee; -} - -/* - * Minor style tweaks - */ -ul { - list-style-type: square; -} -table { - border-collapse: collapse; -} -td { - padding: 3px; - vertical-align: middle; -} - -/* -Tune styles -*/ - -table[summary="navigation bar"] { - background-image: url('http://zotonic.com/lib/images/logo.png'); - background-repeat: no-repeat; - background-position: center; -} - -code, p>tt, a>tt { - font-size: 1.2em; -} From 8846c60e2a2663b4377b0e1ded555a5acb3bbead Mon Sep 17 00:00:00 2001 From: Marc Worrell Date: Fri, 20 Sep 2024 11:50:10 +0200 Subject: [PATCH 3/5] Add a sleep to test to fix timing issue --- test/filezcache_SUITE.erl | 1 + 1 file changed, 1 insertion(+) diff --git a/test/filezcache_SUITE.erl b/test/filezcache_SUITE.erl index 4369711..6963dbd 100644 --- a/test/filezcache_SUITE.erl +++ b/test/filezcache_SUITE.erl @@ -106,6 +106,7 @@ cache_stream_test(_Config) -> {error, eof} = file:read(IO, 1), true = erlang:is_process_alive(IO), ok = file:close(IO), + timer:sleep(100), false = erlang:is_process_alive(IO), false = erlang:is_process_alive(WriterPid), % Now the entry should be available as a file From f08d8332865fde815ab774663da61cd699aba73e Mon Sep 17 00:00:00 2001 From: Marc Worrell Date: Fri, 20 Sep 2024 11:58:18 +0200 Subject: [PATCH 4/5] Also add the MIT license of the LRU code --- rebar.config | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rebar.config b/rebar.config index f4efbd7..397b72e 100644 --- a/rebar.config +++ b/rebar.config @@ -34,6 +34,6 @@ {ex_doc, [ {source_url, <<"https://github.com/mworrell/filezcache">>}, - {extras, [ <<"README.md">>, <<"LICENSE">> ]}, + {extras, [ <<"README.md">>, <<"LICENSE">>, <<"LICENSE-MIT">> ]}, {main, <<"readme">>} ]}. From e079a5124a09300cc6c2b7bcae33ff684a050ce1 Mon Sep 17 00:00:00 2001 From: Marc Worrell Date: Fri, 20 Sep 2024 12:01:36 +0200 Subject: [PATCH 5/5] Add doc make target --- .github/workflows/test.yml | 2 ++ GNUmakefile | 13 ++++++++----- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 2028ccb..f035278 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -32,5 +32,7 @@ jobs: run: make test - name: XRef run: make xref + - name: Docs + run: make doc - name: Dialyzer run: make dialyzer diff --git a/GNUmakefile b/GNUmakefile index 2e10e72..7a2ba10 100644 --- a/GNUmakefile +++ b/GNUmakefile @@ -7,8 +7,10 @@ APP := zotonic REBAR := ./rebar3 REBAR_URL := https://s3.amazonaws.com/rebar3/rebar3 REBAR_OPTS ?= + +.PHONY: all doc test shell dialyzer compile upgrade-deps xref edoc edoc_private + # Default target - update sources and call all compile rules in succession -.PHONY: all all: compile $(REBAR): @@ -18,7 +20,6 @@ $(REBAR): chmod +x $(REBAR) # Use Rebar to get, update and compile dependencies -.PHONY: upgrade-deps compile compile shell dialyzer xref test edoc upgrade-deps: $(REBAR) $(REBAR) $(REBAR_OPTS) upgrade @@ -38,6 +39,9 @@ xref: $(REBAR) test: $(REBAR) $(REBAR) $(REBAR_OPTS) ct +doc: $(REBAR) + $(REBAR) ex_doc + edoc: $(REBAR) $(REBAR) edoc @@ -45,13 +49,13 @@ edoc_private: $(REBAR) $(REBAR) as doc_private edoc # Cleaning -.PHONY: clean_logs +.PHONY: clean_logs clean clean_doc dist-clean + clean_logs: @echo "deleting logs:" rm -f erl_crash.dump rm -rf priv/log/* -.PHONY: clean clean: clean_logs $(REBAR) @echo "cleaning ebin:" $(REBAR) $(REBAR_OPTS) clean @@ -62,7 +66,6 @@ clean_doc: @rm -f doc/erlang.png @rm -f doc/edoc-info -.PHONY: dist-clean dist-clean: clean $(REBAR) $(REBAR_OPTS) clean -a rm -rf _build doc deps