From 1c6eed7012299a5789dd9b829d7b0aaa7a494af7 Mon Sep 17 00:00:00 2001 From: Kevin Bader Date: Sat, 14 Nov 2020 17:49:52 +0100 Subject: [PATCH 1/9] mix deps.update --- mix.lock | 90 +++++++++++++++++++++++++++++--------------------------- 1 file changed, 46 insertions(+), 44 deletions(-) diff --git a/mix.lock b/mix.lock index c94291e4..a530eafd 100644 --- a/mix.lock +++ b/mix.lock @@ -1,56 +1,58 @@ %{ "accept": {:hex, :accept, "0.3.5", "b33b127abca7cc948bbe6caa4c263369abf1347cfa9d8e699c6d214660f10cd1", [:rebar3], [], "hexpm", "11b18c220bcc2eab63b5470c038ef10eb6783bcb1fcdb11aa4137defa5ac1bb8"}, - "artificery": {:hex, :artificery, "0.4.2", "3ded6e29e13113af52811c72f414d1e88f711410cac1b619ab3a2666bbd7efd4", [:mix], [], "hexpm", "514586f4312ef3709a3ccbd8e55f69455add235c1729656687bb781d10d0afdb"}, - "avrora": {:hex, :avrora, "0.12.0", "e8ca564b24b70f398ef98c954576088a47d4894aa3877ce0ff4f1dbd276d5b7d", [:mix], [{:erlavro, "~> 2.9.0", [hex: :erlavro, repo: "hexpm", optional: false]}, {:jason, "~> 1.2", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "481834281d22c05699d8862976527bb2e6bc5e2e246374a3b6fb2a6564057cb6"}, + "artificery": {:hex, :artificery, "0.4.3", "0bc4260f988dcb9dda4b23f9fc3c6c8b99a6220a331534fdf5bf2fd0d4333b02", [:mix], [], "hexpm", "12e95333a30e20884e937abdbefa3e7f5e05609c2ba8cf37b33f000b9ffc0504"}, + "avrora": {:hex, :avrora, "0.13.0", "09534a0748327970ac9c20b87adc3cbda4b4e34e6c48f3f8ec26c9b2d87b2fe8", [:mix], [{:erlavro, "~> 2.9.0", [hex: :erlavro, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "e9622b9adc832be77613207428f26898dde824de631e54ac8bcf90ce03b5f3f1"}, "base64url": {:hex, :base64url, "0.0.1", "36a90125f5948e3afd7be97662a1504b934dd5dac78451ca6e9abf85a10286be", [:rebar], [], "hexpm", "fab09b20e3f5db886725544cbcf875b8e73ec93363954eb8a1a9ed834aa8c1f9"}, - "brod": {:hex, :brod, "3.9.5", "b311cdb78a359fdea8998ad98ceefb3bfedfdb513a272993e2d150bc6a58108a", [:make, :rebar, :rebar3], [{:kafka_protocol, "2.3.3", [hex: :kafka_protocol, repo: "hexpm", optional: false]}, {:supervisor3, "1.1.8", [hex: :supervisor3, repo: "hexpm", optional: false]}], "hexpm", "b14727482de1d00529c36190979283fd7e90a5aa4a5bec91472406c47bacb2ee"}, + "brod": {:hex, :brod, "3.15.1", "073b0e16f4193291a05e01ae36351ddba1bda85ad4f90f66566c8123a335150e", [:rebar3], [{:kafka_protocol, "2.3.6", [hex: :kafka_protocol, repo: "hexpm", optional: false]}, {:supervisor3, "1.1.11", [hex: :supervisor3, repo: "hexpm", optional: false]}], "hexpm", "170216364cb9c72201ab59416ec7283d5e3fc094406b03210df6be0347234c4e"}, "bunt": {:hex, :bunt, "0.2.0", "951c6e801e8b1d2cbe58ebbd3e616a869061ddadcc4863d0a2182541acae9a38", [:mix], [], "hexpm", "7af5c7e09fe1d40f76c8e4f9dd2be7cebd83909f31fee7cd0e9eadc567da8353"}, - "certifi": {:hex, :certifi, "2.5.1", "867ce347f7c7d78563450a18a6a28a8090331e77fa02380b4a21962a65d36ee5", [:rebar3], [{:parse_trans, "~>3.3", [hex: :parse_trans, repo: "hexpm", optional: false]}], "hexpm", "805abd97539caf89ec6d4732c91e62ba9da0cda51ac462380bbd28ee697a8c42"}, + "certifi": {:hex, :certifi, "2.5.2", "b7cfeae9d2ed395695dd8201c57a2d019c0c43ecaf8b8bcb9320b40d6662f340", [:rebar3], [{:parse_trans, "~>3.3", [hex: :parse_trans, repo: "hexpm", optional: false]}], "hexpm", "3b3b5f36493004ac3455966991eaf6e768ce9884693d9968055aeeeb1e575040"}, "cloudevents": {:hex, :cloudevents, "0.4.0", "bf8b38fe530f0507db4e056818c8742fa96daa06367681cb126a782fb4526ba5", [:mix], [{:avrora, "~> 0.11", [hex: :avrora, repo: "hexpm", optional: false]}, {:jason, "~> 1.2", [hex: :jason, repo: "hexpm", optional: false]}, {:typed_struct, "~> 0.2.0", [hex: :typed_struct, repo: "hexpm", optional: false]}], "hexpm", "9a971243124c43302b8a996143cc3f391353abe5a83485c81c92986385d27455"}, "combine": {:hex, :combine, "0.10.0", "eff8224eeb56498a2af13011d142c5e7997a80c8f5b97c499f84c841032e429f", [:mix], [], "hexpm", "1b1dbc1790073076580d0d1d64e42eae2366583e7aecd455d1215b0d16f2451b"}, - "confex": {:hex, :confex, "3.4.0", "8b1c3cc7a93320291abb31223a178df19d7f722ee816c05a8070c8c9a054560d", [:mix], [], "hexpm", "4a14e15185c772389979cf4c050ddcc7a25a4d62759da13a170e0ca7274a22c7"}, + "confex": {:hex, :confex, "3.5.0", "163857c73dd8f88a3815663f4bc00bee1b9c65daf40aa6e0d6ef272757fd22c7", [:mix], [], "hexpm", "34a9e31230c7fbb3dbe60db00341d0c84ee44ba3caf84b498f501c0bc8563570"}, "counters": {:hex, :counters, "0.2.1", "aa3d97e88f92573488987193d0f48efce0f3b2cd1443bf4ee760bc7f99322f0c", [:mix, :rebar3], [], "hexpm", "a020c714992f7db89178d27e1f39909e5d77da3b80daa4d6015877ed0c94b8ab"}, - "cowboy": {:hex, :cowboy, "2.7.0", "91ed100138a764355f43316b1d23d7ff6bdb0de4ea618cb5d8677c93a7a2f115", [:rebar3], [{:cowlib, "~> 2.8.0", [hex: :cowlib, repo: "hexpm", optional: false]}, {:ranch, "~> 1.7.1", [hex: :ranch, repo: "hexpm", optional: false]}], "hexpm", "04fd8c6a39edc6aaa9c26123009200fc61f92a3a94f3178c527b70b767c6e605"}, - "cowlib": {:hex, :cowlib, "2.8.0", "fd0ff1787db84ac415b8211573e9a30a3ebe71b5cbff7f720089972b2319c8a4", [:rebar3], [], "hexpm", "79f954a7021b302186a950a32869dbc185523d99d3e44ce430cd1f3289f41ed4"}, - "crc32cer": {:hex, :crc32cer, "0.1.3", "8984906c4b4fae6aa292c48f286a1c83b19ad44bd102287acb94d696015967ce", [:make, :rebar, :rebar3], [], "hexpm", "e35840bfd312192748bf177e92e85270e2bf0bbc01462da1f7afd4298edae4a7"}, - "credo": {:hex, :credo, "1.3.0", "37699fefdbe1b0480a5a6b73f259207e9cd7ad5e492277e22c2179bcb226a67b", [:mix], [{:bunt, "~> 0.2.0", [hex: :bunt, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "8036b9226e4440d3ebce3931505e407b8d59fc95975f574c26337812e8de2a86"}, + "cowboy": {:hex, :cowboy, "2.8.0", "f3dc62e35797ecd9ac1b50db74611193c29815401e53bac9a5c0577bd7bc667d", [:rebar3], [{:cowlib, "~> 2.9.1", [hex: :cowlib, repo: "hexpm", optional: false]}, {:ranch, "~> 1.7.1", [hex: :ranch, repo: "hexpm", optional: false]}], "hexpm", "4643e4fba74ac96d4d152c75803de6fad0b3fa5df354c71afdd6cbeeb15fac8a"}, + "cowboy_telemetry": {:hex, :cowboy_telemetry, "0.3.1", "ebd1a1d7aff97f27c66654e78ece187abdc646992714164380d8a041eda16754", [:rebar3], [{:cowboy, "~> 2.7", [hex: :cowboy, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "3a6efd3366130eab84ca372cbd4a7d3c3a97bdfcfb4911233b035d117063f0af"}, + "cowlib": {:hex, :cowlib, "2.9.1", "61a6c7c50cf07fdd24b2f45b89500bb93b6686579b069a89f88cb211e1125c78", [:rebar3], [], "hexpm", "e4175dc240a70d996156160891e1c62238ede1729e45740bdd38064dad476170"}, + "crc32cer": {:hex, :crc32cer, "0.1.4", "a656dff19474d1a1fc5bb0081610ab6b0695b23affc47fa90abeb079a8ef9752", [:rebar3], [], "hexpm", "964735a5422cf65bbc5354860a560fff546f0026f83f8860525bd58ab5bade5d"}, + "credo": {:hex, :credo, "1.5.1", "4fe303cc828412b9d21eed4eab60914c401e71f117f40243266aafb66f30d036", [:mix], [{:bunt, "~> 0.2.0", [hex: :bunt, repo: "hexpm", optional: false]}, {:file_system, "~> 0.2.8", [hex: :file_system, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "0b219ca4dcc89e4e7bc6ae7e6539c313e738e192e10b85275fa1e82b5203ecd7"}, "ctx": {:hex, :ctx, "0.5.0", "78e0f16712e12d707a7f34277381b8e193d7c71eaa24d37330dc02477c09eda5", [:rebar3], [], "hexpm", "52554d80f9d93b3f82dba8e1776e8ea87b0d6218ae94ba0f73d61ad1579aed08"}, "deferred_config": {:hex, :deferred_config, "0.1.1", "ec912e9ee3c99b90a8d4bdec8fbd15309f4bd6729f30789e0ff6f595d06bbce5", [:mix], [], "hexpm", "2eb5311037feb4a6a5dbe3ecc5c98af7ea849730e5dbd9aee0f45c5dbccc3922"}, - "dialyxir": {:hex, :dialyxir, "1.0.0-rc.6", "78e97d9c0ff1b5521dd68041193891aebebce52fc3b93463c0a6806874557d7d", [:mix], [{:erlex, "~> 0.2.1", [hex: :erlex, repo: "hexpm", optional: false]}], "hexpm", "49496d63267bc1a4614ffd5f67c45d9fc3ea62701a6797975bc98bc156d2763f"}, + "dialyxir": {:hex, :dialyxir, "1.0.0", "6a1fa629f7881a9f5aaf3a78f094b2a51a0357c843871b8bc98824e7342d00a5", [:mix], [{:erlex, ">= 0.2.6", [hex: :erlex, repo: "hexpm", optional: false]}], "hexpm", "aeb06588145fac14ca08d8061a142d52753dbc2cf7f0d00fc1013f53f8654654"}, "distillery": {:hex, :distillery, "2.1.1", "f9332afc2eec8a1a2b86f22429e068ef35f84a93ea1718265e740d90dd367814", [:mix], [{:artificery, "~> 0.2", [hex: :artificery, repo: "hexpm", optional: false]}], "hexpm", "bbc7008b0161a6f130d8d903b5b3232351fccc9c31a991f8fcbf2a12ace22995"}, "earmark": {:hex, :earmark, "1.4.3", "364ca2e9710f6bff494117dbbd53880d84bebb692dafc3a78eb50aa3183f2bfd", [:mix], [], "hexpm", "8cf8a291ebf1c7b9539e3cddb19e9cef066c2441b1640f13c34c1d3cfc825fec"}, - "elixir_make": {:hex, :elixir_make, "0.5.2", "96a28c79f5b8d34879cd95ebc04d2a0d678cfbbd3e74c43cb63a76adf0ee8054", [:mix], [], "hexpm", "382eeea8e02dfe6c468f6729b6cf20fe5b14390671d38c7363e59621c7ab4efc"}, + "earmark_parser": {:hex, :earmark_parser, "1.4.10", "6603d7a603b9c18d3d20db69921527f82ef09990885ed7525003c7fe7dc86c56", [:mix], [], "hexpm", "8e2d5370b732385db2c9b22215c3f59c84ac7dda7ed7e544d7c459496ae519c0"}, + "elixir_make": {:hex, :elixir_make, "0.6.1", "8faa29a5597faba999aeeb72bbb9c91694ef8068f0131192fb199f98d32994ef", [:mix], [], "hexpm", "35d33270680f8d839a4003c3e9f43afb595310a592405a00afc12de4c7f55a18"}, "erlavro": {:hex, :erlavro, "2.9.0", "a709780bde5fd16cb3ea759bc34c4fe5276513a8c6eeeab3cf0df7d2ca92dcb2", [:make, :rebar, :rebar3], [{:jsone, "1.4.6", [hex: :jsone, repo: "hexpm", optional: false]}], "hexpm", "fce3428cd395a429c3354700abe2f1592e33a33272870dc2d15d662d4f454afc"}, - "erlex": {:hex, :erlex, "0.2.4", "23791959df45fe8f01f388c6f7eb733cc361668cbeedd801bf491c55a029917b", [:mix], [], "hexpm", "4a12ebc7cd8f24f2d0fce93d279fa34eb5068e0e885bb841d558c4d83c52c439"}, + "erlex": {:hex, :erlex, "0.2.6", "c7987d15e899c7a2f34f5420d2a2ea0d659682c06ac607572df55a43753aa12e", [:mix], [], "hexpm", "2ed2e25711feb44d52b17d2780eabf998452f6efda104877a3881c2f8c0c0c75"}, "ex2ms": {:hex, :ex2ms, "1.6.0", "f39bbd9ff1b0f27b3f707bab2d167066dd8965e7df1149b962d94c74615d0e09", [:mix], [], "hexpm", "0d1ab5e08421af5cd69146efb408dbb1ff77f38a2f4df5f086f2512dc8cf65bf"}, - "ex_aws": {:hex, :ex_aws, "2.1.0", "b92651527d6c09c479f9013caa9c7331f19cba38a650590d82ebf2c6c16a1d8a", [:mix], [{:configparser_ex, "~> 2.0", [hex: :configparser_ex, repo: "hexpm", optional: true]}, {:hackney, "1.6.3 or 1.6.5 or 1.7.1 or 1.8.6 or ~> 1.9", [hex: :hackney, repo: "hexpm", optional: true]}, {:jsx, "~> 2.8", [hex: :jsx, repo: "hexpm", optional: true]}, {:poison, ">= 1.2.0", [hex: :poison, repo: "hexpm", optional: true]}, {:sweet_xml, "~> 0.6", [hex: :sweet_xml, repo: "hexpm", optional: true]}, {:xml_builder, "~> 0.1.0", [hex: :xml_builder, repo: "hexpm", optional: true]}], "hexpm", "4223b096805cf3fc7b1af766d5039d2945cc82f9794094fdced49a721864956d"}, + "ex_aws": {:hex, :ex_aws, "2.1.6", "41ab8b4caa48035c96d07faa035d2d9de6df480e7e084c054e662ac888dcd4d4", [:mix], [{:configparser_ex, "~> 4.0", [hex: :configparser_ex, repo: "hexpm", optional: true]}, {:hackney, "~> 1.9", [hex: :hackney, repo: "hexpm", optional: true]}, {:jason, "~> 1.1", [hex: :jason, repo: "hexpm", optional: true]}, {:jsx, "~> 2.8", [hex: :jsx, repo: "hexpm", optional: true]}, {:sweet_xml, "~> 0.6", [hex: :sweet_xml, repo: "hexpm", optional: true]}], "hexpm", "a541bd042c1ee26412bb1e749ddf2a1c327e4fb7e382b1cd227e1b00eed3d469"}, "ex_aws_kinesis": {:hex, :ex_aws_kinesis, "2.0.1", "7f8746e89904ccc6da2c9575e8fe08584e189b2739d964968bba2b9ec1f57fd6", [:mix], [{:ex_aws, "~> 2.0", [hex: :ex_aws, repo: "hexpm", optional: false]}], "hexpm", "7ba0e4673ad62bf8e9752e747f180a6a999ca53e9bb433d728df6b8cdcc86f75"}, - "ex_doc": {:hex, :ex_doc, "0.21.3", "857ec876b35a587c5d9148a2512e952e24c24345552259464b98bfbb883c7b42", [:mix], [{:earmark, "~> 1.4", [hex: :earmark, repo: "hexpm", optional: false]}, {:makeup_elixir, "~> 0.14", [hex: :makeup_elixir, repo: "hexpm", optional: false]}], "hexpm", "0db1ee8d1547ab4877c5b5dffc6604ef9454e189928d5ba8967d4a58a801f161"}, - "excoveralls": {:hex, :excoveralls, "0.12.2", "a513defac45c59e310ac42fcf2b8ae96f1f85746410f30b1ff2b710a4b6cd44b", [:mix], [{:hackney, "~> 1.0", [hex: :hackney, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "151c476331d49b45601ffc45f43cb3a8beb396b02a34e3777fea0ad34ae57d89"}, + "ex_doc": {:hex, :ex_doc, "0.23.0", "a069bc9b0bf8efe323ecde8c0d62afc13d308b1fa3d228b65bca5cf8703a529d", [:mix], [{:earmark_parser, "~> 1.4.0", [hex: :earmark_parser, repo: "hexpm", optional: false]}, {:makeup_elixir, "~> 0.14", [hex: :makeup_elixir, repo: "hexpm", optional: false]}], "hexpm", "f5e2c4702468b2fd11b10d39416ddadd2fcdd173ba2a0285ebd92c39827a5a16"}, + "excoveralls": {:hex, :excoveralls, "0.13.3", "edc5f69218f84c2bf61b3609a22ddf1cec0fbf7d1ba79e59f4c16d42ea4347ed", [:mix], [{:hackney, "~> 1.16", [hex: :hackney, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "cc26f48d2f68666380b83d8aafda0fffc65dafcc8d8650358e0b61f6a99b1154"}, "fake_server": {:hex, :fake_server, "2.1.0", "aefed08a587e2498fdb39ac9de6f9eabbe7bd83da9801d08d3574d61b7eb03d5", [:mix], [{:cowboy, "~> 2.5", [hex: :cowboy, repo: "hexpm", optional: false]}, {:poison, ">= 1.0.0", [hex: :poison, repo: "hexpm", optional: false]}], "hexpm", "3200d57a523b27d2c8ebfc1a80b76697b3c8a06bf9d678d82114f5f98d350c75"}, - "file_system": {:hex, :file_system, "0.2.8", "f632bd287927a1eed2b718f22af727c5aeaccc9a98d8c2bd7bff709e851dc986", [:mix], [], "hexpm", "97a3b6f8d63ef53bd0113070102db2ce05352ecf0d25390eb8d747c2bde98bca"}, - "gettext": {:hex, :gettext, "0.17.0", "abe21542c831887a2b16f4c94556db9c421ab301aee417b7c4fbde7fbdbe01ec", [:mix], [], "hexpm", "e0b8598e802676c81e66b061a2148c37c03886b24a3ca86a1f98ed40693b94b3"}, + "file_system": {:hex, :file_system, "0.2.9", "545b9c9d502e8bfa71a5315fac2a923bd060fd9acb797fe6595f54b0f975fd32", [:mix], [], "hexpm", "3cf87a377fe1d93043adeec4889feacf594957226b4f19d5897096d6f61345d8"}, + "gettext": {:hex, :gettext, "0.18.2", "7df3ea191bb56c0309c00a783334b288d08a879f53a7014341284635850a6e55", [:mix], [], "hexpm", "f9f537b13d4fdd30f3039d33cb80144c3aa1f8d9698e47d7bcbcc8df93b1f5c5"}, "gnat": {:hex, :gnat, "1.0.0", "6417fb6bb122e80f941b151cca25e9209f7523bde4dbe10901ba05aa21ae1bbd", [:mix], [{:jason, "~> 1.1", [hex: :jason, repo: "hexpm", optional: false]}, {:nimble_parsec, "~> 0.5", [hex: :nimble_parsec, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "db15a1905eb5a82b6a744994ff4ecab566a3a64995dc1cfa25731b2a3cbaff87"}, - "hackney": {:hex, :hackney, "1.15.2", "07e33c794f8f8964ee86cebec1a8ed88db5070e52e904b8f12209773c1036085", [:rebar3], [{:certifi, "2.5.1", [hex: :certifi, repo: "hexpm", optional: false]}, {:idna, "6.0.0", [hex: :idna, repo: "hexpm", optional: false]}, {:metrics, "1.0.1", [hex: :metrics, repo: "hexpm", optional: false]}, {:mimerl, "~>1.1", [hex: :mimerl, repo: "hexpm", optional: false]}, {:ssl_verify_fun, "1.1.5", [hex: :ssl_verify_fun, repo: "hexpm", optional: false]}], "hexpm", "e0100f8ef7d1124222c11ad362c857d3df7cb5f4204054f9f0f4a728666591fc"}, - "httpoison": {:hex, :httpoison, "1.6.2", "ace7c8d3a361cebccbed19c283c349b3d26991eff73a1eaaa8abae2e3c8089b6", [:mix], [{:hackney, "~> 1.15 and >= 1.15.2", [hex: :hackney, repo: "hexpm", optional: false]}], "hexpm", "aa2c74bd271af34239a3948779612f87df2422c2fdcfdbcec28d9c105f0773fe"}, - "idna": {:hex, :idna, "6.0.0", "689c46cbcdf3524c44d5f3dde8001f364cd7608a99556d8fbd8239a5798d4c10", [:rebar3], [{:unicode_util_compat, "0.4.1", [hex: :unicode_util_compat, repo: "hexpm", optional: false]}], "hexpm", "4bdd305eb64e18b0273864920695cb18d7a2021f31a11b9c5fbcd9a253f936e2"}, - "jason": {:hex, :jason, "1.2.1", "12b22825e22f468c02eb3e4b9985f3d0cb8dc40b9bd704730efa11abd2708c44", [:mix], [{:decimal, "~> 1.0", [hex: :decimal, repo: "hexpm", optional: true]}], "hexpm", "b659b8571deedf60f79c5a608e15414085fa141344e2716fbd6988a084b5f993"}, + "hackney": {:hex, :hackney, "1.16.0", "5096ac8e823e3a441477b2d187e30dd3fff1a82991a806b2003845ce72ce2d84", [:rebar3], [{:certifi, "2.5.2", [hex: :certifi, repo: "hexpm", optional: false]}, {:idna, "6.0.1", [hex: :idna, repo: "hexpm", optional: false]}, {:metrics, "1.0.1", [hex: :metrics, repo: "hexpm", optional: false]}, {:mimerl, "~>1.1", [hex: :mimerl, repo: "hexpm", optional: false]}, {:parse_trans, "3.3.0", [hex: :parse_trans, repo: "hexpm", optional: false]}, {:ssl_verify_fun, "1.1.6", [hex: :ssl_verify_fun, repo: "hexpm", optional: false]}], "hexpm", "3bf0bebbd5d3092a3543b783bf065165fa5d3ad4b899b836810e513064134e18"}, + "httpoison": {:hex, :httpoison, "1.7.0", "abba7d086233c2d8574726227b6c2c4f6e53c4deae7fe5f6de531162ce9929a0", [:mix], [{:hackney, "~> 1.16", [hex: :hackney, repo: "hexpm", optional: false]}], "hexpm", "975cc87c845a103d3d1ea1ccfd68a2700c211a434d8428b10c323dc95dc5b980"}, + "idna": {:hex, :idna, "6.0.1", "1d038fb2e7668ce41fbf681d2c45902e52b3cb9e9c77b55334353b222c2ee50c", [:rebar3], [{:unicode_util_compat, "0.5.0", [hex: :unicode_util_compat, repo: "hexpm", optional: false]}], "hexpm", "a02c8a1c4fd601215bb0b0324c8a6986749f807ce35f25449ec9e69758708122"}, + "jason": {:hex, :jason, "1.2.2", "ba43e3f2709fd1aa1dce90aaabfd039d000469c05c56f0b8e31978e03fa39052", [:mix], [{:decimal, "~> 1.0 or ~> 2.0", [hex: :decimal, repo: "hexpm", optional: true]}], "hexpm", "18a228f5f0058ee183f29f9eae0805c6e59d61c3b006760668d8d18ff0d12179"}, "jaxon": {:hex, :jaxon, "1.0.10", "bedd7e3a8ed6325fdfef15aff0063faeab633d4b5ddbe8011051b35092a22f15", [:make, :mix], [{:elixir_make, "~> 0.4", [hex: :elixir_make, repo: "hexpm", optional: false]}], "hexpm", "a65e99fa43320700ac8000e82c5061ff5a898ab2dd97c689376e35575554b7f6"}, "joken": {:hex, :joken, "1.5.0", "42a0953e80bd933fc98a0874e156771f78bf0e92abe6c3a9c22feb6da28efb0b", [:mix], [{:jose, "~> 1.8", [hex: :jose, repo: "hexpm", optional: false]}, {:plug, "~> 1.0", [hex: :plug, repo: "hexpm", optional: true]}, {:poison, "~> 1.5 or ~> 2.0 or ~> 3.0", [hex: :poison, repo: "hexpm", optional: true]}], "hexpm", "b161e49dcf44b060407979fbc9c8085c3350f8fda4c60b25c0d5748a7f595aaf"}, - "jose": {:hex, :jose, "1.9.0", "4167c5f6d06ffaebffd15cdb8da61a108445ef5e85ab8f5a7ad926fdf3ada154", [:mix, :rebar3], [{:base64url, "~> 0.0.1", [hex: :base64url, repo: "hexpm", optional: false]}], "hexpm", "6429c4fee52b2dda7861ee19a4f09c8c1ffa213bee3a1ec187828fde95d447ed"}, + "jose": {:hex, :jose, "1.10.1", "16d8e460dae7203c6d1efa3f277e25b5af8b659febfc2f2eb4bacf87f128b80a", [:mix, :rebar3], [], "hexpm", "3c7ddc8a9394b92891db7c2771da94bf819834a1a4c92e30857b7d582e2f8257"}, "jsone": {:hex, :jsone, "1.4.6", "644d6d57befb22c8e19b324dee19d73b1c004565009861a8f64c68b7b9e64dbf", [:rebar3], [], "hexpm", "78eee8bb38f0bee2e73673d71bc75fc6fb01f56f0d23e769a26eee3655487a38"}, "jsx": {:hex, :jsx, "2.9.0", "d2f6e5f069c00266cad52fb15d87c428579ea4d7d73a33669e12679e203329dd", [:mix, :rebar3], [], "hexpm", "8ee1db1cabafdd578a2776a6aaae87c2a8ce54b47b59e9ec7dab5d7eb71cd8dc"}, - "kafka_protocol": {:hex, :kafka_protocol, "2.3.3", "a43eaf1768a1a0300e81c356f543f9e6c02576c5a6a3301a1e5eea7eeede7435", [:rebar, :rebar3], [{:crc32cer, "0.1.3", [hex: :crc32cer, repo: "hexpm", optional: false]}, {:snappyer, "1.2.4", [hex: :snappyer, repo: "hexpm", optional: false]}], "hexpm", "3405854af32823697255bda9550f6d6e7267a01769a5df97923f1aa479ce53be"}, - "makeup": {:hex, :makeup, "1.0.0", "671df94cf5a594b739ce03b0d0316aa64312cee2574b6a44becb83cd90fb05dc", [:mix], [{:nimble_parsec, "~> 0.5.0", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "a10c6eb62cca416019663129699769f0c2ccf39428b3bb3c0cb38c718a0c186d"}, - "makeup_elixir": {:hex, :makeup_elixir, "0.14.0", "cf8b7c66ad1cff4c14679698d532f0b5d45a3968ffbcbfd590339cb57742f1ae", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}], "hexpm", "d4b316c7222a85bbaa2fd7c6e90e37e953257ad196dc229505137c5e505e9eff"}, - "memoize": {:hex, :memoize, "1.3.0", "c82eaf40cd2afd0cc050ee0d7e6b298aa2a0d5faa8680b48147deecb4b94300d", [:mix], [], "hexpm", "e7821b08820b39f090c8a2a321c639068fd11690d0477a5a32d477696329058e"}, + "kafka_protocol": {:hex, :kafka_protocol, "2.3.6", "df076a8ef49fffae3535c805cb00f3a057ce1895e63398bf8a10569eeeac02f8", [:rebar, :rebar3], [{:crc32cer, "0.1.4", [hex: :crc32cer, repo: "hexpm", optional: false]}, {:snappyer, "1.2.5", [hex: :snappyer, repo: "hexpm", optional: false]}], "hexpm", "7cb061fe46babc7fd269d2c0e5b4dba5d1efc4f7dacce85b17a9cca973106b23"}, + "makeup": {:hex, :makeup, "1.0.5", "d5a830bc42c9800ce07dd97fa94669dfb93d3bf5fcf6ea7a0c67b2e0e4a7f26c", [:mix], [{:nimble_parsec, "~> 0.5 or ~> 1.0", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "cfa158c02d3f5c0c665d0af11512fed3fba0144cf1aadee0f2ce17747fba2ca9"}, + "makeup_elixir": {:hex, :makeup_elixir, "0.14.1", "4f0e96847c63c17841d42c08107405a005a2680eb9c7ccadfd757bd31dabccfb", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}], "hexpm", "f2438b1a80eaec9ede832b5c41cd4f373b38fd7aa33e3b22d9db79e640cbde11"}, + "memoize": {:hex, :memoize, "1.3.2", "f928aea1597b063d148158198a53590c9e5bf8d0c1c8aca8e20b78e566163679", [:mix], [], "hexpm", "c757710fd8afb5a305da997f0a8c7a1cb54dd700af04d3208198553f9b4269c3"}, "metrics": {:hex, :metrics, "1.0.1", "25f094dea2cda98213cecc3aeff09e940299d950904393b2a29d191c346a8486", [:rebar3], [], "hexpm", "69b09adddc4f74a40716ae54d140f93beb0fb8978d8636eaded0c31b6f099f16"}, - "mime": {:hex, :mime, "1.3.1", "30ce04ab3175b6ad0bdce0035cba77bba68b813d523d1aac73d9781b4d193cf8", [:mix], [], "hexpm", "6cbe761d6a0ca5a31a0931bf4c63204bceb64538e664a8ecf784a9a6f3b875f1"}, + "mime": {:hex, :mime, "1.4.0", "5066f14944b470286146047d2f73518cf5cca82f8e4815cf35d196b58cf07c47", [:mix], [], "hexpm", "75fa42c4228ea9a23f70f123c74ba7cece6a03b1fd474fe13f6a7a85c6ea4ff6"}, "mimerl": {:hex, :mimerl, "1.2.0", "67e2d3f571088d5cfd3e550c383094b47159f3eee8ffa08e64106cdf5e981be3", [:rebar3], [], "hexpm", "f278585650aa581986264638ebf698f8bb19df297f66ad91b18910dfc6e19323"}, "mix_test_watch": {:hex, :mix_test_watch, "1.0.2", "34900184cbbbc6b6ed616ed3a8ea9b791f9fd2088419352a6d3200525637f785", [:mix], [{:file_system, "~> 0.2.1 or ~> 0.3", [hex: :file_system, repo: "hexpm", optional: false]}], "hexpm", "47ac558d8b06f684773972c6d04fcc15590abdb97aeb7666da19fcbfdc441a07"}, - "mox": {:hex, :mox, "0.5.0", "c519b48407017a85f03407a9a4c4ceb7cc6dec5fe886b2241869fb2f08476f9e", [:mix], [], "hexpm", "bdc9e95c3e4b80e4864987d822a981da2f2a6032bf409b3ec641f5be3488e8e6"}, + "mox": {:hex, :mox, "0.5.2", "55a0a5ba9ccc671518d068c8dddd20eeb436909ea79d1799e2209df7eaa98b6c", [:mix], [], "hexpm", "df4310628cd628ee181df93f50ddfd07be3e5ecc30232d3b6aadf30bdfe6092b"}, "murmur": {:hex, :murmur, "1.0.1", "a6e6bced2dd0d666090a9cf3e73699f3b9176bbcf32d35b0f022f137667608e3", [:mix], [], "hexpm", "1303e80b1a5514a8afe0baf4241903ae31e3ba8b7e9e7c2219a668c065a691a6"}, - "nimble_parsec": {:hex, :nimble_parsec, "0.5.3", "def21c10a9ed70ce22754fdeea0810dafd53c2db3219a0cd54cf5526377af1c6", [:mix], [], "hexpm", "589b5af56f4afca65217a1f3eb3fee7e79b09c40c742fddc1c312b3ac0b3399f"}, + "nimble_parsec": {:hex, :nimble_parsec, "0.6.0", "32111b3bf39137144abd7ba1cce0914533b2d16ef35e8abc5ec8be6122944263", [:mix], [], "hexpm", "27eac315a94909d4dc68bc07a4a83e06c8379237c5ea528a9acff4ca1c873c52"}, "odgn_json_pointer": {:hex, :odgn_json_pointer, "2.5.0", "d90b8e854cb2b59cc1ec6f0fd8a38026debadfdd2bc418364a0f51707ba6b0af", [:mix], [], "hexpm", "99d01a562cad25de01d81e344f35084d9cfcbe385d7276447a4d417b8632a510"}, "opencensus": {:hex, :opencensus, "0.9.3", "a7bb2771b40593f8513fc14eb70d822e88bea1b2fb552e19a1e2e6f98371427a", [:rebar3], [{:counters, "~> 0.2.1", [hex: :counters, repo: "hexpm", optional: false]}, {:ctx, "~> 0.5", [hex: :ctx, repo: "hexpm", optional: false]}, {:wts, "~> 0.3", [hex: :wts, repo: "hexpm", optional: false]}], "hexpm", "9495b4fa817f10a7cdf8b69cca929470aeda0633a04ea18cff6a0a9ea03a03e9"}, "opencensus_elixir": {:hex, :opencensus_elixir, "0.4.0", "ac00f3b027841ba47ad8a9205c442c2e5473c1ffeb45e9c2569cccd5d35fa814", [:mix], [{:opencensus, "~> 0.9", [hex: :opencensus, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "471122e0080059ed9aac7b46fcb8bcb21b13eb1739f87cd983d282af5127100d"}, @@ -59,33 +61,33 @@ "opencensus_zipkin": {:hex, :opencensus_zipkin, "0.3.0", "a966fb97c2d56a37371f49f387c0210f906081889e3084434bdec42f4781aeac", [:rebar3], [{:jsx, "~>2.9.0", [hex: :jsx, repo: "hexpm", optional: false]}, {:opencensus, "~>0.9.2", [hex: :opencensus, repo: "hexpm", optional: false]}], "hexpm", "e5e7de60ca4d601b39ae4b63251c4610e9aea9ab46d66ce67f2bbf28bb30cc4e"}, "parse_trans": {:hex, :parse_trans, "3.3.0", "09765507a3c7590a784615cfd421d101aec25098d50b89d7aa1d66646bc571c1", [:rebar3], [], "hexpm", "17ef63abde837ad30680ea7f857dd9e7ced9476cdd7b0394432af4bfc241b960"}, "peerage": {:hex, :peerage, "1.0.3", "945c3dfc407215b89682c65198d004028df0fa772bfea4d2cc9bb4e39e8be9a0", [:mix], [{:deferred_config, "~> 0.1.1", [hex: :deferred_config, repo: "hexpm", optional: false]}], "hexpm", "c9a3316be955f65da1ec39ef891b4c15f2f13bec7bd8d84ef3cdc9fd633d889b"}, - "phoenix": {:hex, :phoenix, "1.4.3", "8eed4a64ff1e12372cd634724bddd69185938f52c18e1396ebac76375d85677d", [:mix], [{:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}, {:phoenix_pubsub, "~> 1.1", [hex: :phoenix_pubsub, repo: "hexpm", optional: false]}, {:plug, "~> 1.7", [hex: :plug, repo: "hexpm", optional: false]}, {:plug_cowboy, "~> 1.0 or ~> 2.0", [hex: :plug_cowboy, repo: "hexpm", optional: true]}], "hexpm", "dca877890e8267d02a4bb8bd68622b6c30e8eae3e0b542f715c8c588693158a5"}, + "phoenix": {:hex, :phoenix, "1.4.17", "1b1bd4cff7cfc87c94deaa7d60dd8c22e04368ab95499483c50640ef3bd838d8", [:mix], [{:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}, {:phoenix_pubsub, "~> 1.1", [hex: :phoenix_pubsub, repo: "hexpm", optional: false]}, {:plug, "~> 1.8.1 or ~> 1.9", [hex: :plug, repo: "hexpm", optional: false]}, {:plug_cowboy, "~> 1.0 or ~> 2.0", [hex: :plug_cowboy, repo: "hexpm", optional: true]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "3a8e5d7a3d76d452bb5fb86e8b7bd115f737e4f8efe202a463d4aeb4a5809611"}, "phoenix_pubsub": {:hex, :phoenix_pubsub, "1.1.2", "496c303bdf1b2e98a9d26e89af5bba3ab487ba3a3735f74bf1f4064d2a845a3e", [:mix], [], "hexpm", "1f13f9f0f3e769a667a6b6828d29dec37497a082d195cc52dbef401a9b69bf38"}, - "phoenix_swagger": {:hex, :phoenix_swagger, "0.8.1", "af7fc985804145e17df316bb988db86d43401af3cff2f5f7ef6c21d22af5086c", [:mix], [{:ex_json_schema, "~> 0.5", [hex: :ex_json_schema, repo: "hexpm", optional: true]}, {:plug, "~> 1.4", [hex: :plug, repo: "hexpm", optional: false]}, {:poison, "~> 2.2 or ~> 3.0", [hex: :poison, repo: "hexpm", optional: false]}], "hexpm", "54f76fff87d797dee86ced3f17b9206383517868c06ad90f239a305e1d0dd6dc"}, - "plug": {:hex, :plug, "1.9.0", "8d7c4e26962283ff9f8f3347bd73838e2413fbc38b7bb5467d5924f68f3a5a4a", [:mix], [{:mime, "~> 1.0", [hex: :mime, repo: "hexpm", optional: false]}, {:plug_crypto, "~> 1.0", [hex: :plug_crypto, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: true]}], "hexpm", "9902eda2c52ada2a096434682e99a2493f5d06a94d6ac6bcfff9805f952350f1"}, - "plug_cowboy": {:hex, :plug_cowboy, "2.1.2", "8b0addb5908c5238fac38e442e81b6fcd32788eaa03246b4d55d147c47c5805e", [:mix], [{:cowboy, "~> 2.5", [hex: :cowboy, repo: "hexpm", optional: false]}, {:plug, "~> 1.7", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "7d722581ce865a237e14da6d946f92704101740a256bd13ec91e63c0b122fc70"}, - "plug_crypto": {:hex, :plug_crypto, "1.1.2", "bdd187572cc26dbd95b87136290425f2b580a116d3fb1f564216918c9730d227", [:mix], [], "hexpm", "6b8b608f895b6ffcfad49c37c7883e8df98ae19c6a28113b02aa1e9c5b22d6b5"}, + "phoenix_swagger": {:hex, :phoenix_swagger, "0.8.2", "cc49d9641d7e7c87766ba800110ff67d2fb55379f83982ee33d85d1e0b39d100", [:mix], [{:ex_json_schema, "~> 0.6", [hex: :ex_json_schema, repo: "hexpm", optional: true]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}, {:plug, "~> 1.4", [hex: :plug, repo: "hexpm", optional: false]}, {:poison, "~> 2.2 or ~> 3.0", [hex: :poison, repo: "hexpm", optional: true]}], "hexpm", "e6d177764d75d388b199a863c5f7502ac8c202cd3fca61220807cbdcb31efef2"}, + "plug": {:hex, :plug, "1.11.0", "f17217525597628298998bc3baed9f8ea1fa3f1160aa9871aee6df47a6e4d38e", [:mix], [{:mime, "~> 1.0", [hex: :mime, repo: "hexpm", optional: false]}, {:plug_crypto, "~> 1.1.1 or ~> 1.2", [hex: :plug_crypto, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "2d9c633f0499f9dc5c2fd069161af4e2e7756890b81adcbb2ceaa074e8308876"}, + "plug_cowboy": {:hex, :plug_cowboy, "2.4.1", "779ba386c0915027f22e14a48919a9545714f849505fa15af2631a0d298abf0f", [:mix], [{:cowboy, "~> 2.7", [hex: :cowboy, repo: "hexpm", optional: false]}, {:cowboy_telemetry, "~> 0.3", [hex: :cowboy_telemetry, repo: "hexpm", optional: false]}, {:plug, "~> 1.7", [hex: :plug, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "d72113b6dff7b37a7d9b2a5b68892808e3a9a752f2bf7e503240945385b70507"}, + "plug_crypto": {:hex, :plug_crypto, "1.2.0", "1cb20793aa63a6c619dd18bb33d7a3aa94818e5fd39ad357051a67f26dfa2df6", [:mix], [], "hexpm", "a48b538ae8bf381ffac344520755f3007cc10bd8e90b240af98ea29b69683fc2"}, "poison": {:hex, :poison, "3.1.0", "d9eb636610e096f86f25d9a46f35a9facac35609a7591b3be3326e99a0484665", [:mix], [], "hexpm", "fec8660eb7733ee4117b85f55799fd3833eb769a6df71ccf8903e8dc5447cfce"}, "porcelain": {:hex, :porcelain, "2.0.3", "2d77b17d1f21fed875b8c5ecba72a01533db2013bd2e5e62c6d286c029150fdc", [:mix], [], "hexpm", "dc996ab8fadbc09912c787c7ab8673065e50ea1a6245177b0c24569013d23620"}, - "prometheus": {:hex, :prometheus, "4.2.2", "a830e77b79dc6d28183f4db050a7cac926a6c58f1872f9ef94a35cd989aceef8", [:mix, :rebar3], [], "hexpm", "b479a33d4aa4ba7909186e29bb6c1240254e0047a8e2a9f88463f50c0089370e"}, + "prometheus": {:hex, :prometheus, "4.6.0", "20510f381db1ccab818b4cf2fac5fa6ab5cc91bc364a154399901c001465f46f", [:mix, :rebar3], [], "hexpm", "4905fd2992f8038eccd7aa0cd22f40637ed618c0bed1f75c05aacec15b7545de"}, "prometheus_ex": {:hex, :prometheus_ex, "3.0.5", "fa58cfd983487fc5ead331e9a3e0aa622c67232b3ec71710ced122c4c453a02f", [:mix], [{:prometheus, "~> 4.0", [hex: :prometheus, repo: "hexpm", optional: false]}], "hexpm", "9fd13404a48437e044b288b41f76e64acd9735fb8b0e3809f494811dfa66d0fb"}, "prometheus_plugs": {:hex, :prometheus_plugs, "1.1.5", "25933d48f8af3a5941dd7b621c889749894d8a1082a6ff7c67cc99dec26377c5", [:mix], [{:accept, "~> 0.1", [hex: :accept, repo: "hexpm", optional: false]}, {:plug, "~> 1.0", [hex: :plug, repo: "hexpm", optional: false]}, {:prometheus_ex, "~> 1.1 or ~> 2.0 or ~> 3.0", [hex: :prometheus_ex, repo: "hexpm", optional: false]}, {:prometheus_process_collector, "~> 1.1", [hex: :prometheus_process_collector, repo: "hexpm", optional: true]}], "hexpm", "0273a6483ccb936d79ca19b0ab629aef0dba958697c94782bb728b920dfc6a79"}, "ranch": {:hex, :ranch, "1.7.1", "6b1fab51b49196860b733a49c07604465a47bdb78aa10c1c16a3d199f7f8c881", [:rebar3], [], "hexpm", "451d8527787df716d99dc36162fca05934915db0b6141bbdac2ea8d3c7afc7d7"}, - "raxx": {:hex, :raxx, "1.0.1", "8c51ec5227c85f999360fc844fc1d4e2e5a2adf2b0ce068eb56243ee6b2f65e3", [:mix], [], "hexpm", "9e557820a50f3d3341ff95e02be507ecb165676dd52ba87427a04f8d6d2c12be"}, + "raxx": {:hex, :raxx, "1.1.0", "d6a03143a91f8092c0be1ec555075c76c8d680601236de706f020d17abcf8b16", [:mix], [], "hexpm", "58fdc4b62127890dfe7129a7e372b624411a7623f688bde9e98ff2af3fd9cb46"}, "schemex": {:hex, :schemex, "0.1.1", "62d4fb3e61c940f23e7f37dbd74c0476ecae7fb9bf354e2e4731cb6e26d99ba8", [:mix], [{:httpoison, "~> 1.0", [hex: :httpoison, repo: "hexpm", optional: false]}, {:poison, "~> 3.1", [hex: :poison, repo: "hexpm", optional: false]}], "hexpm", "57a00ab900cbfdf2136ba533bcd1b52e52498b7a75bdc80047d128eed846d189"}, "server_sent_event": {:hex, :server_sent_event, "1.0.0", "23646a67d1c165ed718017c08f8646334758d8fcebfca0b12a4c648bf0235c08", [:mix], [{:raxx, "~> 1.0", [hex: :raxx, repo: "hexpm", optional: false]}], "hexpm", "17f7956495fcc98243cd0b3100a0ea0e79c1262585df93d30abb397bf95428cf"}, - "snappyer": {:hex, :snappyer, "1.2.4", "6d739c534cd2339633127a2b40279be71f149e5842c5363a4d88e66efb7c1fec", [:make, :rebar, :rebar3], [], "hexpm", "76abb8ed503722e10ee0f587956662881af9009067efdec87798a03db3527184"}, + "snappyer": {:hex, :snappyer, "1.2.5", "9154b9ac84031f0a799f72a4aa87df23ab2193b5631475fa2cdc304382d2df77", [:rebar3], [], "hexpm", "d2adc26a81efd5f138397a38a0bb545188d302972721f8be0de37fa452c8aed7"}, "socket": {:hex, :socket, "0.3.13", "98a2ab20ce17f95fb512c5cadddba32b57273e0d2dba2d2e5f976c5969d0c632", [:mix], [], "hexpm", "f82ea9833ef49dde272e6568ab8aac657a636acb4cf44a7de8a935acb8957c2e"}, - "ssl_verify_fun": {:hex, :ssl_verify_fun, "1.1.5", "6eaf7ad16cb568bb01753dbbd7a95ff8b91c7979482b95f38443fe2c8852a79b", [:make, :mix, :rebar3], [], "hexpm", "13104d7897e38ed7f044c4de953a6c28597d1c952075eb2e328bc6d6f2bfc496"}, - "stream_data": {:hex, :stream_data, "0.4.3", "62aafd870caff0849a5057a7ec270fad0eb86889f4d433b937d996de99e3db25", [:mix], [], "hexpm", "7dafd5a801f0bc897f74fcd414651632b77ca367a7ae4568778191fc3bf3a19a"}, + "ssl_verify_fun": {:hex, :ssl_verify_fun, "1.1.6", "cf344f5692c82d2cd7554f5ec8fd961548d4fd09e7d22f5b62482e5aeaebd4b0", [:make, :mix, :rebar3], [], "hexpm", "bdb0d2471f453c88ff3908e7686f86f9be327d065cc1ec16fa4540197ea04680"}, + "stream_data": {:hex, :stream_data, "0.5.0", "b27641e58941685c75b353577dc602c9d2c12292dd84babf506c2033cd97893e", [:mix], [], "hexpm", "012bd2eec069ada4db3411f9115ccafa38540a3c78c4c0349f151fc761b9e271"}, "stubr": {:hex, :stubr, "1.5.1", "6c710a66089c0b0393d29050b4294b46541baaae3ea7f8ff16925f13323e061e", [:mix], [], "hexpm", "30900c011a67e77e0c1c43debc9f33a24627de6c8859525cdf252d921b43b51e"}, - "supervisor3": {:hex, :supervisor3, "1.1.8", "5cf95c95342b589ec8d74689eea0646c0a3eb92820241e0c2d0ca4c104df92bc", [:make, :rebar, :rebar3], [], "hexpm", "4814b4d4343e777cc724312a588061828703f05149129cda2cb30d14105b1128"}, - "telemetry": {:hex, :telemetry, "0.4.1", "ae2718484892448a24470e6aa341bc847c3277bfb8d4e9289f7474d752c09c7f", [:rebar3], [], "hexpm", "4738382e36a0a9a2b6e25d67c960e40e1a2c95560b9f936d8e29de8cd858480f"}, + "supervisor3": {:hex, :supervisor3, "1.1.11", "d81cdec31d102fde407423e1d05b569572850deebed86b951d5233c387cba80b", [:rebar3], [], "hexpm", "e6c2dedbcabcba24995a218aca12db5e208b80d3252692b22ef0f1a266104b50"}, + "telemetry": {:hex, :telemetry, "0.4.2", "2808c992455e08d6177322f14d3bdb6b625fbcfd233a73505870d8738a2f4599", [:rebar3], [], "hexpm", "2d1419bd9dda6a206d7b5852179511722e2b18812310d304620c7bd92a13fcef"}, "thrift": {:hex, :thrift_erl, "0.13.0", "eaf130387890f044ac1a9e3088bf197934425c35a744f23c897a55d0396c3d40", [:rebar3], [], "hexpm", "8dcb88a250eff63629be969b2fa322cfa21d7749a02387c68d5b519b92385c26"}, - "timex": {:hex, :timex, "3.6.1", "efdf56d0e67a6b956cc57774353b0329c8ab7726766a11547e529357ffdc1d56", [:mix], [{:combine, "~> 0.10", [hex: :combine, repo: "hexpm", optional: false]}, {:gettext, "~> 0.10", [hex: :gettext, repo: "hexpm", optional: false]}, {:tzdata, "~> 0.1.8 or ~> 0.5 or ~> 1.0.0", [hex: :tzdata, repo: "hexpm", optional: false]}], "hexpm", "f354efb2400dd7a80fd9eb6c8419068c4f632da4ac47f3d8822d6e33f08bc852"}, + "timex": {:hex, :timex, "3.6.2", "845cdeb6119e2fef10751c0b247b6c59d86d78554c83f78db612e3290f819bc2", [:mix], [{:combine, "~> 0.10", [hex: :combine, repo: "hexpm", optional: false]}, {:gettext, "~> 0.10", [hex: :gettext, repo: "hexpm", optional: false]}, {:tzdata, "~> 0.1.8 or ~> 0.5 or ~> 1.0.0", [hex: :tzdata, repo: "hexpm", optional: false]}], "hexpm", "26030b46199d02a590be61c2394b37ea25a3664c02fafbeca0b24c972025d47a"}, "typed_struct": {:hex, :typed_struct, "0.2.1", "e1993414c371f09ff25231393b6430bd89d780e2a499ae3b2d2b00852f593d97", [:mix], [], "hexpm", "8f5218c35ec38262f627b2c522542f1eae41f625f92649c0af701a6fab2e11b3"}, - "tzdata": {:hex, :tzdata, "1.0.1", "f6027a331af7d837471248e62733c6ebee86a72e57c613aa071ebb1f750fc71a", [:mix], [{:hackney, "~> 1.0", [hex: :hackney, repo: "hexpm", optional: false]}], "hexpm", "cf1345dfbce6acdfd4e23cbb36e96e53d1981bc89181cd0b936f4f398f4c0b78"}, - "unicode_util_compat": {:hex, :unicode_util_compat, "0.4.1", "d869e4c68901dd9531385bb0c8c40444ebf624e60b6962d95952775cac5e90cd", [:rebar3], [], "hexpm", "1d1848c40487cdb0b30e8ed975e34e025860c02e419cb615d255849f3427439d"}, + "tzdata": {:hex, :tzdata, "1.0.4", "a3baa4709ea8dba552dca165af6ae97c624a2d6ac14bd265165eaa8e8af94af6", [:mix], [{:hackney, "~> 1.0", [hex: :hackney, repo: "hexpm", optional: false]}], "hexpm", "b02637db3df1fd66dd2d3c4f194a81633d0e4b44308d36c1b2fdfd1e4e6f169b"}, + "unicode_util_compat": {:hex, :unicode_util_compat, "0.5.0", "8516502659002cec19e244ebd90d312183064be95025a319a6c7e89f4bccd65b", [:rebar3], [], "hexpm", "d48d002e15f5cc105a696cf2f1bbb3fc72b4b770a184d8420c8db20da2674b38"}, "uuid": {:hex, :uuid, "1.1.8", "e22fc04499de0de3ed1116b770c7737779f226ceefa0badb3592e64d5cfb4eb9", [:mix], [], "hexpm", "c790593b4c3b601f5dc2378baae7efaf5b3d73c4c6456ba85759905be792f2ac"}, "vex": {:hex, :vex, "0.8.0", "0a04e3aebe5ec443525c88f3833b4481d97de272f891243b62b18efbda85b121", [:mix], [], "hexpm", "36a37f264b36fe4b0430c9f174d71c59845cf56d9e2ae32960038432b16961ea"}, "wts": {:hex, :wts, "0.4.0", "62d9dc400ad29f0d233f0665b9c75c8f8eb0a8af75eec921056ba4a73b0605a2", [:rebar3], [], "hexpm", "711bb675de2ce2b3ebab80a613ac93b994f74df44af4cff7970dc9eebe724869"}, From 5a3a89c8d6f4ade2dd3125f64fc705d097ef1dd1 Mon Sep 17 00:00:00 2001 From: Kevin Bader Date: Sat, 14 Nov 2020 17:53:48 +0100 Subject: [PATCH 2/9] Update gnat (NATS client) --- mix.exs | 2 +- mix.lock | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/mix.exs b/mix.exs index c5193c7c..cf54522a 100644 --- a/mix.exs +++ b/mix.exs @@ -179,7 +179,7 @@ defmodule RIG.MixProject do {:opencensus_jaeger, "~> 0.0.1"}, {:opencensus_zipkin, "~> 0.3"}, # NATS client: - {:gnat, "~> 1.0.0"} + {:gnat, "~> 1.0"} ] end diff --git a/mix.lock b/mix.lock index a530eafd..0d055538 100644 --- a/mix.lock +++ b/mix.lock @@ -21,6 +21,7 @@ "distillery": {:hex, :distillery, "2.1.1", "f9332afc2eec8a1a2b86f22429e068ef35f84a93ea1718265e740d90dd367814", [:mix], [{:artificery, "~> 0.2", [hex: :artificery, repo: "hexpm", optional: false]}], "hexpm", "bbc7008b0161a6f130d8d903b5b3232351fccc9c31a991f8fcbf2a12ace22995"}, "earmark": {:hex, :earmark, "1.4.3", "364ca2e9710f6bff494117dbbd53880d84bebb692dafc3a78eb50aa3183f2bfd", [:mix], [], "hexpm", "8cf8a291ebf1c7b9539e3cddb19e9cef066c2441b1640f13c34c1d3cfc825fec"}, "earmark_parser": {:hex, :earmark_parser, "1.4.10", "6603d7a603b9c18d3d20db69921527f82ef09990885ed7525003c7fe7dc86c56", [:mix], [], "hexpm", "8e2d5370b732385db2c9b22215c3f59c84ac7dda7ed7e544d7c459496ae519c0"}, + "ed25519": {:hex, :ed25519, "1.3.2", "e3a2d4badf57f0799279cf09925bd761ec38df6df3696e266585626280b5c0ad", [:mix], [], "hexpm", "2290e46e0e23717adbe20632c6dd29aa71a46ca6e153ef7ba41fe1204f66f859"}, "elixir_make": {:hex, :elixir_make, "0.6.1", "8faa29a5597faba999aeeb72bbb9c91694ef8068f0131192fb199f98d32994ef", [:mix], [], "hexpm", "35d33270680f8d839a4003c3e9f43afb595310a592405a00afc12de4c7f55a18"}, "erlavro": {:hex, :erlavro, "2.9.0", "a709780bde5fd16cb3ea759bc34c4fe5276513a8c6eeeab3cf0df7d2ca92dcb2", [:make, :rebar, :rebar3], [{:jsone, "1.4.6", [hex: :jsone, repo: "hexpm", optional: false]}], "hexpm", "fce3428cd395a429c3354700abe2f1592e33a33272870dc2d15d662d4f454afc"}, "erlex": {:hex, :erlex, "0.2.6", "c7987d15e899c7a2f34f5420d2a2ea0d659682c06ac607572df55a43753aa12e", [:mix], [], "hexpm", "2ed2e25711feb44d52b17d2780eabf998452f6efda104877a3881c2f8c0c0c75"}, @@ -32,7 +33,7 @@ "fake_server": {:hex, :fake_server, "2.1.0", "aefed08a587e2498fdb39ac9de6f9eabbe7bd83da9801d08d3574d61b7eb03d5", [:mix], [{:cowboy, "~> 2.5", [hex: :cowboy, repo: "hexpm", optional: false]}, {:poison, ">= 1.0.0", [hex: :poison, repo: "hexpm", optional: false]}], "hexpm", "3200d57a523b27d2c8ebfc1a80b76697b3c8a06bf9d678d82114f5f98d350c75"}, "file_system": {:hex, :file_system, "0.2.9", "545b9c9d502e8bfa71a5315fac2a923bd060fd9acb797fe6595f54b0f975fd32", [:mix], [], "hexpm", "3cf87a377fe1d93043adeec4889feacf594957226b4f19d5897096d6f61345d8"}, "gettext": {:hex, :gettext, "0.18.2", "7df3ea191bb56c0309c00a783334b288d08a879f53a7014341284635850a6e55", [:mix], [], "hexpm", "f9f537b13d4fdd30f3039d33cb80144c3aa1f8d9698e47d7bcbcc8df93b1f5c5"}, - "gnat": {:hex, :gnat, "1.0.0", "6417fb6bb122e80f941b151cca25e9209f7523bde4dbe10901ba05aa21ae1bbd", [:mix], [{:jason, "~> 1.1", [hex: :jason, repo: "hexpm", optional: false]}, {:nimble_parsec, "~> 0.5", [hex: :nimble_parsec, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "db15a1905eb5a82b6a744994ff4ecab566a3a64995dc1cfa25731b2a3cbaff87"}, + "gnat": {:hex, :gnat, "1.2.0", "6b6a0dd0b7d94b359395c1fb3632f546af0d9b825cdddc0e435312de7dad1ad9", [:mix], [{:jason, "~> 1.1", [hex: :jason, repo: "hexpm", optional: false]}, {:nimble_parsec, "~> 0.5", [hex: :nimble_parsec, repo: "hexpm", optional: false]}, {:nkeys, "~> 0.2", [hex: :nkeys, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "b1d0396939962fc7c1457fe11ad5ec5fd08e45fddbd7efb1994bf6594439aefb"}, "hackney": {:hex, :hackney, "1.16.0", "5096ac8e823e3a441477b2d187e30dd3fff1a82991a806b2003845ce72ce2d84", [:rebar3], [{:certifi, "2.5.2", [hex: :certifi, repo: "hexpm", optional: false]}, {:idna, "6.0.1", [hex: :idna, repo: "hexpm", optional: false]}, {:metrics, "1.0.1", [hex: :metrics, repo: "hexpm", optional: false]}, {:mimerl, "~>1.1", [hex: :mimerl, repo: "hexpm", optional: false]}, {:parse_trans, "3.3.0", [hex: :parse_trans, repo: "hexpm", optional: false]}, {:ssl_verify_fun, "1.1.6", [hex: :ssl_verify_fun, repo: "hexpm", optional: false]}], "hexpm", "3bf0bebbd5d3092a3543b783bf065165fa5d3ad4b899b836810e513064134e18"}, "httpoison": {:hex, :httpoison, "1.7.0", "abba7d086233c2d8574726227b6c2c4f6e53c4deae7fe5f6de531162ce9929a0", [:mix], [{:hackney, "~> 1.16", [hex: :hackney, repo: "hexpm", optional: false]}], "hexpm", "975cc87c845a103d3d1ea1ccfd68a2700c211a434d8428b10c323dc95dc5b980"}, "idna": {:hex, :idna, "6.0.1", "1d038fb2e7668ce41fbf681d2c45902e52b3cb9e9c77b55334353b222c2ee50c", [:rebar3], [{:unicode_util_compat, "0.5.0", [hex: :unicode_util_compat, repo: "hexpm", optional: false]}], "hexpm", "a02c8a1c4fd601215bb0b0324c8a6986749f807ce35f25449ec9e69758708122"}, @@ -53,6 +54,7 @@ "mox": {:hex, :mox, "0.5.2", "55a0a5ba9ccc671518d068c8dddd20eeb436909ea79d1799e2209df7eaa98b6c", [:mix], [], "hexpm", "df4310628cd628ee181df93f50ddfd07be3e5ecc30232d3b6aadf30bdfe6092b"}, "murmur": {:hex, :murmur, "1.0.1", "a6e6bced2dd0d666090a9cf3e73699f3b9176bbcf32d35b0f022f137667608e3", [:mix], [], "hexpm", "1303e80b1a5514a8afe0baf4241903ae31e3ba8b7e9e7c2219a668c065a691a6"}, "nimble_parsec": {:hex, :nimble_parsec, "0.6.0", "32111b3bf39137144abd7ba1cce0914533b2d16ef35e8abc5ec8be6122944263", [:mix], [], "hexpm", "27eac315a94909d4dc68bc07a4a83e06c8379237c5ea528a9acff4ca1c873c52"}, + "nkeys": {:hex, :nkeys, "0.2.0", "8f633ac09c295e47a83f3245ccd439a69f0a6372bc87b952b3e0aac9215adec5", [:mix], [{:ed25519, "~> 1.3", [hex: :ed25519, repo: "hexpm", optional: false]}], "hexpm", "29af6d3b3cbcb8aefc9fb334157775b474a844b5c25c0c65b8c1eda48d787c14"}, "odgn_json_pointer": {:hex, :odgn_json_pointer, "2.5.0", "d90b8e854cb2b59cc1ec6f0fd8a38026debadfdd2bc418364a0f51707ba6b0af", [:mix], [], "hexpm", "99d01a562cad25de01d81e344f35084d9cfcbe385d7276447a4d417b8632a510"}, "opencensus": {:hex, :opencensus, "0.9.3", "a7bb2771b40593f8513fc14eb70d822e88bea1b2fb552e19a1e2e6f98371427a", [:rebar3], [{:counters, "~> 0.2.1", [hex: :counters, repo: "hexpm", optional: false]}, {:ctx, "~> 0.5", [hex: :ctx, repo: "hexpm", optional: false]}, {:wts, "~> 0.3", [hex: :wts, repo: "hexpm", optional: false]}], "hexpm", "9495b4fa817f10a7cdf8b69cca929470aeda0633a04ea18cff6a0a9ea03a03e9"}, "opencensus_elixir": {:hex, :opencensus_elixir, "0.4.0", "ac00f3b027841ba47ad8a9205c442c2e5473c1ffeb45e9c2569cccd5d35fa814", [:mix], [{:opencensus, "~> 0.9", [hex: :opencensus, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "471122e0080059ed9aac7b46fcb8bcb21b13eb1739f87cd983d282af5127100d"}, From fd0805739348d56a161e9affc04e241d6e6807eb Mon Sep 17 00:00:00 2001 From: Kevin Bader Date: Sat, 14 Nov 2020 18:22:57 +0100 Subject: [PATCH 3/9] Upgrade Phoenix to 1.5 + Poison=>Jason --- config/config.exs | 6 ++++++ config/rig_api/config.exs | 2 +- config/rig_inbound_gateway/config.exs | 2 +- lib/rig/application.ex | 2 +- lib/rig_api/router.ex | 2 +- lib/rig_inbound_gateway/api_proxy/handler/kafka.ex | 2 +- lib/rig_inbound_gateway/api_proxy/handler/kinesis.ex | 2 +- lib/rig_inbound_gateway/api_proxy/serializer.ex | 2 +- lib/rig_inbound_gateway/request_logger/kafka.ex | 2 +- lib/rig_outbound_gateway/kinesis/java_client.ex | 2 +- mix.exs | 8 +++----- mix.lock | 4 ++-- scripts/encode_jwt/mix.exs | 1 - test/support/conn_case.ex | 3 ++- 14 files changed, 22 insertions(+), 18 deletions(-) diff --git a/config/config.exs b/config/config.exs index 073c2cb8..afe772de 100644 --- a/config/config.exs +++ b/config/config.exs @@ -123,3 +123,9 @@ config :rig, RIG.Tracing, jaeger_service_name: {:system, :charlist, "JAEGER_SERVICE_NAME", 'rig'}, zipkin_address: {:system, :charlist, "ZIPKIN_ADDR", ''}, zipkin_service_name: {:system, "ZIPKIN_SERVICE_NAME", "rig"} + +# -------------------------------------- +# Pheonix +# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +config :phoenix, :json_library, Jason diff --git a/config/rig_api/config.exs b/config/rig_api/config.exs index b914ae48..01d8f374 100644 --- a/config/rig_api/config.exs +++ b/config/rig_api/config.exs @@ -37,7 +37,7 @@ config :rig, RigApi.Endpoint, protocol_options: cowboy_options ], render_errors: [view: RigApi.ErrorView, accepts: ~w(json)], - pubsub: [name: Rig.PubSub], + pubsub_server: Rig.PubSub, check_origin: false # Always start the HTTP endpoints on application startup: diff --git a/config/rig_inbound_gateway/config.exs b/config/rig_inbound_gateway/config.exs index 6b90f765..8d90f6fe 100644 --- a/config/rig_inbound_gateway/config.exs +++ b/config/rig_inbound_gateway/config.exs @@ -65,7 +65,7 @@ config :rig, RigInboundGatewayWeb.Endpoint, transport_options: ranch_transport_options ], render_errors: [view: RigInboundGatewayWeb.ErrorView, accepts: ~w(html json xml)], - pubsub: [name: Rig.PubSub], + pubsub_server: Rig.PubSub, check_origin: false config :mime, :types, %{ diff --git a/lib/rig/application.ex b/lib/rig/application.ex index 70bcfaf7..7fe8b0d3 100644 --- a/lib/rig/application.ex +++ b/lib/rig/application.ex @@ -18,7 +18,7 @@ defmodule Rig.Application do Discovery.start() children = [ - Spec.supervisor(Phoenix.PubSub.PG2, [Rig.PubSub, []]), + {Phoenix.PubSub, name: Rig.PubSub}, # Kafka: {DynamicSupervisor, strategy: :one_for_one, name: RigKafka.DynamicSupervisor}, # Event stream handling: diff --git a/lib/rig_api/router.ex b/lib/rig_api/router.ex index dc60897f..354bf381 100644 --- a/lib/rig_api/router.ex +++ b/lib/rig_api/router.ex @@ -6,7 +6,7 @@ defmodule RigApi.Router do parsers: [:urlencoded, :multipart, :json], # return "415 Unsupported Media Type" if not handled by any parser pass: [], - json_decoder: Poison + json_decoder: Jason ) end diff --git a/lib/rig_inbound_gateway/api_proxy/handler/kafka.ex b/lib/rig_inbound_gateway/api_proxy/handler/kafka.ex index 96374317..23b96724 100644 --- a/lib/rig_inbound_gateway/api_proxy/handler/kafka.ex +++ b/lib/rig_inbound_gateway/api_proxy/handler/kafka.ex @@ -139,7 +139,7 @@ defmodule RigInboundGateway.ApiProxy.Handler.Kafka do query: conn.query_string }) |> Tracing.append_context(Tracing.context()) - |> Poison.encode!() + |> Jason.encode!() produce(partition, kafka_message, topic, schema) diff --git a/lib/rig_inbound_gateway/api_proxy/handler/kinesis.ex b/lib/rig_inbound_gateway/api_proxy/handler/kinesis.ex index 49b291f6..1faa7a20 100644 --- a/lib/rig_inbound_gateway/api_proxy/handler/kinesis.ex +++ b/lib/rig_inbound_gateway/api_proxy/handler/kinesis.ex @@ -125,7 +125,7 @@ defmodule RigInboundGateway.ApiProxy.Handler.Kinesis do query: conn.query_string }) |> Tracing.append_context(Tracing.context()) - |> Poison.encode!() + |> Jason.encode!() produce(partition, kinesis_message, topic) diff --git a/lib/rig_inbound_gateway/api_proxy/serializer.ex b/lib/rig_inbound_gateway/api_proxy/serializer.ex index 578cf2e3..a5c271aa 100644 --- a/lib/rig_inbound_gateway/api_proxy/serializer.ex +++ b/lib/rig_inbound_gateway/api_proxy/serializer.ex @@ -23,6 +23,6 @@ defmodule RigInboundGateway.ApiProxy.Serializer do end def encode_error_message(message) do - Poison.encode!(%{message: message}) + Jason.encode!(%{message: message}) end end diff --git a/lib/rig_inbound_gateway/request_logger/kafka.ex b/lib/rig_inbound_gateway/request_logger/kafka.ex index 5ff4c04a..65625dd2 100644 --- a/lib/rig_inbound_gateway/request_logger/kafka.ex +++ b/lib/rig_inbound_gateway/request_logger/kafka.ex @@ -56,7 +56,7 @@ defmodule RigInboundGateway.RequestLogger.Kafka do } } |> Tracing.append_context(Tracing.context()) - |> Poison.encode!() + |> Jason.encode!() produce("partition", kafka_message) end diff --git a/lib/rig_outbound_gateway/kinesis/java_client.ex b/lib/rig_outbound_gateway/kinesis/java_client.ex index 42245c87..7017ff49 100644 --- a/lib/rig_outbound_gateway/kinesis/java_client.ex +++ b/lib/rig_outbound_gateway/kinesis/java_client.ex @@ -117,7 +117,7 @@ defmodule RigOutboundGateway.Kinesis.JavaClient do @spec java_client_callback(data :: [{atom(), String.t()}, ...]) :: :ok def java_client_callback(data) do data[:body] - |> Poison.decode!() + |> Jason.decode!() |> KinesisToFilter.kinesis_handler() end end diff --git a/mix.exs b/mix.exs index cf54522a..a85b7536 100644 --- a/mix.exs +++ b/mix.exs @@ -116,7 +116,7 @@ defmodule RIG.MixProject do # Read and use application configuration from environment variables: {:confex, "~> 3.4"}, # For providing the global Phx PubSub server: - {:phoenix_pubsub, "~> 1.1"}, + {:phoenix_pubsub, "~> 2.0"}, # for Kafka, partition from MurmurHash(key): {:murmur, "~> 1.0"}, {:peerage, "~> 1.0"}, @@ -124,9 +124,7 @@ defmodule RIG.MixProject do {:porcelain, "~> 2.0"}, # HTTP request handling (wraps Cowboy): {:plug, "~> 1.9"}, - # JSON parser, for cloud_event and event_hub: - {:poison, "~> 3.0 or ~> 4.0"}, - # JSON parser that's supposedly faster than poison: + # JSON parser: {:jason, "~> 1.2"}, {:jaxon, "~> 1.0"}, # JSON Pointer (RFC 6901) implementation for subscriptions: @@ -152,7 +150,7 @@ defmodule RIG.MixProject do # For JSON Web Tokens: {:joken, "~> 1.5"}, # Web framework, for all HTTP endpoints except SSE and WS: - {:phoenix, "~> 1.4"}, + {:phoenix, "~> 1.5"}, {:plug_cowboy, "~> 2.1"}, {:phoenix_swagger, "~> 0.8"}, # Data validation library, e.g. used for proxy configuration: diff --git a/mix.lock b/mix.lock index 0d055538..cc4f754c 100644 --- a/mix.lock +++ b/mix.lock @@ -63,8 +63,8 @@ "opencensus_zipkin": {:hex, :opencensus_zipkin, "0.3.0", "a966fb97c2d56a37371f49f387c0210f906081889e3084434bdec42f4781aeac", [:rebar3], [{:jsx, "~>2.9.0", [hex: :jsx, repo: "hexpm", optional: false]}, {:opencensus, "~>0.9.2", [hex: :opencensus, repo: "hexpm", optional: false]}], "hexpm", "e5e7de60ca4d601b39ae4b63251c4610e9aea9ab46d66ce67f2bbf28bb30cc4e"}, "parse_trans": {:hex, :parse_trans, "3.3.0", "09765507a3c7590a784615cfd421d101aec25098d50b89d7aa1d66646bc571c1", [:rebar3], [], "hexpm", "17ef63abde837ad30680ea7f857dd9e7ced9476cdd7b0394432af4bfc241b960"}, "peerage": {:hex, :peerage, "1.0.3", "945c3dfc407215b89682c65198d004028df0fa772bfea4d2cc9bb4e39e8be9a0", [:mix], [{:deferred_config, "~> 0.1.1", [hex: :deferred_config, repo: "hexpm", optional: false]}], "hexpm", "c9a3316be955f65da1ec39ef891b4c15f2f13bec7bd8d84ef3cdc9fd633d889b"}, - "phoenix": {:hex, :phoenix, "1.4.17", "1b1bd4cff7cfc87c94deaa7d60dd8c22e04368ab95499483c50640ef3bd838d8", [:mix], [{:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}, {:phoenix_pubsub, "~> 1.1", [hex: :phoenix_pubsub, repo: "hexpm", optional: false]}, {:plug, "~> 1.8.1 or ~> 1.9", [hex: :plug, repo: "hexpm", optional: false]}, {:plug_cowboy, "~> 1.0 or ~> 2.0", [hex: :plug_cowboy, repo: "hexpm", optional: true]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "3a8e5d7a3d76d452bb5fb86e8b7bd115f737e4f8efe202a463d4aeb4a5809611"}, - "phoenix_pubsub": {:hex, :phoenix_pubsub, "1.1.2", "496c303bdf1b2e98a9d26e89af5bba3ab487ba3a3735f74bf1f4064d2a845a3e", [:mix], [], "hexpm", "1f13f9f0f3e769a667a6b6828d29dec37497a082d195cc52dbef401a9b69bf38"}, + "phoenix": {:hex, :phoenix, "1.5.6", "8298cdb4e0f943242ba8410780a6a69cbbe972fef199b341a36898dd751bdd66", [:mix], [{:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}, {:phoenix_html, "~> 2.13", [hex: :phoenix_html, repo: "hexpm", optional: true]}, {:phoenix_pubsub, "~> 2.0", [hex: :phoenix_pubsub, repo: "hexpm", optional: false]}, {:plug, "~> 1.10", [hex: :plug, repo: "hexpm", optional: false]}, {:plug_cowboy, "~> 1.0 or ~> 2.2", [hex: :plug_cowboy, repo: "hexpm", optional: true]}, {:plug_crypto, "~> 1.1.2 or ~> 1.2", [hex: :plug_crypto, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "0dc4d39af1306b6aa5122729b0a95ca779e42c708c6fe7abbb3d336d5379e956"}, + "phoenix_pubsub": {:hex, :phoenix_pubsub, "2.0.0", "a1ae76717bb168cdeb10ec9d92d1480fec99e3080f011402c0a2d68d47395ffb", [:mix], [], "hexpm", "c52d948c4f261577b9c6fa804be91884b381a7f8f18450c5045975435350f771"}, "phoenix_swagger": {:hex, :phoenix_swagger, "0.8.2", "cc49d9641d7e7c87766ba800110ff67d2fb55379f83982ee33d85d1e0b39d100", [:mix], [{:ex_json_schema, "~> 0.6", [hex: :ex_json_schema, repo: "hexpm", optional: true]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}, {:plug, "~> 1.4", [hex: :plug, repo: "hexpm", optional: false]}, {:poison, "~> 2.2 or ~> 3.0", [hex: :poison, repo: "hexpm", optional: true]}], "hexpm", "e6d177764d75d388b199a863c5f7502ac8c202cd3fca61220807cbdcb31efef2"}, "plug": {:hex, :plug, "1.11.0", "f17217525597628298998bc3baed9f8ea1fa3f1160aa9871aee6df47a6e4d38e", [:mix], [{:mime, "~> 1.0", [hex: :mime, repo: "hexpm", optional: false]}, {:plug_crypto, "~> 1.1.1 or ~> 1.2", [hex: :plug_crypto, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "2d9c633f0499f9dc5c2fd069161af4e2e7756890b81adcbb2ceaa074e8308876"}, "plug_cowboy": {:hex, :plug_cowboy, "2.4.1", "779ba386c0915027f22e14a48919a9545714f849505fa15af2631a0d298abf0f", [:mix], [{:cowboy, "~> 2.7", [hex: :cowboy, repo: "hexpm", optional: false]}, {:cowboy_telemetry, "~> 0.3", [hex: :cowboy_telemetry, repo: "hexpm", optional: false]}, {:plug, "~> 1.7", [hex: :plug, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "d72113b6dff7b37a7d9b2a5b68892808e3a9a752f2bf7e503240945385b70507"}, diff --git a/scripts/encode_jwt/mix.exs b/scripts/encode_jwt/mix.exs index 766d91e0..ae82c34f 100644 --- a/scripts/encode_jwt/mix.exs +++ b/scripts/encode_jwt/mix.exs @@ -31,7 +31,6 @@ defmodule EncodeJwt.MixProject do # Run "mix help deps" to learn about dependencies. defp deps do [ - {:poison, "~> 2.0 or ~> 3.0 or ~> 4.0"}, {:joken, "~> 1.4"} ] end diff --git a/test/support/conn_case.ex b/test/support/conn_case.ex index 22007d16..a9524456 100644 --- a/test/support/conn_case.ex +++ b/test/support/conn_case.ex @@ -18,7 +18,8 @@ defmodule RigApi.ConnCase do using do quote do # Import conveniences for testing with connections - use Phoenix.ConnTest + import Plug.Conn + import Phoenix.ConnTest import RigApi.Router.Helpers # Example mock API definition to ease testing From 7717fe7f32c5bbec12ba564405c52f6bf66ec0fa Mon Sep 17 00:00:00 2001 From: Kevin Bader Date: Sat, 14 Nov 2020 19:12:44 +0100 Subject: [PATCH 4/9] Use Elixir 1.11 and OTP 23 --- .gitignore | 3 --- .tool-versions | 2 ++ .travis.yml | 4 ++-- Dockerfile | 4 ++-- aws.dockerfile | 4 ++-- docs/rig-dev-guide.md | 6 +++--- mix.exs | 16 +++++++++------- smoke_tests.dockerfile | 2 +- version | 4 ---- 9 files changed, 21 insertions(+), 24 deletions(-) create mode 100644 .tool-versions delete mode 100644 version diff --git a/.gitignore b/.gitignore index 7a848936..cce1ca14 100644 --- a/.gitignore +++ b/.gitignore @@ -39,6 +39,3 @@ erl_crash.dump /.elixir_ls/ *~ *.orig - -# asdf -.tool-versions diff --git a/.tool-versions b/.tool-versions new file mode 100644 index 00000000..013b6663 --- /dev/null +++ b/.tool-versions @@ -0,0 +1,2 @@ +erlang 23.1.2 +elixir 1.11.2-otp-23 diff --git a/.travis.yml b/.travis.yml index efc031db..889a89e2 100644 --- a/.travis.yml +++ b/.travis.yml @@ -12,8 +12,8 @@ stages: .elixir-env: &elixir-env language: elixir - elixir: "1.10" - otp_release: "22.0" + elixir: "1.11" + otp_release: "23.0" jobs: include: diff --git a/Dockerfile b/Dockerfile index b9590ffa..711983b2 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM elixir:1.10-alpine as build +FROM elixir:1.11-alpine as build # Install Elixir & Erlang environment dependencies RUN apk add --no-cache make gcc g++ @@ -28,7 +28,7 @@ COPY lib /opt/sites/rig/lib RUN mix compile RUN mix distillery.release -FROM erlang:22-alpine +FROM erlang:23-alpine LABEL org.label-schema.name="Reactive Interaction Gateway" LABEL org.label-schema.description="Reactive API Gateway and Event Hub" diff --git a/aws.dockerfile b/aws.dockerfile index 1a83960b..a0a00454 100644 --- a/aws.dockerfile +++ b/aws.dockerfile @@ -7,7 +7,7 @@ WORKDIR /opt/sites/rig/kinesis-client # Compile AWS Kinesis Java application RUN mvn package -FROM elixir:1.10-alpine as elixir-build +FROM elixir:1.11-alpine as elixir-build # Install Elixir & Erlang environment dependencies RUN apk add --no-cache make gcc g++ @@ -37,7 +37,7 @@ COPY lib /opt/sites/rig/lib RUN mix compile RUN mix distillery.release -FROM erlang:22-alpine +FROM erlang:23-alpine RUN apk add --no-cache bash diff --git a/docs/rig-dev-guide.md b/docs/rig-dev-guide.md index 0a834f64..5b10f6b6 100644 --- a/docs/rig-dev-guide.md +++ b/docs/rig-dev-guide.md @@ -4,7 +4,7 @@ title: Developer's Guide to the Reactive Interaction Gateway sidebar_label: Developer's Guide --- -You'd like to mess with the code? Great! To get started, install Elixir and the Mix build tool on your machine. You can either follow the [instructions on the Elixir website](https://elixir-lang.org/install.html), or use [kiex](https://github.com/taylor/kiex) to install and manage Elixir runtimes. Kiex is recommended for development, because it allows you to jump to definitions inside the Elixir source code, plus you can checkout upcoming Elixir versions easily. +You'd like to help hacking? Great! To get started, install Elixir and the Mix build tool on your machine. If you use [asdf](https://asdf-vm.com/), all you need to do is `asdf install`. Otherwise, either follow the [instructions on the Elixir website](https://elixir-lang.org/install.html), or use [kiex](https://github.com/taylor/kiex) to install and manage Elixir runtimes. With Elixir installed, do this: @@ -38,11 +38,11 @@ To have the project use a newer Elixir version, make sure to change the followin - `.travis.yml`: Update the Elixir and OTP versions in the `.elixir-env` section. - `Dockerfile`, `aws.dockerfile`, `smoke_tests.dockerfile`: Make sure to change the `FROM` image tag for both the build image (elixir:...-alpine) as well as the runtime image (erlang:...-alpine). If the Erlang runtime (ERTS) in the runtime image doesn't match the ERTS version in the build image, chances are the built image won't work due to missing libraries. Because of this, it's best to use the most recent versions for both images when upgrading - they should always be compatible. -- `version`: Again, make sure both the Elixir and the OTP versions match what you have used in the previous steps. +- `.tool-versions`: Again, make sure both the Elixir and the OTP versions match what you have used in the previous steps. ## Releasing a new version -- Increment `rig` version in the [version](../version) file +- Increment `@rig_version` in [mix.exs](../mix.exs) - Increment `appVersion` in the [Helm v2 Chart.yaml](../deployment/reactive-interaction-gateway/Chart.yaml) and [Helm v3 Chart.yaml](../deployment/reactive-interaction-gateway/Chart.yaml) files - Update Helm chart README files: install [helm-docs](https://github.com/norwoodj/helm-docs) and run `helm-docs` in the root directory - Increment image tag in the [Kubernetes rig.yaml](../deployment/kubectl/rig.yaml) file diff --git a/mix.exs b/mix.exs index a85b7536..d929ffe8 100644 --- a/mix.exs +++ b/mix.exs @@ -7,8 +7,10 @@ defmodule RIG.MixProject do from backend services to connected frontends (and vice versa). """ + @rig_version "3.0.0-alpha.1" + def project do - %{rig: rig_version, elixir: elixir_version} = versions() + elixir_version = elixir_version_from_tool_versions_file() [ # OTP app: @@ -17,7 +19,7 @@ defmodule RIG.MixProject do # Meta data: name: "Reactive Interaction Gateway", description: @description, - version: rig_version, + version: @rig_version, source_url: "https://github.com/Accenture/reactive-interaction-gateway", homepage_url: "https://accenture.github.io/reactive-interaction-gateway", docs: docs(), @@ -44,6 +46,11 @@ defmodule RIG.MixProject do ] end + defp elixir_version_from_tool_versions_file do + [_, version] = Regex.run(~r/^elixir (.+)-otp-\d+$/m, File.read!(".tool-versions")) + version + end + defp elixirc_paths(:test), do: ["lib", "test/support"] defp elixirc_paths(_), do: ["lib"] @@ -70,11 +77,6 @@ defmodule RIG.MixProject do ] end - defp versions do - {map, []} = Code.eval_file("version", ".") - map - end - defp docs do [ # Website and documentation is built off master, diff --git a/smoke_tests.dockerfile b/smoke_tests.dockerfile index eabc8f0e..44828b07 100644 --- a/smoke_tests.dockerfile +++ b/smoke_tests.dockerfile @@ -1,4 +1,4 @@ -FROM elixir:1.10-alpine +FROM elixir:1.11-alpine WORKDIR /opt/sites/rig ENV MIX_ENV=test diff --git a/version b/version deleted file mode 100644 index 1f764761..00000000 --- a/version +++ /dev/null @@ -1,4 +0,0 @@ -%{ - rig: "3.0.0-alpha.1", - elixir: "~> 1.10.2", -} From 931cc79d20a00cf02b1c6e0ecbe9d6638e035ed9 Mon Sep 17 00:00:00 2001 From: Kevin Bader Date: Sat, 14 Nov 2020 19:36:19 +0100 Subject: [PATCH 5/9] Fix dockerfiles --- Dockerfile | 2 +- aws.dockerfile | 2 +- smoke_tests.dockerfile | 4 +--- 3 files changed, 3 insertions(+), 5 deletions(-) diff --git a/Dockerfile b/Dockerfile index 711983b2..90430e56 100644 --- a/Dockerfile +++ b/Dockerfile @@ -2,6 +2,7 @@ FROM elixir:1.11-alpine as build # Install Elixir & Erlang environment dependencies RUN apk add --no-cache make gcc g++ +COPY .tool-versions /opt/sites/rig/ RUN mix local.hex --force RUN mix local.rebar --force @@ -9,7 +10,6 @@ ENV MIX_ENV=prod WORKDIR /opt/sites/rig # Copy release config -COPY version /opt/sites/rig/ COPY rel /opt/sites/rig/rel/ COPY vm.args /opt/sites/rig/ diff --git a/aws.dockerfile b/aws.dockerfile index a0a00454..c804cb6a 100644 --- a/aws.dockerfile +++ b/aws.dockerfile @@ -11,6 +11,7 @@ FROM elixir:1.11-alpine as elixir-build # Install Elixir & Erlang environment dependencies RUN apk add --no-cache make gcc g++ +COPY .tool-versions /opt/sites/rig/ RUN mix local.hex --force RUN mix local.rebar --force @@ -18,7 +19,6 @@ ENV MIX_ENV=prod WORKDIR /opt/sites/rig # Copy release config -COPY version /opt/sites/rig/ COPY rel /opt/sites/rig/rel/ COPY vm.args /opt/sites/rig/ diff --git a/smoke_tests.dockerfile b/smoke_tests.dockerfile index 44828b07..79e44b99 100644 --- a/smoke_tests.dockerfile +++ b/smoke_tests.dockerfile @@ -5,12 +5,10 @@ ENV MIX_ENV=test # Install Elixir & Erlang environment dependencies RUN apk add --no-cache make gcc g++ +COPY .tool-versions /opt/sites/rig/ RUN mix local.hex --force RUN mix local.rebar --force -# Copy release config -COPY version /opt/sites/rig/ - # Copy necessary files for dependencies COPY mix.exs /opt/sites/rig/ COPY mix.lock /opt/sites/rig/ From 087abcb491dde364fdefe7c783fdbab762de5bf0 Mon Sep 17 00:00:00 2001 From: Kevin Bader Date: Sun, 15 Nov 2020 00:39:16 +0100 Subject: [PATCH 6/9] Fix warnings --- config/config.exs | 2 +- lib/rig/distributed_set.ex | 16 +++++++--------- lib/rig_cloud_events/cloud_event.ex | 14 ++++++-------- lib/rig_inbound_gateway/api_proxy/handler.ex | 3 +-- .../api_proxy/handler/kafka.ex | 2 +- .../api_proxy/handler/kinesis.ex | 2 +- .../api_proxy/handler/nats.ex | 2 +- .../api_proxy/presence_handler.ex | 2 +- lib/rig_inbound_gateway/api_proxy/sup.ex | 2 +- lib/rig_inbound_gateway_web/v1/websocket.ex | 4 ++-- 10 files changed, 22 insertions(+), 27 deletions(-) diff --git a/config/config.exs b/config/config.exs index afe772de..235e98c8 100644 --- a/config/config.exs +++ b/config/config.exs @@ -125,7 +125,7 @@ config :rig, RIG.Tracing, zipkin_service_name: {:system, "ZIPKIN_SERVICE_NAME", "rig"} # -------------------------------------- -# Pheonix +# Phoenix # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ config :phoenix, :json_library, Jason diff --git a/lib/rig/distributed_set.ex b/lib/rig/distributed_set.ex index 01f56c3a..6d196f3d 100644 --- a/lib/rig/distributed_set.ex +++ b/lib/rig/distributed_set.ex @@ -124,7 +124,7 @@ defmodule RIG.DistributedSet do {:ok, %{state | ets_table: ets_table}} end - @doc "Handles get_record requests from other nodes." + # Handles get_record requests from other nodes. @impl GenServer def handle_call( {:get_records, since_record_id}, @@ -163,7 +163,7 @@ defmodule RIG.DistributedSet do {:reply, reply, state} end - @doc "Handles adding a record on this node." + # Handles adding a record on this node. @impl GenServer def handle_call( {:add_from_local, {_, uuid, _, _} = record}, @@ -211,12 +211,10 @@ defmodule RIG.DistributedSet do {:noreply, %{state | last_record_id: synced_record_id}} end - @doc """ - Asks a random peer for missing records. - - Records are missing on startup, but there could also be a gap caused by a temporary - network split. - """ + # Asks a random peer for missing records. + # + # Records are missing on startup, but there could also be a gap caused by a temporary + # network split. @impl GenServer def handle_info( :sync_with_random_peer, @@ -241,7 +239,7 @@ defmodule RIG.DistributedSet do {:noreply, state} end - @doc "Remove expired records." + # Remove expired records. @impl GenServer def handle_info(:cleanup, %{ets_table: ets_table} = state) do remove_expired_records(ets_table) diff --git a/lib/rig_cloud_events/cloud_event.ex b/lib/rig_cloud_events/cloud_event.ex index f1c9ca2b..d8b77146 100644 --- a/lib/rig_cloud_events/cloud_event.ex +++ b/lib/rig_cloud_events/cloud_event.ex @@ -38,14 +38,12 @@ defmodule RigCloudEvents.CloudEvent do end end - @doc """ - Convenience function used in testing. - - If this would be called in production, of course it would be way more efficient to - access the given map directly. However, this modules' raison d'ĂȘtre is the safe - handling of incoming JSON encoded data, so it's safe to assume this function is ever - only called by tests. - """ + # Convenience function used in testing. + # + # If this would be called in production, of course it would be way more efficient to + # access the given map directly. However, this modules' raison d'ĂȘtre is the safe + # handling of incoming JSON encoded data, so it's safe to assume this function is ever + # only called by tests. @spec parse(map) :: {:ok, t} | {:error, any} def parse(map) when is_map(map) do map |> Jason.encode!() |> parse diff --git a/lib/rig_inbound_gateway/api_proxy/handler.ex b/lib/rig_inbound_gateway/api_proxy/handler.ex index 52386386..0def3f51 100644 --- a/lib/rig_inbound_gateway/api_proxy/handler.ex +++ b/lib/rig_inbound_gateway/api_proxy/handler.ex @@ -7,6 +7,5 @@ defmodule RigInboundGateway.ApiProxy.Handler do alias RigInboundGateway.ApiProxy.Api @type request_path :: String.t() - @callback handle_http_request(Conn.t(), Api.t(), Api.endpoint(), request_path) :: - :ok | {:error, any} + @callback handle_http_request(Conn.t(), Api.t(), Api.endpoint(), request_path) :: Conn.t() end diff --git a/lib/rig_inbound_gateway/api_proxy/handler/kafka.ex b/lib/rig_inbound_gateway/api_proxy/handler/kafka.ex index 23b96724..d21ff9e3 100644 --- a/lib/rig_inbound_gateway/api_proxy/handler/kafka.ex +++ b/lib/rig_inbound_gateway/api_proxy/handler/kafka.ex @@ -59,7 +59,7 @@ defmodule RigInboundGateway.ApiProxy.Handler.Kafka do @impl Handler def handle_http_request(conn, api, endpoint, request_path) - @doc "CORS response for preflight request." + # CORS response for preflight request. def handle_http_request( %{method: "OPTIONS"} = conn, _, diff --git a/lib/rig_inbound_gateway/api_proxy/handler/kinesis.ex b/lib/rig_inbound_gateway/api_proxy/handler/kinesis.ex index 1faa7a20..a209580d 100644 --- a/lib/rig_inbound_gateway/api_proxy/handler/kinesis.ex +++ b/lib/rig_inbound_gateway/api_proxy/handler/kinesis.ex @@ -55,7 +55,7 @@ defmodule RigInboundGateway.ApiProxy.Handler.Kinesis do @impl Handler def handle_http_request(conn, api, endpoint, request_path) - @doc "CORS response for preflight request." + # CORS response for preflight request. def handle_http_request( %{method: "OPTIONS"} = conn, _, diff --git a/lib/rig_inbound_gateway/api_proxy/handler/nats.ex b/lib/rig_inbound_gateway/api_proxy/handler/nats.ex index 97e040a4..429f87f0 100644 --- a/lib/rig_inbound_gateway/api_proxy/handler/nats.ex +++ b/lib/rig_inbound_gateway/api_proxy/handler/nats.ex @@ -23,7 +23,7 @@ defmodule RigInboundGateway.ApiProxy.Handler.Nats do @doc @help_text def handle_http_request(conn, api, endpoint, request_path) - @doc "CORS response for preflight request." + # CORS response for preflight request. def handle_http_request(%{method: "OPTIONS"} = conn, _, %{"target" => "nats"} = _endpoint, _) do conn |> with_cors() diff --git a/lib/rig_inbound_gateway/api_proxy/presence_handler.ex b/lib/rig_inbound_gateway/api_proxy/presence_handler.ex index bc9deaab..3731f374 100644 --- a/lib/rig_inbound_gateway/api_proxy/presence_handler.ex +++ b/lib/rig_inbound_gateway/api_proxy/presence_handler.ex @@ -10,7 +10,7 @@ defmodule RigInboundGateway.ApiProxy.PresenceHandler do """ require Logger - @behaviour Phoenix.Tracker + use Phoenix.Tracker alias RigInboundGateway.Proxy diff --git a/lib/rig_inbound_gateway/api_proxy/sup.ex b/lib/rig_inbound_gateway/api_proxy/sup.ex index 14dcef7f..6d7dde95 100644 --- a/lib/rig_inbound_gateway/api_proxy/sup.ex +++ b/lib/rig_inbound_gateway/api_proxy/sup.ex @@ -12,7 +12,7 @@ defmodule RigInboundGateway.ApiProxy.Sup do def init(:ok) do children = [ - worker(RigInboundGateway.ApiProxy.PresenceHandler, _args = [[pubsub_server: Rig.PubSub]]) + {RigInboundGateway.ApiProxy.PresenceHandler, [pubsub_server: Rig.PubSub]} ] Supervisor.init(children, strategy: :one_for_one) diff --git a/lib/rig_inbound_gateway_web/v1/websocket.ex b/lib/rig_inbound_gateway_web/v1/websocket.ex index ebdce252..3fbab701 100644 --- a/lib/rig_inbound_gateway_web/v1/websocket.ex +++ b/lib/rig_inbound_gateway_web/v1/websocket.ex @@ -96,13 +96,13 @@ defmodule RigInboundGatewayWeb.V1.Websocket do # --- - @doc ~S"The client may send this as the response to the :ping heartbeat." + # The client may send this as the response to the :ping heartbeat. @impl :cowboy_websocket def websocket_handle({:pong, _app_data}, state), do: {:ok, state, :hibernate} @impl :cowboy_websocket def websocket_handle(:pong, state), do: {:ok, state, :hibernate} - @doc ~S"Allow the client to send :ping messages to test connectivity." + # Allow the client to send :ping messages to test connectivity. @impl :cowboy_websocket def websocket_handle({:ping, app_data}, _state), do: {:reply, {:pong, app_data}, :hibernate} From 097cd658381720d16e73970b5940b40ad7c92336 Mon Sep 17 00:00:00 2001 From: Kevin Bader Date: Fri, 27 Nov 2020 21:22:01 +0100 Subject: [PATCH 7/9] Fix SSE cowboy_loop handler --- lib/rig_inbound_gateway_web/v1/sse.ex | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/rig_inbound_gateway_web/v1/sse.ex b/lib/rig_inbound_gateway_web/v1/sse.ex index b50f3049..0b99b4ca 100644 --- a/lib/rig_inbound_gateway_web/v1/sse.ex +++ b/lib/rig_inbound_gateway_web/v1/sse.ex @@ -50,7 +50,8 @@ defmodule RigInboundGatewayWeb.V1.SSE do {:error, reason} -> req = :cowboy_req.reply(400, %{}, reason, req) - {:stop, req, :unknown_state} + # Returning :ok at this point simply closes the handler. + {:ok, req, :unknown_state} end end @@ -84,7 +85,8 @@ defmodule RigInboundGatewayWeb.V1.SSE do on_error = fn reason -> req = :cowboy_req.reply(400, %{}, reason, req) - {:stop, req, :no_state} + # Returning :ok at this point simply closes the handler. + {:ok, req, :no_state} end ConnectionInit.set_up( From 941b6c19f43b9382267bab265d0c2df4cfa7da6b Mon Sep 17 00:00:00 2001 From: Kevin Bader Date: Fri, 27 Nov 2020 21:24:47 +0100 Subject: [PATCH 8/9] Fix unused-variable warnings --- test/blacklist_test.exs | 6 +++--- test/event_subscription_test.exs | 2 +- test/rig_inbound_gateway/rig/proxy_test.exs | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/test/blacklist_test.exs b/test/blacklist_test.exs index 9e4b02e2..765d82d2 100644 --- a/test/blacklist_test.exs +++ b/test/blacklist_test.exs @@ -56,12 +56,12 @@ defmodule BlacklistTest do # Verify all connections but the last one have been dropped: assert {_event, sse} = SseClient.read_event(sse, "rig.session_killed") - assert {:closed, sse} = SseClient.status(sse) + assert {:closed, _sse} = SseClient.status(sse) - assert {:closed, ws} = WsClient.status(ws) + assert {:closed, _ws} = WsClient.status(ws) assert {:ok, other_sse} = SseClient.refute_receive(other_sse) - assert {:open, other_sse} = SseClient.status(other_sse) + assert {:open, _other_sse} = SseClient.status(other_sse) end end diff --git a/test/event_subscription_test.exs b/test/event_subscription_test.exs index 9cbd7138..21b5e1d3 100644 --- a/test/event_subscription_test.exs +++ b/test/event_subscription_test.exs @@ -383,7 +383,7 @@ defmodule RigInboundGateway.EventSubscriptionTest do # After this, greetings to Alice are no longer forwarded: :ok = submit_event(greeting_for_alice()) - assert {:ok, ref} = client.refute_receive(ref) + assert {:ok, _ref} = client.refute_receive(ref) end end end diff --git a/test/rig_inbound_gateway/rig/proxy_test.exs b/test/rig_inbound_gateway/rig/proxy_test.exs index 6f50c153..1c3f61fe 100644 --- a/test/rig_inbound_gateway/rig/proxy_test.exs +++ b/test/rig_inbound_gateway/rig/proxy_test.exs @@ -36,7 +36,7 @@ defmodule RigInboundGateway.ProxyTest do end) =~ error - assert_received({:EXIT, proxy, :ReverseProxyConfigurationError}) + assert_received({:EXIT, _proxy, :ReverseProxyConfigurationError}) end describe "validations" do From d8e86ade32c0cf0e3767226a8ea773d2e1aea6dc Mon Sep 17 00:00:00 2001 From: Kevin Bader Date: Fri, 27 Nov 2020 21:29:39 +0100 Subject: [PATCH 9/9] Add to Changelog: #341 Elixir 1.11 OTP 23 --- CHANGELOG.md | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 053b89a1..dae12028 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -31,7 +31,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 helm repo add accenture https://accenture.github.io/reactive-interaction-gateway helm install rig accenture/reactive-interaction-gateway ``` - + More information, follow the [deployment Readme](./deployment/README.md). [#319](https://github.com/Accenture/reactive-interaction-gateway/issues/319) - make README smaller, easier to read and highlight features. [#284](https://github.com/Accenture/reactive-interaction-gateway/issues/284) @@ -55,7 +55,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - +### Technical Improvements + +- Updated dependencies to support OTP 23. We've also replaced the versions file with `.tool-versions`, which makes it easier for those using the [asdf package manager](https://asdf-vm.com/) - just run `asdf install` to obtain the correct versions of Erlang and Elixir. + [#341](https://github.com/Accenture/reactive-interaction-gateway/issues/341) ## [2.4.0] - 2020-05-07