Skip to content

Commit 0e8ef0e

Browse files
committed
fix: update rebar.config for new plugin format
- Bump nova dep to 0.13.7 (matches 4-arity plugin API) - Add xref_ignores for init/0, pre_request/4, post_request/4 - Apply erlfmt formatting
1 parent b096ca5 commit 0e8ef0e

File tree

3 files changed

+34
-23
lines changed

3 files changed

+34
-23
lines changed

rebar.config

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,14 @@
11
{erl_opts, [debug_info]}.
22
{deps, [
3-
{nova, "0.12.1"},
3+
{nova, "0.13.7"},
44
{jesse, "1.8.1"}
55
]}.
66

77
{xref_ignores, [
8-
{nova_json_schemas, load_local_schemas, 0}
8+
{nova_json_schemas, init, 0},
9+
{nova_json_schemas, load_local_schemas, 0},
10+
{nova_json_schemas, pre_request, 4},
11+
{nova_json_schemas, post_request, 4}
912
]}.
1013

1114
{dialyzer, [

rebar.lock

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@
33
{<<"cowlib">>,{pkg,<<"cowlib">>,<<"2.16.0">>},2},
44
{<<"erlydtl">>,{pkg,<<"erlydtl">>,<<"0.14.0">>},1},
55
{<<"jesse">>,{pkg,<<"jesse">>,<<"1.8.1">>},0},
6-
{<<"jhn_stdlib">>,{pkg,<<"jhn_stdlib">>,<<"5.3.3">>},1},
7-
{<<"nova">>,{pkg,<<"nova">>,<<"0.12.1">>},0},
6+
{<<"jhn_stdlib">>,{pkg,<<"jhn_stdlib">>,<<"5.4.0">>},1},
7+
{<<"nova">>,{pkg,<<"nova">>,<<"0.13.7">>},0},
88
{<<"ranch">>,{pkg,<<"ranch">>,<<"2.2.0">>},2},
99
{<<"routing_tree">>,{pkg,<<"routing_tree">>,<<"1.0.11">>},1},
1010
{<<"thoas">>,{pkg,<<"thoas">>,<<"1.2.1">>},1}]}.
@@ -14,8 +14,8 @@
1414
{<<"cowlib">>, <<"54592074EBBBB92EE4746C8A8846E5605052F29309D3A873468D76CDF932076F">>},
1515
{<<"erlydtl">>, <<"964B2DC84F8C17ACFAA69C59BA129EF26AC45D2BA898C3C6AD9B5BDC8BA13CED">>},
1616
{<<"jesse">>, <<"C9E3670C7EE40F719734E3BC716578143AABA93FC7525A02A7D5CB300B3AD71E">>},
17-
{<<"jhn_stdlib">>, <<"3E50C560334A85EE5B6C645D2E1BCD35E7BE667E5FCB62AA364F00737C2ADC61">>},
18-
{<<"nova">>, <<"78B60221F632C5C7D1B0EEEABCB7370764304C32C757C0343513DA4108326BD3">>},
17+
{<<"jhn_stdlib">>, <<"FAC6F19B35351278F1CB156E23A5B2A6047A9DD5AB1FD9E1189A7918006DF7ED">>},
18+
{<<"nova">>, <<"C37A2161EA1EE643635739282D1DF9880D20D9521B6AD3ABE6A71C6A6867C842">>},
1919
{<<"ranch">>, <<"25528F82BC8D7C6152C57666CA99EC716510FE0925CB188172F41CE93117B1B0">>},
2020
{<<"routing_tree">>, <<"72ACEF2095F0EC804F7AFD07EF781DDE5009425A1CA0A28F0706B1DB334A4812">>},
2121
{<<"thoas">>, <<"19A25F31177A17E74004D4840F66D791D4298C5738790FA2CC73731EB911F195">>}]},
@@ -24,8 +24,8 @@
2424
{<<"cowlib">>, <<"7F478D80D66B747344F0EA7708C187645CFCC08B11AA424632F78E25BF05DB51">>},
2525
{<<"erlydtl">>, <<"D80EC044CD8F58809C19D29AC5605BE09E955040911B644505E31E9DD8143431">>},
2626
{<<"jesse">>, <<"0EDED3F18623FDA2F25989804A06CF518B4ACF2E9365B18C8E8C013D7E3C906F">>},
27-
{<<"jhn_stdlib">>, <<"2CB184C505397B62A842AB3DE13F21B83ADF62364BD35A572191629E30E0258E">>},
28-
{<<"nova">>, <<"C43DC05F0B0F31FD3CF3B0415F2772BFD9FFD75DFEBFFE0B806DE85B6581F4C7">>},
27+
{<<"jhn_stdlib">>, <<"7EABD1B01D2DEFF495BF7C5CA1DBA4D3FA0B84DC3AF03CA85F31D52EBB03C6FC">>},
28+
{<<"nova">>, <<"22F4C3FFDC08DB8568F3DA198647823D63123520F69C7D718A8DB468F4C7A1EA">>},
2929
{<<"ranch">>, <<"FA0B99A1780C80218A4197A59EA8D3BDAE32FBFF7E88527D7D8A4787EFF4F8E7">>},
3030
{<<"routing_tree">>, <<"85982C7AC502892C5179CD2A591331003BACD2D2A71723640BA7D23F45408E6E">>},
3131
{<<"thoas">>, <<"E38697EDFFD6E91BD12CEA41B155115282630075C2A727E7A6B2947F5408B86A">>}]}

src/nova_json_schemas.erl

Lines changed: 23 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,10 @@ load_local_schemas() ->
4545
| {stop, Req0 :: cowboy_req:req(), NewState :: any()}
4646
| {error, Reason :: term()}.
4747
pre_request(
48-
Req = #{extra_state := #{json_schema := SchemaLocation} = Extra, json := JSON}, _Env, Options, State
48+
Req = #{extra_state := #{json_schema := SchemaLocation} = Extra, json := JSON},
49+
_Env,
50+
Options,
51+
State
4952
) ->
5053
JesseOpts = maps:get(jesse_options, Extra, []),
5154
case validate_json(SchemaLocation, JSON, JesseOpts) of
@@ -96,21 +99,26 @@ post_request(Req, _Env, _Options, State) ->
9699
%% nova_plugin callback. Returns information about the plugin.
97100
%% @end
98101
%%--------------------------------------------------------------------
99-
-spec plugin_info() -> #{title := binary(),
100-
version := binary(),
101-
url := binary(),
102-
authors := [binary()],
103-
description := binary(),
104-
options := [{Key :: atom(), OptionDescription :: binary()}]}.
102+
-spec plugin_info() ->
103+
#{
104+
title := binary(),
105+
version := binary(),
106+
url := binary(),
107+
authors := [binary()],
108+
description := binary(),
109+
options := [{Key :: atom(), OptionDescription :: binary()}]
110+
}.
105111
plugin_info() ->
106-
#{title => <<"Nova JSON Schema plugin">>,
107-
version => <<"0.2.0">>,
108-
url => <<"https://github.com/novaframework/nova_json_schemas">>,
109-
authors => [<<"Niclas Axelsson <niclas@burbas.se>">>],
110-
description => <<"Validates JSON request bodies against JSON schemas using jesse">>,
111-
options => [
112-
{render_errors, <<"If true, validation errors are returned as JSON to the requester">>}
113-
]}.
112+
#{
113+
title => <<"Nova JSON Schema plugin">>,
114+
version => <<"0.2.0">>,
115+
url => <<"https://github.com/novaframework/nova_json_schemas">>,
116+
authors => [<<"Niclas Axelsson <niclas@burbas.se>">>],
117+
description => <<"Validates JSON request bodies against JSON schemas using jesse">>,
118+
options => [
119+
{render_errors, <<"If true, validation errors are returned as JSON to the requester">>}
120+
]
121+
}.
114122

115123
validate_json(SchemaLocation, Json, JesseOpts) ->
116124
case jesse:validate(SchemaLocation, Json, JesseOpts) of

0 commit comments

Comments
 (0)