Build log
host
juspay_expresscheckout 0.1.0 · fail · run juspay_expresscheckout-0.1.0-1790965298173
671 of 671 lines
1Resolving Hex dependencies...2Resolution completed in 0.325s3Unchanged:4 certifi 1.0.05 circular_buffer 1.1.06 elixir_make 0.10.07 hackney 1.6.6 RETIRED! VULNERABLE!8 (invalid)910 EEF-CVE-2026-47075 (MEDIUM)11 aka: CVE-2026-47075, GHSA-j9wq-vxxc-94wf12 CR/LF injection in query parameter in hackney13 https://osv.dev/vulnerability/EEF-CVE-2026-470751415 GHSA-vq52-99r9-h5pw (LOW)16 aka: CVE-2025-121117 Server-side Request Forgery (SSRF) in hackney18 https://osv.dev/vulnerability/GHSA-vq52-99r9-h5pw1920 EEF-CVE-2026-47071 (HIGH)21 aka: CVE-2026-47071, GHSA-gp9c-pm5m-5cxr22 SOCKS5 TLS upgrade ignores caller timeout in hackney23 https://osv.dev/vulnerability/EEF-CVE-2026-470712425 GHSA-9fm9-hp7p-53mf (LOW)26 aka: CVE-2025-386427 Hackney fails to properly release HTTP connections to the pool28 https://osv.dev/vulnerability/GHSA-9fm9-hp7p-53mf2930 EEF-CVE-2026-47069 (LOW)31 aka: CVE-2026-47069, GHSA-mp55-p8c9-rfw232 CRLF injection in cookie domain/path options in hackney33 https://osv.dev/vulnerability/EEF-CVE-2026-470693435 EEF-CVE-2026-47076 (MEDIUM)36 aka: CVE-2026-47076, GHSA-pj7v-xfvx-wmjq37 SSRF allowlist bypass via percent-encoded host in hackney38 https://osv.dev/vulnerability/EEF-CVE-2026-4707639 httpoison 0.9.240 idna 4.0.041 interactive_cmd 0.1.442 juspay_expresscheckout 0.1.043 metrics 1.0.144 mimerl 1.0.245 nerves 2.0.0-pre.246 nerves_discovery 0.1.547 nerves_logging 0.2.448 nerves_runtime 0.13.1349 nerves_system_bbb 2.30.250 nerves_system_br 1.34.451 nerves_system_mangopi_mq_pro 0.17.252 nerves_system_qemu_aarch64 0.4.253 nerves_system_rpi0 2.1.254 nerves_system_rpi4 2.1.255 nerves_system_rpi5 2.1.256 nerves_system_trellis 0.5.057 nerves_system_x86_64 1.34.258 nerves_toolchain_aarch64_nerves_linux_gnu 15.3.159 nerves_toolchain_armv6_nerves_linux_gnueabihf 15.3.160 nerves_toolchain_armv7_nerves_linux_gnueabihf 15.3.161 nerves_toolchain_riscv64_nerves_linux_gnu 15.3.162 nerves_toolchain_x86_64_nerves_linux_musl 15.3.163 nerves_uevent 0.1.764 poison 2.2.065 property_table 0.3.466 ring_logger 0.11.767 ssl_verify_fun 1.1.168 tablet 0.3.369 toolshed 0.5.070 uboot_env 1.0.271Found retired packages, see above for details72Found packages with security advisories, see above for details73All dependencies have been fetched74 warning: String.strip/1 is deprecated. Use String.trim/1 instead75 │76 4 │ @version File.read!("VERSION") |> String.strip77 │ ~78 │79 └─ /work/proj/deps/poison/mix.exs:4:44: Poison.Mixfile (module)8081==> poison82Compiling 4 files (.ex)83 warning: using single-quoted strings to represent charlists is deprecated.84 Use ~c"" if you indeed want a charlist or use "" instead.85 You may run "mix format --migrate" to change all single-quoted86 strings to use the ~c sigil and fix this warning.87 │88 89 │ for {char, seq} <- Enum.zip('"\\\n\t\r\f\b', '"\\ntrfb') do89 │ ~90 │91 └─ lib/poison/encoder.ex:89:319293 warning: using single-quoted strings to represent charlists is deprecated.94 Use ~c"" if you indeed want a charlist or use "" instead.95 You may run "mix format --migrate" to change all single-quoted96 strings to use the ~c sigil and fix this warning.97 │98 89 │ for {char, seq} <- Enum.zip('"\\\n\t\r\f\b', '"\\ntrfb') do99 │ ~100 │101 └─ lib/poison/encoder.ex:89:48102103 warning: using single-quoted strings to represent charlists is deprecated.104 Use ~c"" if you indeed want a charlist or use "" instead.105 You may run "mix format --migrate" to change all single-quoted106 strings to use the ~c sigil and fix this warning.107 │108 127 │ defp chunk_size(<<char>> <> _, _mode, acc) when char <= 0x1F or char in '"\\' do109 │ ~110 │111 └─ lib/poison/encoder.ex:127:75112113 warning: using single-quoted strings to represent charlists is deprecated.114 Use ~c"" if you indeed want a charlist or use "" instead.115 You may run "mix format --migrate" to change all single-quoted116 strings to use the ~c sigil and fix this warning.117 │118 67 │ defp value(<<char, _ :: binary>> = string, _keys) when char in '-0123456789' do119 │ ~120 │121 └─ lib/poison/parser.ex:67:66122123 warning: using single-quoted strings to represent charlists is deprecated.124 Use ~c"" if you indeed want a charlist or use "" instead.125 You may run "mix format --migrate" to change all single-quoted126 strings to use the ~c sigil and fix this warning.127 │128 134 │ defp number_int(<<char, _ :: binary>> = string, acc) when char in '123456789' do129 │ ~130 │131 └─ lib/poison/parser.ex:134:69132133 warning: using single-quoted strings to represent charlists is deprecated.134 Use ~c"" if you indeed want a charlist or use "" instead.135 You may run "mix format --migrate" to change all single-quoted136 strings to use the ~c sigil and fix this warning.137 │138 150 │ defp number_exp(<<e>> <> rest, frac, acc) when e in 'eE' do139 │ ~140 │141 └─ lib/poison/parser.ex:150:55142143 warning: using single-quoted strings to represent charlists is deprecated.144 Use ~c"" if you indeed want a charlist or use "" instead.145 You may run "mix format --migrate" to change all single-quoted146 strings to use the ~c sigil and fix this warning.147 │148 176 │ defp number_digits(<<char>> <> rest = string) when char in '0123456789' do149 │ ~150 │151 └─ lib/poison/parser.ex:176:62152153 warning: using single-quoted strings to represent charlists is deprecated.154 Use ~c"" if you indeed want a charlist or use "" instead.155 You may run "mix format --migrate" to change all single-quoted156 strings to use the ~c sigil and fix this warning.157 │158 184 │ defp number_digits_count(<<char>> <> rest, acc) when char in '0123456789' do159 │ ~160 │161 └─ lib/poison/parser.ex:184:64162163 warning: using single-quoted strings to represent charlists is deprecated.164 Use ~c"" if you indeed want a charlist or use "" instead.165 You may run "mix format --migrate" to change all single-quoted166 strings to use the ~c sigil and fix this warning.167 │168 208 │ for {seq, char} <- Enum.zip('"\\ntr/fb', '"\\\n\t\r/\f\b') do169 │ ~170 │171 └─ lib/poison/parser.ex:208:31172173 warning: using single-quoted strings to represent charlists is deprecated.174 Use ~c"" if you indeed want a charlist or use "" instead.175 You may run "mix format --migrate" to change all single-quoted176 strings to use the ~c sigil and fix this warning.177 │178 208 │ for {seq, char} <- Enum.zip('"\\ntr/fb', '"\\\n\t\r/\f\b') do179 │ ~180 │181 └─ lib/poison/parser.ex:208:44182183 warning: using single-quoted strings to represent charlists is deprecated.184 Use ~c"" if you indeed want a charlist or use "" instead.185 You may run "mix format --migrate" to change all single-quoted186 strings to use the ~c sigil and fix this warning.187 │188 218 │ when a1 in 'dD' and a2 in 'dD'189 │ ~190 │191 └─ lib/poison/parser.ex:218:16192193 warning: using single-quoted strings to represent charlists is deprecated.194 Use ~c"" if you indeed want a charlist or use "" instead.195 You may run "mix format --migrate" to change all single-quoted196 strings to use the ~c sigil and fix this warning.197 │198 218 │ when a1 in 'dD' and a2 in 'dD'199 │ ~200 │201 └─ lib/poison/parser.ex:218:31202203 warning: using single-quoted strings to represent charlists is deprecated.204 Use ~c"" if you indeed want a charlist or use "" instead.205 You may run "mix format --migrate" to change all single-quoted206 strings to use the ~c sigil and fix this warning.207 │208 219 │ and (b1 in '89abAB')209 │ ~210 │211 └─ lib/poison/parser.ex:219:16212213 warning: using single-quoted strings to represent charlists is deprecated.214 Use ~c"" if you indeed want a charlist or use "" instead.215 You may run "mix format --migrate" to change all single-quoted216 strings to use the ~c sigil and fix this warning.217 │218 253 │ defp skip_whitespace(<<char>> <> rest) when char in '\s\n\t\r' do219 │ ~220 │221 └─ lib/poison/parser.ex:253:55222223 warning: Application.get_env/2 is discouraged in the module body, use Application.compile_env/3 instead224 │225 22 │ if Application.get_env(:poison, :native) do226 │ ~227 │228 └─ lib/poison/parser.ex:22:18: Poison.Parser (module)229230 warning: use Bitwise is deprecated. import Bitwise instead231 │232 26 │ use Bitwise233 │ ~~~~~~~~~~~234 │235 └─ lib/poison/parser.ex:26: Poison.Parser (module)236237 warning: the variable "count" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator238 │239 178 │ <<digits :: binary-size(count), rest :: binary>> = string240 │ ~241 │242 └─ lib/poison/parser.ex:178:29: Poison.Parser.number_digits/1243244 warning: the variable "n" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator245 │246 204 │ <<chunk :: binary-size(n), rest :: binary>> = string247 │ ~248 │249 └─ lib/poison/parser.ex:204:28: Poison.Parser.string_continue/2250251 warning: use Bitwise is deprecated. import Bitwise instead252 │253 79 │ use Bitwise254 │ ~~~~~~~~~~~255 │256 └─ lib/poison/encoder.ex:79: Poison.Encoder.BitString (module)257258 warning: the variable "size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator259 │260 123 │ <<chunk :: binary-size(size), rest :: binary>> = string261 │ ~262 │263 └─ lib/poison/encoder.ex:123:28: Poison.Encoder.BitString.escape/2264265 warning: Integer.to_char_list/2 is deprecated. Use Integer.to_charlist/2 instead266 │267 161 │ case Integer.to_char_list(char, 16) do268 │ ~269 │270 └─ lib/poison/encoder.ex:161:18: Poison.Encoder.BitString.seq/1271272 warning: HashDict.size/1 is deprecated. Use maps and the Map module instead273 │274 283 │ if HashDict.size(dict) < 1 do275 │ ~276 │277 └─ lib/poison/encoder.ex:283:17: Poison.Encoder.HashDict.encode/2278279Generated poison app280==> nerves_compatibility_test281===> Analyzing applications...282===> Compiling certifi283===> Analyzing applications...284===> Compiling hackney285 ┌─ src/hackney_ssl.erl:286 │287 65 │ case lists:keymember(ecdh_rsa, 1, ssl:cipher_suites()) of288 │ ╰── Warning: ssl:cipher_suites/0 is removed; use ssl:cipher_suites/2,3 instead289290291 ┌─ src/hackney_pool.erl:292 │293 90 │ catch Transport:close(Socket),294 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.295Compile directive 'nowarn_deprecated_catch' can be used to suppress296warnings in selected modules.297298 ┌─ src/hackney_pool.erl:299 │300 94 │ catch Transport:close(Socket),301 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.302Compile directive 'nowarn_deprecated_catch' can be used to suppress303warnings in selected modules.304305 ┌─ src/hackney_pool.erl:306 │307 285 │ catch Transport:close(Socket),308 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.309Compile directive 'nowarn_deprecated_catch' can be used to suppress310warnings in selected modules.311312 ┌─ src/hackney_pool.erl:313 │314 381 │ catch Transport:controlling_process(S, self()),315 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.316Compile directive 'nowarn_deprecated_catch' can be used to suppress317warnings in selected modules.318319 ┌─ src/hackney_pool.erl:320 │321 403 │ catch Transport:close(Socket),322 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.323Compile directive 'nowarn_deprecated_catch' can be used to suppress324warnings in selected modules.325326 ┌─ src/hackney_pool.erl:327 │328 493 │ catch Transport:close(Socket),329 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.330Compile directive 'nowarn_deprecated_catch' can be used to suppress331warnings in selected modules.332333334 ┌─ src/hackney_stream.erl:335 │336 35 │ erlang:get_stacktrace()},337 │ ╰── Warning: erlang:get_stacktrace/0 is removed; use the new try/catch syntax for retrieving the stack backtrace338339340 ┌─ src/hackney_manager.erl:341 │342 122 │ catch Transport:controlling_process(Socket, self()),343 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.344Compile directive 'nowarn_deprecated_catch' can be used to suppress345warnings in selected modules.346347 ┌─ src/hackney_manager.erl:348 │349 123 │ catch Transport:close(Socket),350 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.351Compile directive 'nowarn_deprecated_catch' can be used to suppress352warnings in selected modules.353354 ┌─ src/hackney_manager.erl:355 │356 255 │ catch Transport:controlling_process(Socket, self()),357 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.358Compile directive 'nowarn_deprecated_catch' can be used to suppress359warnings in selected modules.360361 ┌─ src/hackney_manager.erl:362 │363 256 │ catch Transport:close(Socket),364 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.365Compile directive 'nowarn_deprecated_catch' can be used to suppress366warnings in selected modules.367368 ┌─ src/hackney_manager.erl:369 │370 456 │ case catch hackney_stream:start_link(StreamTo2, Ref, Client) of371 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.372Compile directive 'nowarn_deprecated_catch' can be used to suppress373warnings in selected modules.374375376 ┌─ src/hackney_trace.erl:377 │378 130 │ (catch io:format(standard_io, "stop trace at ~s~n", [format_timestamp(Timestamp)])),379 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.380Compile directive 'nowarn_deprecated_catch' can be used to suppress381warnings in selected modules.382383 ┌─ src/hackney_trace.erl:384 │385 137 │ (catch io:format(Fd, "stop trace at ~s~n", [format_timestamp(Timestamp)])),386 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.387Compile directive 'nowarn_deprecated_catch' can be used to suppress388warnings in selected modules.389390 ┌─ src/hackney_trace.erl:391 │392 144 │ (catch io:format(Fd, "stop trace at ~s~n", [format_timestamp(Timestamp)])),393 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.394Compile directive 'nowarn_deprecated_catch' can be used to suppress395warnings in selected modules.396397 ┌─ src/hackney_trace.erl:398 │399 145 │ (catch file:close(Fd)),400 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.401Compile directive 'nowarn_deprecated_catch' can be used to suppress402warnings in selected modules.403404 ┌─ src/hackney_trace.erl:405 │406 152 │ (catch io:format(Fd, "stop trace at ~s~n", [format_timestamp(Timestamp)])),407 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.408Compile directive 'nowarn_deprecated_catch' can be used to suppress409warnings in selected modules.410411 ┌─ src/hackney_trace.erl:412 │413 153 │ (catch file:close(Fd)),414 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.415Compile directive 'nowarn_deprecated_catch' can be used to suppress416warnings in selected modules.417418 ┌─ src/hackney_trace.erl:419 │420 159 │ (catch print_hackney_trace(Fd, Sev, Timestamp, Who,421 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.422Compile directive 'nowarn_deprecated_catch' can be used to suppress423warnings in selected modules.424425 ┌─ src/hackney_trace.erl:426 │427 163 │ (catch print_trace(Fd, Event)),428 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.429Compile directive 'nowarn_deprecated_catch' can be used to suppress430warnings in selected modules.431432433==> httpoison434Compiling 2 files (.ex)435Generated httpoison app436==> juspay_expresscheckout437Compiling 8 files (.ex)438 warning: outdented heredoc line. The contents inside the heredoc should be indented at the same level as the closing """. The following is forbidden:439440 def text do441 """442 contents443 """444 end445446 Instead make sure the contents are indented as much as the heredoc closing:447448 def text do449 """450 contents451 """452 end453454 The current heredoc line is indented too little455 │456 45 │ List all the cards stored for a customer. This API gives back only tokens and other metadata relevant to the cards stored in JusPay Locker.457 │ ~458 │459 └─ lib/elixir_lib/Cards.ex:45:7460461 warning: variable "response" is unused (there is a variable with the same name in the context, use the pin operator (^) to match on it or prefix this variable with underscore if it is not meant to be used)462 │463 15 │ response = response <> "\nMessage : " <> msg464 │ ~~~~~~~~465 │466 └─ lib/elixir_lib/JuspayException.ex:15:5: Juspay.Exception.juspay_error/3467468 warning: outdented heredoc line. The contents inside the heredoc should be indented at the same level as the closing """. The following is forbidden:469470 def text do471 """472 contents473 """474 end475476 Instead make sure the contents are indented as much as the heredoc closing:477478 def text do479 """480 contents481 """482 end483484 The current heredoc line is indented too little485 │486 13 │ Create a payment transaction for Credit or Debit card.487 │ ~488 │489 └─ lib/elixir_lib/Payments.ex:13:8490491 warning: using single-quoted strings to represent charlists is deprecated.492 Use ~c"" if you indeed want a charlist or use "" instead.493 You may run "mix format --migrate" to change all single-quoted494 strings to use the ~c sigil and fix this warning.495 │496 69 │ method = 'POST'497 │ ~498 │499 └─ lib/elixir_lib/Payments.ex:69:14500501 warning: using single-quoted strings to represent charlists is deprecated.502 Use ~c"" if you indeed want a charlist or use "" instead.503 You may run "mix format --migrate" to change all single-quoted504 strings to use the ~c sigil and fix this warning.505 │506 70 │ url = '/txns'507 │ ~508 │509 └─ lib/elixir_lib/Payments.ex:70:11510511 warning: using single-quoted strings to represent charlists is deprecated.512 Use ~c"" if you indeed want a charlist or use "" instead.513 You may run "mix format --migrate" to change all single-quoted514 strings to use the ~c sigil and fix this warning.515 │516 71 │ parameters =parameters++ [ payment_method_type: "CARD", format: 'json' ]517 │ ~518 │519 └─ lib/elixir_lib/Payments.ex:71:68520521 warning: using single-quoted strings to represent charlists is deprecated.522 Use ~c"" if you indeed want a charlist or use "" instead.523 You may run "mix format --migrate" to change all single-quoted524 strings to use the ~c sigil and fix this warning.525 │526 159 │ method = 'POST'527 │ ~528 │529 └─ lib/elixir_lib/Payments.ex:159:14530531 warning: using single-quoted strings to represent charlists is deprecated.532 Use ~c"" if you indeed want a charlist or use "" instead.533 You may run "mix format --migrate" to change all single-quoted534 strings to use the ~c sigil and fix this warning.535 │536 160 │ url = '/txns'537 │ ~538 │539 └─ lib/elixir_lib/Payments.ex:160:11540541 warning: using single-quoted strings to represent charlists is deprecated.542 Use ~c"" if you indeed want a charlist or use "" instead.543 You may run "mix format --migrate" to change all single-quoted544 strings to use the ~c sigil and fix this warning.545 │546 161 │ parameters =parameters++ [ payment_method_type: "CARD", format: 'json' ]547 │ ~548 │549 └─ lib/elixir_lib/Payments.ex:161:68550551 warning: using single-quoted strings to represent charlists is deprecated.552 Use ~c"" if you indeed want a charlist or use "" instead.553 You may run "mix format --migrate" to change all single-quoted554 strings to use the ~c sigil and fix this warning.555 │556 292 │ method = 'POST'557 │ ~558 │559 └─ lib/elixir_lib/Payments.ex:292:14560561 warning: using single-quoted strings to represent charlists is deprecated.562 Use ~c"" if you indeed want a charlist or use "" instead.563 You may run "mix format --migrate" to change all single-quoted564 strings to use the ~c sigil and fix this warning.565 │566 293 │ url = '/txns'567 │ ~568 │569 └─ lib/elixir_lib/Payments.ex:293:11570571 warning: using single-quoted strings to represent charlists is deprecated.572 Use ~c"" if you indeed want a charlist or use "" instead.573 You may run "mix format --migrate" to change all single-quoted574 strings to use the ~c sigil and fix this warning.575 │576 294 │ parameters =parameters++ [ payment_method_type: "WALLET", format: 'json' ]577 │ ~578 │579 └─ lib/elixir_lib/Payments.ex:294:70580581 warning: outdented heredoc line. The contents inside the heredoc should be indented at the same level as the closing """. The following is forbidden:582583 def text do584 """585 contents586 """587 end588589 Instead make sure the contents are indented as much as the heredoc closing:590591 def text do592 """593 contents594 """595 end596597 The current heredoc line is indented too little598 │599 28 │ Wallets can be listed only in the context of a Customer. This API will return list of linked wallets for a given customer.600 │ ~601 │602 └─ lib/elixir_lib/Wallets.ex:28:7603604 warning: found quoted keyword "merchant_id" but the quotes are not required. Note that keywords are always atoms, even when quoted. Similar to atoms, keywords made exclusively of ASCII letters, numbers, and underscores and not beginning with a number do not require quotes605 │606 8 │ options = Juspay.Cards.create(["merchant_id": "vasu2795", customer_id: "user_108", name_on_card: "Sindbad", card_exp_year: 2015, card_exp_month: 7, customer_email: "customer@mail.com",nickname: "Visa card", card_number: "4123567890123456"])607 │ ~608 │609 └─ lib/elixir_test.ex:8:37610611 warning: found quoted keyword "customer_id" but the quotes are not required. Note that keywords are always atoms, even when quoted. Similar to atoms, keywords made exclusively of ASCII letters, numbers, and underscores and not beginning with a number do not require quotes612 │613 15 │ options =Juspay.Cards.create([merchant_id: "vasu2795", "customer_id": "user_108", name_on_card: "Sindbad", card_exp_year: 2015, card_exp_month: 7, customer_email: "customer@mail.com",nickname: "Visa card", card_number: "4123567970123456"])614 │ ~615 │616 └─ lib/elixir_test.ex:15:60617618 warning: found quoted keyword "customer_id" but the quotes are not required. Note that keywords are always atoms, even when quoted. Similar to atoms, keywords made exclusively of ASCII letters, numbers, and underscores and not beginning with a number do not require quotes619 │620 20 │ cards_list = Juspay.Cards.list( %{"customer_id": "guest_user"})621 │ ~622 │623 └─ lib/elixir_test.ex:20:39624625 warning: variable "fingerprint" is unused (if the variable is not meant to be used, prefix it with an underscore)626 │627 11 │ fingerprint = options["card_fingerprint"]628 │ ~~~~~~~~~~~629 │630 └─ lib/elixir_test.ex:11:5: ElixirTest.test_cards/0631632 warning: variable "default" is unused (if the variable is not meant to be used, prefix it with an underscore)633 │634 16 │ {:error,default} -> "production"635 │ ~636 │637 └─ lib/elixir_lib/Juspay.ex:16:15: Juspay.request/3638639 warning: variable "options" is unused (there is a variable with the same name in the context, use the pin operator (^) to match on it or prefix this variable with underscore if it is not meant to be used)640 │641 25 │ options = Juspay.Cards.create( [merchant_id: "vasu2795", customer_id: "user_108", name_on_card: "Sindbad", card_exp_year: 2015, card_exp_month: 7, customer_email: "customer@mail.com",nickname: "Visa card", card_number: "4123567970123456"])642 │ ~~~~~~~643 │644 └─ lib/elixir_test.ex:25:5: ElixirTest.test_cards/0645646 warning: variable "reference" is unused (if the variable is not meant to be used, prefix it with an underscore)647 │648 10 │ reference = options["card_reference"]649 │ ~~~~~~~~~650 │651 └─ lib/elixir_test.ex:10:5: ElixirTest.test_cards/0652653 warning: variable "parameters" is unused (there is a variable with the same name in the context, use the pin operator (^) to match on it or prefix this variable with underscore if it is not meant to be used)654 │655 52 │ parameters = Enum.into(parameters,[])656 │ ~~~~~~~~~~657 │658 └─ lib/elixir_lib/Juspay.ex:52:4: Juspay.check_params/1659660 error: undefined variable "invalidArgumentError"661 │662 50 │ raise invalidArgumentError663 │ ^^^^^^^^^^^^^^^^^^^^664 │665 └─ lib/elixir_lib/Juspay.ex:50:13: Juspay.check_params/1666667668== Compilation error in file lib/elixir_lib/Juspay.ex ==669** (CompileError) lib/elixir_lib/Juspay.ex: cannot compile module Juspay (errors have been logged)670671could not compile dependency :juspay_expresscheckout, "mix compile" failed. Errors may have been logged above. You can recompile this dependency with "mix deps.compile juspay_expresscheckout --force", update it with "mix deps.update juspay_expresscheckout" or clean it with "mix deps.clean juspay_expresscheckout"