flashtag_api

Build log

host

flashtag_api 0.0.1 · fail · run flashtag_api-0.0.1-1791184494949
1722 of 1722 lines
1Resolving Hex dependencies...2Resolution completed in 0.306s3Unchanged:4  circular_buffer 1.1.05  connection 1.0.46  cowboy 1.1.2 VULNERABLE!7    GHSA-w4f7-4cxr-rv3c (MEDIUM)8    aka: CVE-2026-43966, EEF-CVE-2026-439669    cowboy and gun affected by an HTTP Request/Response Splitting vulnerability10    https://osv.dev/vulnerability/GHSA-w4f7-4cxr-rv3c11  cowlib 1.0.2 VULNERABLE!12    EEF-CVE-2026-7790 (HIGH)13    aka: CVE-2026-7790, GHSA-32p9-57cr-4x6514    Unbounded chunk-size hex digits in cowlib cause quadratic CPU and memory DoS15    https://osv.dev/vulnerability/EEF-CVE-2026-77901617    EEF-CVE-2026-43970 (HIGH)18    aka: CVE-2026-43970, GHSA-84f2-rp86-235p19    Decompression Bomb in cow_spdy:inflate/2 Allows Memory Exhaustion via Crafted SPDY Frame20    https://osv.dev/vulnerability/EEF-CVE-2026-4397021  db_connection 1.1.322  decimal 1.9.0 VULNERABLE!23    EEF-CVE-2026-32686 (MEDIUM)24    aka: CVE-2026-32686, GHSA-rhv4-8758-jx7v25    Unbounded exponent in decimal enables unauthenticated DoS26    https://osv.dev/vulnerability/EEF-CVE-2026-3268627  ecto 2.2.1228  elixir_make 0.10.029  ex_machina 2.8.230  expo 1.1.131  flashtag 0.0.132  flashtag_api 0.0.133  gettext 0.26.234  interactive_cmd 0.1.435  mime 2.0.736  nerves 2.0.0-pre.237  nerves_discovery 0.1.538  nerves_logging 0.2.439  nerves_runtime 0.13.1340  nerves_system_bbb 2.30.241  nerves_system_br 1.34.442  nerves_system_mangopi_mq_pro 0.17.243  nerves_system_qemu_aarch64 0.4.244  nerves_system_rpi0 2.1.245  nerves_system_rpi4 2.1.246  nerves_system_rpi5 2.1.247  nerves_system_trellis 0.5.048  nerves_system_x86_64 1.34.249  nerves_toolchain_aarch64_nerves_linux_gnu 15.3.150  nerves_toolchain_armv6_nerves_linux_gnueabihf 15.3.151  nerves_toolchain_armv7_nerves_linux_gnueabihf 15.3.152  nerves_toolchain_riscv64_nerves_linux_gnu 15.3.153  nerves_toolchain_x86_64_nerves_linux_musl 15.3.154  nerves_uevent 0.1.755  phoenix 1.3.5 VULNERABLE!56    GHSA-p8f7-22gq-m7j9 (HIGH)57    aka: CVE-2022-4297558    Phoenix before 1.6.14 mishandles check_origin wildcarding59    https://osv.dev/vulnerability/GHSA-p8f7-22gq-m7j96061    EEF-CVE-2026-56812 (MEDIUM)62    aka: CVE-2026-56812, GHSA-63mc-hw7g-86rr63    Phoenix JavaScript presence client crashes on presence keys colliding with Object.prototype members in Presence.syncState/syncDiff64    https://osv.dev/vulnerability/EEF-CVE-2026-568126566    EEF-CVE-2026-56811 (HIGH)67    aka: CVE-2026-56811, GHSA-6983-jfq8-485w68    Phoenix transports do not limit channel joins per connection, enabling process-exhaustion denial of service69    https://osv.dev/vulnerability/EEF-CVE-2026-5681170  phoenix_ecto 3.6.071  phoenix_pubsub 1.1.272  plug 1.20.373  plug_crypto 2.2.074  poison 3.1.075  poolboy 1.5.276  postgrex 0.13.577  property_table 0.3.478  ranch 1.3.279  ring_logger 0.11.780  tablet 0.3.381  telemetry 1.4.282  toolshed 0.5.083  uboot_env 1.0.284Found packages with security advisories, see above for details85All dependencies have been fetched86    warning: String.strip/1 is deprecated. Use String.trim/1 instead87    │88  4 │   @version File.read!("VERSION") |> String.strip89    │                                            ~90    │91    └─ /work/proj/deps/poison/mix.exs:4:44: Poison.Mixfile (module)9293    warning: found quoted keyword "test" 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 quotes94    │95 66 │     ["test": ["ecto.create --quiet", "ecto.migrate", "test"]]96    │      ~97    │98    └─ /work/proj/deps/flashtag_api/mix.exs:66:699100    warning: found quoted keyword "test" 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 quotes101    │102 62 │       "test": ["ecto.create --quiet", "ecto.migrate", "test"]103    │       ~104    │105    └─ /work/proj/deps/flashtag/mix.exs:62:7106107warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"108  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2109  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1110  (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5111  (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2112  (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4113  (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2114115==> phoenix116Compiling 75 files (.ex)117     warning: the variable "prefix" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator118     │119 170 │       <<attr::size(prefix)-binary, ":unique">> -> attr120     │                    ~121     │122     └─ lib/mix/phoenix/schema.ex:170:20: Mix.Phoenix.Schema.drop_unique/1123124     warning: using single-quoted strings to represent charlists is deprecated.125     Use ~c"" if you indeed want a charlist or use "" instead.126     You may run "mix format --migrate" to change all single-quoted127     strings to use the ~c sigil and fix this warning.128     │129 310 │     :error_logger.warning_msg('~p ~p received unexpected message in handle_info/2: ~p~n',130     │                               ~131     │132     └─ lib/phoenix/channel/server.ex:310:31133134    warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead135    │136 39 │             Logger.warn "Phoenix is unable to create symlinks. Phoenix' code reloader will run " <>137    │                    ~138    │139    └─ lib/phoenix/code_reloader/server.ex:39:20: Phoenix.CodeReloader.Server.handle_call/3140141    warning: unused require Logger142    │143 20 │   require Logger144    │   ~145    │146    └─ lib/phoenix/endpoint/handler.ex:20:3147148    warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead149    │150 39 │       Logger.warn """151    │              ~152    │153    └─ lib/phoenix/endpoint/supervisor.ex:39:14: Phoenix.Endpoint.Supervisor.init/1154155    warning: the variable "prefix_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator156    │157 46 │       <<prefix::binary-size(prefix_size), ^suffix::binary>> -> prefix158    │                             ~159    │160    └─ lib/phoenix/naming.ex:46:29: Phoenix.Naming.unsuffix/2161162     warning: using single-quoted strings to represent charlists is deprecated.163     Use ~c"" if you indeed want a charlist or use "" instead.164     You may run "mix format --migrate" to change all single-quoted165     strings to use the ~c sigil and fix this warning.166     │167 315 │   @anno (if :erlang.system_info(:otp_release) >= '19' do168     │                                                  ~169     │170     └─ lib/phoenix/router.ex:315:50171172     warning: using single-quoted strings to represent charlists is deprecated.173     Use ~c"" if you indeed want a charlist or use "" instead.174     You may run "mix format --migrate" to change all single-quoted175     strings to use the ~c sigil and fix this warning.176     │177 195 │   @anno (if :erlang.system_info(:otp_release) >= '19' do178     │                                                  ~179     │180     └─ lib/phoenix/router/helpers.ex:195:50181182    warning: missing parentheses for expression following "do:" keyword. Parentheses are required to solve ambiguity inside keywords.183184    This error happens when you have function calls without parentheses inside keywords. For example:185186        function(arg, one: nested_call a, b, c)187        function(arg, one: if expr, do: :this, else: :that)188189    In the examples above, we don't know if the arguments "b" and "c" apply to the function "function" or "nested_call". Or if the keywords "do" and "else" apply to the function "function" or "if". You can solve this by explicitly adding parentheses:190191        function(arg, one: if(expr, do: :this, else: :that))192        function(arg, one: nested_call(a, b, c))193194    Ambiguity found at:195    │196 71 │     unless actions -- supported_actions == [], do: raise ArgumentError, """197    │     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~198    │199    └─ lib/phoenix/router/resource.ex:71200201    warning: duplicate key :route found in struct202    │203 24 │   defstruct [:path, :actions, :param, :route, :controller, :route, :member, :collection, :singleton]204    │   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~205    │206    └─ lib/phoenix/router/resource.ex:24: Phoenix.Router.Resource (module)207208     warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead209     │210 885 │       Logger.warn "send_download/3 has been invoked during an AJAX request. " <>211     │              ~212     │213     └─ lib/phoenix/controller.ex:885:14: Phoenix.Controller.warn_if_ajax/1214215     warning: invalid type annotation. The left side of :: must be a variable, got: {:ok, pid()} | {:error, reason :: term()}. Note "left | right :: ann" is the same as "(left | right) :: ann". To solve this, use parentheses around the union operands: "left | (right :: ann)"216     │217 110 │   @callback start_link(Keyword.t) :: {:ok, pid()} | {:error, reason :: term()} :: :ignore218     │   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~219     │220     └─ lib/phoenix/presence.ex:110: Phoenix.Presence (module)221222     warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead223     │224 304 │     Logger.warn fn -> "Ignoring unmatched topic \"#{msg.topic}\" in #{inspect(socket.handler)}" end225     │            ~226     │227     └─ lib/phoenix/socket/transport.ex:304:12: Phoenix.Socket.Transport.reply_ignore/2228229     warning: using single-quoted strings to represent charlists is deprecated.230     Use ~c"" if you indeed want a charlist or use "" instead.231     You may run "mix format --migrate" to change all single-quoted232     strings to use the ~c sigil and fix this warning.233     │234 174 │   @anno (if :erlang.system_info(:otp_release) >= '19' do235     │                                                  ~236     │237     └─ lib/phoenix/template.ex:174:50238239     warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead240     │241 227 │     Logger.warn ":max_age was not set on Phoenix.Token.verify/4. " <>242     │            ~243     │244     └─ lib/phoenix/token.ex:227:12: Phoenix.Token.expired?/2245246     warning: System.stacktrace/0 is deprecated. Use __STACKTRACE__ instead247     │248 647 │       exception -> {:error, {exception, System.stacktrace()}}249     │                                                ~250     │251     └─ lib/phoenix/test/conn_test.ex:647:48: Phoenix.ConnTest.wrap_request/1252253    warning: Supervisor.Spec.worker/3 is deprecated. Use the new child specifications outlined in the Supervisor module instead254    │255 12 │       worker(Phoenix.Transports.LongPoll.Server, [], restart: :temporary)256    │       ~257    │258    └─ lib/phoenix/transports/long_poll_server.ex:12:7: Phoenix.Transports.LongPoll.Supervisor.init/1259260    warning: Supervisor.Spec.supervise/2 is deprecated. Use the new child specifications outlined in the Supervisor module instead261    │262 14 │     supervise(children, strategy: :simple_one_for_one)263    │     ~264    │265    └─ lib/phoenix/transports/long_poll_server.ex:14:5: Phoenix.Transports.LongPoll.Supervisor.init/1266267     warning: expected a module (an atom) when invoking config/1 in expression:268269         endpoint.config(:endpoint_id)270271     where "endpoint" was given the type:272273         # type: dynamic(%{..., __pubsub_server__: atom()})274         # from: lib/phoenix/transports/long_poll.ex:199:10275         verify_token(endpoint, token, opts)276277     type warning found at:278     │279 201 │         server_ref = server_ref(endpoint.config(:endpoint_id), id, pid, priv_topic)280     │                                          ~281     │282     └─ lib/phoenix/transports/long_poll.ex:201:42: Phoenix.Transports.LongPoll.resume_session/3283284     warning: unknown key .__pubsub_server__ in expression:285286         endpoint.__pubsub_server__287288     the given type does not have the given key:289290         dynamic(291           %Phoenix.Socket{292             id: term(),293             assigns: term(),294             channel: term(),295             channel_pid: term(),296             endpoint: atom(),297             handler: term(),298             joined: term(),299             pubsub_server: term(),300             ref: term(),301             join_ref: term(),302             topic: term(),303             transport: term(),304             transport_pid: term(),305             transport_name: term(),306             serializer: term(),307             private: term(),308             vsn: term()309           } or310             %Plug.Conn{311               adapter: term(),312               assigns: term(),313               body_params: term(),314               cookies: term(),315               halted: term(),316               host: term(),317               method: term(),318               owner: term(),319               params: term(),320               path_info: term(),321               path_params: term(),322               port: term(),323               private: term(),324               query_params: term(),325               query_string: term(),326               remote_ip: term(),327               req_cookies: term(),328               req_headers: term(),329               request_path: term(),330               resp_body: term(),331               resp_cookies: term(),332               resp_headers: term(),333               scheme: term(),334               script_name: term(),335               secret_key_base: term(),336               state: term(),337               status: term()338             } or atom() or binary()339         )340341     where "endpoint" was given the type:342343         # type: dynamic(%Phoenix.Socket{endpoint: atom()} or %Plug.Conn{} or atom() or binary())344         # from: lib/phoenix/transports/long_poll.ex:254:19345         Phoenix.Token.sign(endpoint, Atom.to_string(endpoint.__pubsub_server__), data, opts[:crypto])346347     type warning found at:348     │349 254 │     Phoenix.Token.sign(endpoint, Atom.to_string(endpoint.__pubsub_server__), data, opts[:crypto])350     │                                                          ~~~~~~~~~~~~~~~~~351     │352     └─ lib/phoenix/transports/long_poll.ex:254:58: Phoenix.Transports.LongPoll.sign_token/3353354     warning: Plug.Crypto.safe_binary_to_term/1 is undefined or private355     │356 176 │         %{data: data, signed: signed} = Plug.Crypto.safe_binary_to_term(message)357     │                                                     ~358     │359     └─ lib/phoenix/token.ex:176:53: Phoenix.Token.verify/4360361     warning: a struct for Phoenix.Socket is expected on struct update:362363         %Phoenix.Socket{socket | id: id}364365     but got type:366367         dynamic()368369     where "socket" was given the type:370371         # type: dynamic()372         # from: lib/phoenix/socket/transport.ex373         {:ok, socket}374375     when defining the variable "socket", you must also pattern match on "%Phoenix.Socket{}"376377     type warning found at:378     │379 195 │           id when is_binary(id) -> {:ok, %Socket{socket | id: id}}380     │                                          ~381     │382     └─ lib/phoenix/socket/transport.ex:195:42: Phoenix.Socket.Transport.do_connect/7383384    warning: @behaviour :cowboy_websocket_handler does not exist (in module Phoenix.Endpoint.CowboyWebSocket)385    │386  1 │ defmodule Phoenix.Endpoint.CowboyWebSocket do387    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~388    │389    └─ lib/phoenix/endpoint/cowboy_websocket.ex:1: Phoenix.Endpoint.CowboyWebSocket (module)390391    warning: Plug.Adapters.Cowboy.Conn.conn/2 is undefined (module Plug.Adapters.Cowboy.Conn is not available or is yet to be defined)392    │393 10 │     conn = @connection.conn(req, transport)394    │                        ~395    │396    └─ lib/phoenix/endpoint/cowboy_websocket.ex:10:24: Phoenix.Endpoint.CowboyWebSocket.init/3397398    warning: a struct for Plug.Conn is expected on struct update:399400        %Plug.Conn{conn | state: :sent}401402    but got type:403404        dynamic()405406    where "conn" was given the type:407408        # type: dynamic()409        # from: lib/phoenix/endpoint/render_errors.ex:79:21410        conn411412    when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"413414    type warning found at:415    │416 83 │         %Plug.Conn{conn | state: :sent}417    │         ~418    │419    └─ lib/phoenix/endpoint/render_errors.ex:83:9: Phoenix.Endpoint.RenderErrors.maybe_render/5420421    warning: :cowboy_req.compact/1 is undefined (module :cowboy_req is not available or is yet to be defined)422    │423 73 │     {:ok, :cowboy_req.compact(req), {handler, state}, timeout}424    │                       ~425    │426    └─ lib/phoenix/endpoint/cowboy_websocket.ex:73:23: Phoenix.Endpoint.CowboyWebSocket.websocket_init/3427428    warning: a struct for Plug.Conn is expected on struct update:429430        %Plug.Conn{conn | query_params: %{}, params: %{}}431432    but got type:433434        dynamic(%{..., params: %Plug.Conn.Unfetched{}})435436    where "conn" was given the types:437438        # type: dynamic(%{..., params: term()})439        # from: lib/phoenix/endpoint/render_errors.ex:94:17440        conn.params441442        # type: dynamic(%{..., params: %Plug.Conn.Unfetched{}})443        # from: lib/phoenix/endpoint/render_errors.ex:94:17444        conn.params445446    when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"447448    type warning found at:449    │450 95 │         %Plug.Conn.Unfetched{} -> %Plug.Conn{conn | query_params: %{}, params: %{}}451    │                                   ~452    │453    └─ lib/phoenix/endpoint/render_errors.ex:95:35: Phoenix.Endpoint.RenderErrors.maybe_fetch_query_params/1454455    warning: System.stacktrace/0 is deprecated. Use __STACKTRACE__ instead456    │457 23 │         {:upgrade, :protocol, __MODULE__, req, {:error, mfa, kind, reason, System.stacktrace}}458    │                                                                                   ~459    │460    └─ lib/phoenix/endpoint/cowboy_websocket.ex:23:83: Phoenix.Endpoint.CowboyWebSocket.init/3461462    warning: a struct for Plug.Conn is expected on struct update:463464        %Plug.Conn{conn | query_params: %{}, params: params}465466    but got type:467468        dynamic(%{..., params: not %Plug.Conn.Unfetched{}})469470    where "conn" was given the types:471472        # type: dynamic(%{..., params: term()})473        # from: lib/phoenix/endpoint/render_errors.ex:94:17474        conn.params475476        # type: dynamic(%{..., params: not %Plug.Conn.Unfetched{}})477        # from: lib/phoenix/endpoint/render_errors.ex:94:17478        conn.params479480    when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"481482    type warning found at:483    │484 96 │         params -> %Plug.Conn{conn | query_params: %{}, params: params}485    │                   ~486    │487    └─ lib/phoenix/endpoint/render_errors.ex:96:19: Phoenix.Endpoint.RenderErrors.maybe_fetch_query_params/1488489     warning: Supervisor.Spec.supervisor/2 is deprecated. Use the new child specifications outlined in the Supervisor module instead490     │491 198 │       supervisor(Task.Supervisor, [[name: task_supervisor]]),492     │       ~493     │494     └─ lib/phoenix/presence.ex:198:7: Phoenix.Presence.start_link/4495496     warning: Supervisor.Spec.worker/2 is deprecated. Use the new child specifications outlined in the Supervisor module instead497     │498 199 │       worker(Phoenix.Tracker, [module, opts, opts])499     │       ~500     │501     └─ lib/phoenix/presence.ex:199:7: Phoenix.Presence.start_link/4502503     warning: a struct for Plug.Conn is expected on struct update:504505         %Plug.Conn{conn | params: params}506507     but got type:508509         dynamic(%{..., params: map()})510511     where "conn" was given the type:512513         # type: dynamic(%{..., params: map()})514         # from: lib/phoenix/controller.ex:912:17515         Map.get(conn.params, required_key)516517     when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"518519     type warning found at:520     │521 919 │     %Plug.Conn{conn | params: params}522     │     ~523     │524     └─ lib/phoenix/controller.ex:919:5: Phoenix.Controller.scrub_params/2525526    warning: expected a map or struct when accessing .url in expression:527528        endpoint.url529530    where "endpoint" was given the types:531532        # type: dynamic(atom())533        # from: lib/phoenix/router/helpers.ex:24:20534        endpoint535536        # type: atom()537        # from: lib/phoenix/router/helpers.ex:24:35538        is_atom(endpoint)539540    hint: "var.field" (without parentheses) means "var" is a map() while "var.fun()" (with parentheses) means "var" is an atom()541542    type warning found at:543    │544 25 │     endpoint.url545    │              ~546    │547    └─ lib/phoenix/router/helpers.ex:25:14: Phoenix.Router.Helpers.url/2548549     warning: a struct for Plug.Conn is expected on struct update:550551         %Plug.Conn{conn | path_info: path, script_name: script}552553     but got type:554555         dynamic()556557     where "conn" was given the type:558559         # type: dynamic()560         # from: lib/phoenix/router/route.ex:147:10561         conn = target.call(%Plug.Conn{...}, opts)562563     when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"564565     type warning found at:566     │567 148 │     %Plug.Conn{conn | path_info: path, script_name: script}568     │     ~569     │570     └─ lib/phoenix/router/route.ex:148:5: Phoenix.Router.Route.forward/4571572     warning: System.stacktrace/0 is deprecated. Use __STACKTRACE__ instead573     │574 284 │             Phoenix.PlugError.reraise(piped_conn, :error, reason, System.stacktrace())575     │                                                                          ~576     │577     └─ lib/phoenix/router.ex:284:74: Phoenix.Router.__call__/1578579    warning: Supervisor.Spec.supervise/2 is deprecated. Use the new child specifications outlined in the Supervisor module instead580    │581 71 │     supervise(children, strategy: :one_for_one)582    │     ~583    │584    └─ lib/phoenix/endpoint/supervisor.ex:71:5: Phoenix.Endpoint.Supervisor.init/1585586    warning: Supervisor.Spec.worker/2 is deprecated. Use the new child specifications outlined in the Supervisor module instead587    │588 76 │     [worker(Phoenix.Config, args)]589    │      ~590    │591    └─ lib/phoenix/endpoint/supervisor.ex:76:6: Phoenix.Endpoint.Supervisor.config_children/3592593    warning: Supervisor.Spec.supervisor/2 is deprecated. Use the new child specifications outlined in the Supervisor module instead594    │595 84 │       [supervisor(adapter, [mod.__pubsub_server__(), pub_conf])]596    │        ~597    │598    └─ lib/phoenix/endpoint/supervisor.ex:84:8: Phoenix.Endpoint.Supervisor.pubsub_children/2599    └─ lib/phoenix/endpoint/supervisor.ex:96:8: Phoenix.Endpoint.Supervisor.server_children/3600    └─ lib/phoenix/endpoint/supervisor.ex:97:8: Phoenix.Endpoint.Supervisor.server_children/3601602     warning: Supervisor.Spec.worker/3 is deprecated. Use the new child specifications outlined in the Supervisor module instead603     │604 106 │         worker(Phoenix.Endpoint.Watcher, watcher_args(cmd, args),605     │         ~606     │607     └─ lib/phoenix/endpoint/supervisor.ex:106:9: Phoenix.Endpoint.Supervisor.watcher_children/3608609     warning: expected a module (an atom) when invoking path/1 in expression:610611         endpoint.path("/")612613     where "endpoint" was given the type:614615         # type: dynamic(%{..., host: term()})616         # from: lib/phoenix/endpoint/supervisor.ex:312:14617         endpoint.host618619     type warning found at:620     │621 313 │     endpoint.path("/")622     │              ~623     │624     └─ lib/phoenix/endpoint/supervisor.ex:313:14: Phoenix.Endpoint.Supervisor.warmup/1625626    warning: Supervisor.Spec.supervise/2 is deprecated. Use the new child specifications outlined in the Supervisor module instead627    │628 35 │     supervise(children, strategy: :one_for_one)629    │     ~630    │631    └─ lib/phoenix/endpoint/handler.ex:35:5: Phoenix.Endpoint.Handler.init/1632633    warning: Enum.partition/2 is deprecated. Use Enum.split_with/2 instead634    │635 39 │     {config_keywords, config_other} = Enum.partition(config, &keyword_item?/1)636    │                                            ~637    │638    └─ lib/phoenix/endpoint/handler.ex:39:44: Phoenix.Endpoint.Handler.default/3639640    warning: Plug.Adapters.Cowboy.child_spec/4 is deprecated. Use Plug.Cowboy.child_spec/4 instead641    │642 81 │       Plug.Adapters.Cowboy.child_spec(scheme, endpoint, [], config)643    │                            ~644    │645    └─ lib/phoenix/endpoint/cowboy_handler.ex:81:28: Phoenix.Endpoint.CowboyHandler.child_spec/3646647     warning: :ranch.get_addr/1 is undefined (module :ranch is not available or is yet to be defined)648     │649 113 │     {addr,port} = :ranch.get_addr(ref)650     │                          ~651     │652     └─ lib/phoenix/endpoint/cowboy_handler.ex:113:26: Phoenix.Endpoint.CowboyHandler.info/3653654     warning: comparison between distinct types found:655656         !Path.extname(file_path) == ".gz"657658     given types:659660         dynamic(boolean()) == binary()661662     where "file_path" was given the type:663664         # type: dynamic(binary() or empty_list() or non_empty_list(term(), term()))665         # from: lib/phoenix/digester.ex:147:45666         Path.basename(file_path)667668     While Elixir can compare across all types, you are comparing across types which are always disjoint, and the result is either always true or always false669670     type warning found at:671     │672 148 │       !Path.extname(file_path) == ".gz"673     │                                ~674     │675     └─ lib/phoenix/digester.ex:148:32: Phoenix.Digester.uncompressed_digested_file?/1676677    warning: System.stacktrace/0 is deprecated. Use __STACKTRACE__ instead678    │679 61 │             IO.puts Exception.format(kind, reason, System.stacktrace)680    │                                                           ~681    │682    └─ lib/phoenix/code_reloader/server.ex:61:59: Phoenix.CodeReloader.Server.handle_call/3683684    warning: Supervisor.Spec.worker/2 is deprecated. Use the new child specifications outlined in the Supervisor module instead685    │686 51 │       worker(Phoenix.CodeReloader.Server, [])687    │       ~688    │689    └─ lib/phoenix.ex:51:7: Phoenix.start/2690691     warning: Enum.partition/2 is deprecated. Use Enum.split_with/2 instead692     │693 155 │     Enum.partition attrs, fn694     │          ~695     │696     └─ lib/mix/tasks/phoenix.gen.model.ex:155:10: Mix.Tasks.Phoenix.Gen.Model.partition_attrs_and_assocs/1697698    warning: expected a map or struct when accessing .__phoenix_recompile__? in expression:699700        mod.__phoenix_recompile__?701702    where "mod" was given the type:703704        # type: dynamic(atom())705        # from: lib/mix/tasks/compile.phoenix.ex:34:12706        Code.ensure_loaded?(mod)707708    hint: "var.field" (without parentheses) means "var" is a map() while "var.fun()" (with parentheses) means "var" is an atom()709710    type warning found at:711    │712 36 │         mod.__phoenix_recompile__?713    │             ~714    │715    └─ lib/mix/tasks/compile.phoenix.ex:36:13: Mix.Tasks.Compile.Phoenix.modules_for_recompilation/1716717     warning: Enum.partition/2 is deprecated. Use Enum.split_with/2 instead718     │719 234 │       Enum.partition(attrs, fn720     │            ~721     │722     └─ lib/mix/phoenix/schema.ex:234:12: Mix.Phoenix.Schema.partition_attrs_and_assocs/2723724Generated phoenix app725warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"726  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2727  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1728  (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5729  (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2730  (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4731  (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2732733==> ecto734Compiling 70 files (.ex)735     warning: using single-quoted strings to represent charlists is deprecated.736     Use ~c"" if you indeed want a charlist or use "" instead.737     You may run "mix format --migrate" to change all single-quoted738     strings to use the ~c sigil and fix this warning.739     │740 166 │     defp insert_all_value(_),   do: '?'741     │                                     ~742     │743     └─ lib/ecto/adapters/mysql/connection.ex:166:37744745     warning: using single-quoted strings to represent charlists is deprecated.746     Use ~c"" if you indeed want a charlist or use "" instead.747     You may run "mix format --migrate" to change all single-quoted748     strings to use the ~c sigil and fix this warning.749     │750 354 │       '?'751     │       ~752     │753     └─ lib/ecto/adapters/mysql/connection.ex:354:7754755      warning: missing parentheses for expression following "do:" keyword. Parentheses are required to solve ambiguity inside keywords.756757      This error happens when you have function calls without parentheses inside keywords. For example:758759          function(arg, one: nested_call a, b, c)760          function(arg, one: if expr, do: :this, else: :that)761762      In the examples above, we don't know if the arguments "b" and "c" apply to the function "function" or "nested_call". Or if the keywords "do" and "else" apply to the function "function" or "if". You can solve this by explicitly adding parentheses:763764          function(arg, one: if(expr, do: :this, else: :that))765          function(arg, one: nested_call(a, b, c))766767      Ambiguity found at:768      │769 2286 │     raise ArgumentError, "cannot add constraint to changeset because it does not have a source, got: #{inspect data}"770      │     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~771      │772      └─ lib/ecto/changeset.ex:2286773774     warning: missing parentheses for expression following "do:" keyword. Parentheses are required to solve ambiguity inside keywords.775776     This error happens when you have function calls without parentheses inside keywords. For example:777778         function(arg, one: nested_call a, b, c)779         function(arg, one: if expr, do: :this, else: :that)780781     In the examples above, we don't know if the arguments "b" and "c" apply to the function "function" or "nested_call". Or if the keywords "do" and "else" apply to the function "function" or "if". You can solve this by explicitly adding parentheses:782783         function(arg, one: if(expr, do: :this, else: :that))784         function(arg, one: nested_call(a, b, c))785786     Ambiguity found at:787     │788 265 │     do: raise ArgumentError, "a constraint must have either a check or exclude option"789     │     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~790     │791     └─ lib/ecto/migration/runner.ex:265792793     warning: missing parentheses for expression following "do:" keyword. Parentheses are required to solve ambiguity inside keywords.794795     This error happens when you have function calls without parentheses inside keywords. For example:796797         function(arg, one: nested_call a, b, c)798         function(arg, one: if expr, do: :this, else: :that)799800     In the examples above, we don't know if the arguments "b" and "c" apply to the function "function" or "nested_call". Or if the keywords "do" and "else" apply to the function "function" or "if". You can solve this by explicitly adding parentheses:801802         function(arg, one: if(expr, do: :this, else: :that))803         function(arg, one: nested_call(a, b, c))804805     Ambiguity found at:806     │807 267 │     do: raise ArgumentError, "a constraint must not have both check and exclude options"808     │     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~809     │810     └─ lib/ecto/migration/runner.ex:267811812     warning: atom ::: must be written between quotes, as in :"::", to avoid ambiguity813     │814 136 │       {:::, _, [left, _]} -> is_integer(left) or is_binary(left)815     │        ~816     │817     └─ lib/ecto/query/builder.ex:136:8818819     warning: unknown compiler variable "__" (expected one of __MODULE__, __ENV__, __DIR__, __CALLER__, __STACKTRACE__)820     │821 643 │   def quoted_type({:datetime_add, _, [_, _, __]}, _vars), do: :naive_datetime822     │                                             ~~823     │824     └─ lib/ecto/query/builder.ex:643:45: Ecto.Query.Builder.quoted_type/2825826     warning: unknown compiler variable "__" (expected one of __MODULE__, __ENV__, __DIR__, __CALLER__, __STACKTRACE__)827     │828 644 │   def quoted_type({:date_add, _, [_, _, __]}, _vars), do: :date829     │                                         ~~830     │831     └─ lib/ecto/query/builder.ex:644:41: Ecto.Query.Builder.quoted_type/2832833     warning: missing parentheses for expression following "do:" keyword. Parentheses are required to solve ambiguity inside keywords.834835     This error happens when you have function calls without parentheses inside keywords. For example:836837         function(arg, one: nested_call a, b, c)838         function(arg, one: if expr, do: :this, else: :that)839840     In the examples above, we don't know if the arguments "b" and "c" apply to the function "function" or "nested_call". Or if the keywords "do" and "else" apply to the function "function" or "if". You can solve this by explicitly adding parentheses:841842         function(arg, one: if(expr, do: :this, else: :that))843         function(arg, one: nested_call(a, b, c))844845     Ambiguity found at:846     │847 454 │     do: raise ArgumentError, "a changeset with action #{inspect given} was given to #{inspect repo}.#{action}/2"848     │     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~849     │850     └─ lib/ecto/repo/schema.ex:454851852    warning: unused require Ecto.Query853    │854  6 │   require Ecto.Query855    │   ~856    │857    └─ lib/ecto/repo/preloader.ex:6:3858859Compiling lib/ecto.ex (it's taking more than 10s)860    warning: Module.eval_quoted/2 is deprecated. Use Code.eval_quoted/3 instead861    │862  9 │   schema "schema_migrations" do863    │   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~864    │865    └─ lib/ecto/migration/schema_migration.ex:9: Ecto.Migration.SchemaMigration (module)866867     warning: struct DBConnection.OwnershipError is undefined (module DBConnection.OwnershipError is not available or is yet to be defined)868     │869 258 │       err in DBConnection.OwnershipError ->870     │           ~871     │872     └─ lib/ecto/adapters/sql.ex:258:11: Ecto.Adapters.SQL.sql_call/6873874      warning: Inspect.Algebra.surround_many/5 is deprecated. Use Inspect.Algebra.container_doc/6 instead875      │876 2400 │     surround_many("#Ecto.Changeset<", list, ">", opts, fn877      │     ~878      │879      └─ lib/ecto/changeset.ex:2400:5: Inspect.Ecto.Changeset.inspect/2880881     warning: System.stacktrace/0 is deprecated. Use __STACKTRACE__ instead882     │883 260 │         reraise %{err | message: message}, System.stacktrace884     │                                                   ~885     │886     └─ lib/ecto/adapters/sql.ex:260:51: Ecto.Adapters.SQL.sql_call/6887888    warning: incompatible types given to Mix.Ecto.ensure_started/2:889890        Mix.Ecto.ensure_started(repo, opts)891892    given types:893894        -dynamic(atom())-, dynamic(empty_list() or non_empty_list(term(), term()))895896    but expected one of:897898        %{..., __adapter__: atom()}, empty_list() or non_empty_list(term(), term())899900    where "opts" was given the type:901902        # type: dynamic(903          %{..., __struct__: atom()} or nil or empty_list() or non_empty_list(term(), term()) or904            non_struct_map()905        )906        # from: lib/mix/tasks/ecto.rollback.ex:64:10907        opts =908          if opts[:quiet] do909            Keyword.merge(opts, log: false, log_sql: false)910          else911            opts912          end913914    where "repo" was given the type:915916        # type: dynamic(atom())917        # from: lib/mix/tasks/ecto.rollback.ex:70:7918        Mix.Ecto.ensure_repo(repo, args)919920    type warning found at:921    │922 72 │       {:ok, pid, apps} = ensure_started(repo, opts)923    │                          ~924    │925    └─ lib/mix/tasks/ecto.rollback.ex:72:26: Mix.Tasks.Ecto.Rollback.run/2926927     warning: the following clause will never match:928929         [{^module, :changeset, args_or_arity, _}] when args_or_arity == 2 when length(args_or_arity) == 2 ->930931     because it attempts to match on the result of:932933         System.stacktrace()934935     which has type:936937         empty_list()938939     where "args_or_arity" was given the type:940941         # type: float() or integer() or non_empty_list(term())942         # from: lib/ecto/changeset.ex943         (_() when args_or_arity == 2) when length(args_or_arity) == 2944945     where "module" was given the type:946947         # type: dynamic()948         # from: lib/ecto/changeset.ex:733:30949         module950951     type warning found at:952     │953 741 │ ...                   when length(args_or_arity) == 2 ->954     │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~955     │956     └─ lib/ecto/changeset.ex:741: Ecto.Changeset.on_cast_default/2957958    warning: incompatible types given to Mix.Ecto.ensure_started/2:959960        Mix.Ecto.ensure_started(repo, all: true)961962    given types:963964        -dynamic(atom())-, non_empty_list({:all, true})965966    but expected one of:967968        %{..., __adapter__: atom()}, empty_list() or non_empty_list(term(), term())969970    where "repo" was given the type:971972        # type: dynamic(atom())973        # from: lib/mix/tasks/ecto.migrations.ex:37:7974        Mix.Ecto.ensure_repo(repo, args)975976    type warning found at:977    │978 39 │       {:ok, pid, _} = ensure_started(repo, all: true)979    │                       ~980    │981    └─ lib/mix/tasks/ecto.migrations.ex:39:23: Mix.Tasks.Ecto.Migrations.run/3982983    warning: incompatible types given to Mix.Ecto.ensure_started/2:984985        Mix.Ecto.ensure_started(repo, opts)986987    given types:988989        -dynamic(atom())-, dynamic(empty_list() or non_empty_list(term(), term()))990991    but expected one of:992993        %{..., __adapter__: atom()}, empty_list() or non_empty_list(term(), term())994995    where "opts" was given the type:996997        # type: dynamic(998          %{..., __struct__: atom()} or nil or empty_list() or non_empty_list(term(), term()) or999            non_struct_map()1000        )1001        # from: lib/mix/tasks/ecto.migrate.ex:68:101002        opts =1003          if opts[:quiet] do1004            Keyword.merge(opts, log: false, log_sql: false)1005          else1006            opts1007          end10081009    where "repo" was given the type:10101011        # type: dynamic(atom())1012        # from: lib/mix/tasks/ecto.migrate.ex:74:71013        Mix.Ecto.ensure_repo(repo, args)10141015    type warning found at:1016    │1017 76 │       {:ok, pid, apps} = ensure_started(repo, opts)1018    │                          ~1019    │1020    └─ lib/mix/tasks/ecto.migrate.ex:76:26: Mix.Tasks.Ecto.Migrate.run/210211022     warning: System.stacktrace/0 is deprecated. Use __STACKTRACE__ instead1023     │1024 739 │           case System.stacktrace do1025     │                       ~1026     │1027     └─ lib/ecto/changeset.ex:739:23: Ecto.Changeset.on_cast_default/210281029    warning: incompatible types given to Mix.Ecto.source_repo_priv/1:10301031        Mix.Ecto.source_repo_priv(repo)10321033    given types:10341035        -dynamic(%{..., __adapter__: atom(), config: empty_list() or non_empty_list(term(), term())})-10361037    but expected one of:10381039        atom()10401041    where "repo" was given the types:10421043        # type: dynamic(%{..., config: empty_list() or non_empty_list(term(), term())})1044        # from: lib/mix/tasks/ecto.load.ex:70:221045        Keyword.merge(repo.config, opts)10461047        # type: dynamic(%{..., __adapter__: atom(), config: empty_list() or non_empty_list(term(), term())})1048        # from: lib/mix/tasks/ecto.load.ex:72:271049        repo.__adapter__.structure_load(Mix.Ecto.source_repo_priv(repo), config)10501051    type warning found at:1052    │1053 72 │     case repo.__adapter__.structure_load(source_repo_priv(repo), config) do1054    │                                          ~1055    │1056    └─ lib/mix/tasks/ecto.load.ex:72:42: Mix.Tasks.Ecto.Load.load_structure/210571058    warning: expected a map or struct when accessing .__adapter__ in expression:10591060        repo.__adapter__10611062    where "repo" was given the type:10631064        # type: dynamic(atom())1065        # from: lib/mix/tasks/ecto.load.ex:53:71066        Mix.Ecto.ensure_repo(repo, args)10671068    hint: "var.field" (without parentheses) means "var" is a map() while "var.fun()" (with parentheses) means "var" is an atom()10691070    type warning found at:1071    │1072 54 │       ensure_implements(repo.__adapter__, Ecto.Adapter.Structure,1073    │                              ~1074    │1075    └─ lib/mix/tasks/ecto.load.ex:54:30: Mix.Tasks.Ecto.Load.run/110761077    warning: expected a map or struct when accessing .__adapter__ in expression:10781079        repo.__adapter__10801081    where "repo" was given the type:10821083        # type: dynamic(atom())1084        # from: lib/mix/tasks/ecto.drop.ex:39:71085        Mix.Ecto.ensure_repo(repo, args)10861087    hint: "var.field" (without parentheses) means "var" is a map() while "var.fun()" (with parentheses) means "var" is an atom()10881089    type warning found at:1090    │1091 40 │       ensure_implements(repo.__adapter__, Ecto.Adapter.Storage,1092    │                              ~1093    │1094    └─ lib/mix/tasks/ecto.drop.ex:40:30: Mix.Tasks.Ecto.Drop.run/110951096    warning: expected a map or struct when accessing .__adapter__ in expression:10971098        repo.__adapter__10991100    where "repo" was given the type:11011102        # type: dynamic(atom())1103        # from: lib/mix/tasks/ecto.dump.ex:50:71104        Mix.Ecto.ensure_repo(repo, args)11051106    hint: "var.field" (without parentheses) means "var" is a map() while "var.fun()" (with parentheses) means "var" is an atom()11071108    type warning found at:1109    │1110 51 │       ensure_implements(repo.__adapter__, Ecto.Adapter.Structure,1111    │                              ~1112    │1113    └─ lib/mix/tasks/ecto.dump.ex:51:30: Mix.Tasks.Ecto.Dump.run/111141115    warning: expected a map or struct when accessing .__adapter__ in expression:11161117        repo.__adapter__11181119    where "repo" was given the type:11201121        # type: dynamic(atom())1122        # from: lib/mix/tasks/ecto.create.ex:37:71123        Mix.Ecto.ensure_repo(repo, args)11241125    hint: "var.field" (without parentheses) means "var" is a map() while "var.fun()" (with parentheses) means "var" is an atom()11261127    type warning found at:1128    │1129 38 │       ensure_implements(repo.__adapter__, Ecto.Adapter.Storage,1130    │                              ~1131    │1132    └─ lib/mix/tasks/ecto.create.ex:38:30: Mix.Tasks.Ecto.Create.run/111331134    warning: incompatible types given to get_source/1:11351136        get_source(repo)11371138    given types:11391140        -dynamic(atom())-11411142    but expected one of:11431144        %{..., config: empty_list() or non_empty_list(term(), term())}11451146    where "repo" was given the type:11471148        # type: dynamic(atom())1149        # from: lib/ecto/migration/schema_migration.ex:24:131150        repo.all(1151          Map.put(1152            (1153              query =1154                (1155                  query = {get_source(repo), Ecto.Migration.SchemaMigration}1156                  Ecto.Query.Builder.From.apply(query, 1)1157                )1158        1159              Ecto.Query.Builder.Select.apply(query, %Ecto.Query.SelectExpr{1160                ...,1161                expr: {{:., [], [{:&, [], [0]}, :version]}, [], []},1162                file: "/work/proj/deps/ecto/lib/ecto/migration/schema_migration.ex",1163                line: 22,1164                take: %{}1165              })1166            ),1167            :prefix,1168            prefix1169          ), timeout: :infinity, log: false)11701171    type warning found at:1172    │1173 22 │     from(p in {get_source(repo), __MODULE__}, select: p.version)1174    │                ~1175    │1176    └─ lib/ecto/migration/schema_migration.ex:22:16: Ecto.Migration.SchemaMigration.migrated_versions/211771178    warning: incompatible types given to get_source/1:11791180        get_source(repo)11811182    given types:11831184        -dynamic(atom())-11851186    but expected one of:11871188        %{..., config: empty_list() or non_empty_list(term(), term())}11891190    where "repo" was given the type:11911192        # type: dynamic(atom())1193        # from: lib/ecto/migration/schema_migration.ex:30:131194        repo.insert!(1195          Ecto.put_meta(%Ecto.Migration.SchemaMigration{..., version: version},1196            prefix: prefix,1197            source: get_source(repo)1198          ), timeout: :infinity, log: false)11991200    type warning found at:1201    │1202 29 │     |> Ecto.put_meta(prefix: prefix, source: get_source(repo))1203    │                                              ~1204    │1205    └─ lib/ecto/migration/schema_migration.ex:29:46: Ecto.Migration.SchemaMigration.up/312061207     warning: Code.ensure_compiled?/1 is deprecated. Use Code.ensure_compiled/1 instead (see the proper disclaimers in its docs)1208     │1209 856 │       not is_atom(queryable) or queryable in env.context_modules or not Code.ensure_compiled?(queryable) ->1210     │                                                                              ~1211     │1212     └─ lib/ecto/association.ex:856:78: Ecto.Association.ManyToMany.after_compile_validation/21213     └─ lib/ecto/association.ex:860:45: Ecto.Association.ManyToMany.after_compile_validation/212141215    warning: incompatible types given to get_source/1:12161217        get_source(repo)12181219    given types:12201221        -dynamic(atom())-12221223    but expected one of:12241225        %{..., config: empty_list() or non_empty_list(term(), term())}12261227    where "repo" was given the type:12281229        # type: dynamic(atom())1230        # from: lib/ecto/migration/schema_migration.ex:36:131231        repo.delete_all(1232          Map.put(1233            (1234              query =1235                (1236                  query = {get_source(repo), Ecto.Migration.SchemaMigration}1237                  Ecto.Query.Builder.From.apply(query, 1)1238                )1239        1240              Ecto.Query.Builder.Filter.apply(query, :where, %Ecto.Query.BooleanExpr{1241                expr: {:==, [], [{{:., [], [{:&, [], [0]}, :version]}, [], []}, {:^, [], [0]}]},1242                op: :and,1243                params: [{Ecto.Query.Builder.not_nil!(version), {0, :version}}],1244                file: "/work/proj/deps/ecto/lib/ecto/migration/schema_migration.ex",1245                line: 341246              })1247            ),1248            :prefix,1249            prefix1250          ), timeout: :infinity, log: false)12511252    type warning found at:1253    │1254 34 │     from(p in {get_source(repo), __MODULE__}, where: p.version == ^version)1255    │                ~1256    │1257    └─ lib/ecto/migration/schema_migration.ex:34:16: Ecto.Migration.SchemaMigration.down/312581259     warning: Code.ensure_compiled?/1 is deprecated. Use Code.ensure_compiled/1 instead (see the proper disclaimers in its docs)1260     │1261 715 │       not is_atom(queryable) or queryable in env.context_modules or not Code.ensure_compiled?(queryable) ->1262     │                                                                              ~1263     │1264     └─ lib/ecto/association.ex:715:78: Ecto.Association.BelongsTo.after_compile_validation/212651266     warning: the following conditional expression:12671268         is_atom(related)12691270     will always evaluate to:12711272         dynamic(true)12731274     where "related" was given the type:12751276         # type: dynamic(atom())1277         # from: lib/ecto/association.ex:730:151278         related = Ecto.Association.related_from_query(queryable)12791280     type warning found at:1281     │1282 732 │     unless is_atom(related) do1283     │     ~~~~~~~~~~~~~~~~~~~~~~~~~~1284     │1285     └─ lib/ecto/association.ex:732: Ecto.Association.BelongsTo.struct/312861287      warning: this clause of defp type_to_module/1 is never used (or it will always fail/warn when invoked)1288      │1289 1422 │   defp type_to_module(:naive_datetime), do: NaiveDateTime1290      │        ~1291      │1292      └─ lib/ecto/schema.ex:1422:8: Ecto.Schema.type_to_module/112931294     warning: Code.ensure_compiled?/1 is deprecated. Use Code.ensure_compiled/1 instead (see the proper disclaimers in its docs)1295     │1296 430 │       not is_atom(queryable) or queryable in env.context_modules or not Code.ensure_compiled?(queryable) ->1297     │                                                                              ~1298     │1299     └─ lib/ecto/association.ex:430:78: Ecto.Association.Has.after_compile_validation/213001301      warning: Code.ensure_compiled?/1 is deprecated. Use Code.ensure_compiled/1 instead (see the proper disclaimers in its docs)1302      │1303 1885 │         if Code.ensure_compiled?(type) and function_exported?(type, :type, 0) do1304      │                 ~1305      │1306      └─ lib/ecto/schema.ex:1885:17: Ecto.Schema.check_type!/313071308     warning: the following clause will never match:13091310         {:error, _} = error ->13111312     because it attempts to match on the result of:13131314         apply(changeset, adapter, :insert, args)13151316     which has type:13171318         dynamic({:invalid or :ok, term()})13191320     type warning found at:1321     │1322 219 │           {:error, _} = error ->1323     │                       ~1324     │1325     └─ lib/ecto/repo/schema.ex:219:23: Ecto.Repo.Schema.do_insert/413261327    warning: Mix.Project.compile/1 is deprecated. Use Mix.Task.run("compile", args) instead1328    │1329 62 │       Mix.Project.compile(args)1330    │                   ~1331    │1332    └─ lib/mix/ecto.ex:62:19: Mix.Ecto.ensure_repo/213331334     warning: expected a module (an atom) when invoking start_link/1 in expression:13351336         repo.start_link(pool_size: pool_size)13371338     where "pool_size" was given the type:13391340         # type: dynamic()1341         # from: lib/mix/ecto.ex:101:151342         pool_size = Keyword.get(opts, :pool_size, 1)13431344     where "repo" was given the type:13451346         # type: dynamic(%{..., __adapter__: atom()})1347         # from: lib/mix/ecto.ex:99:361348         repo.__adapter__.ensure_all_started(repo, :temporary)13491350     type warning found at:1351     │1352 102 │     case repo.start_link(pool_size: pool_size) do1353     │               ~1354     │1355     └─ lib/mix/ecto.ex:102:15: Mix.Ecto.ensure_started/213561357     warning: the following clause will never match:13581359         {:error, _} = error ->13601361     because it attempts to match on the result of:13621363         apply(changeset, adapter, action, args)13641365     which has type:13661367         dynamic({:invalid or :ok, term()})13681369     type warning found at:1370     │1371 297 │             {:error, _} = error ->1372     │                         ~1373     │1374     └─ lib/ecto/repo/schema.ex:297:25: Ecto.Repo.Schema.do_update/413751376     warning: Logger.remove_backend/1 is deprecated. Use LoggerBackends.remove/2 from :logger_backends dependency1377     │1378 146 │     Logger.remove_backend(:console)1379     │            ~1380     │1381     └─ lib/mix/ecto.ex:146:12: Mix.Ecto.restart_apps_if_migrated/213821383     warning: Logger.add_backend/2 is deprecated. Use LoggerBackends.add/2 from :logger_backends dependency1384     │1385 155 │     Logger.add_backend(:console, flush: true)1386     │            ~1387     │1388     └─ lib/mix/ecto.ex:155:12: Mix.Ecto.restart_apps_if_migrated/213891390    warning: Inspect.Algebra.surround_many/5 is deprecated. Use Inspect.Algebra.container_doc/6 instead1391    │1392 29 │     surround_many("#Ecto.Query<", list, ">", opts, fn str, _ -> str end)1393    │     ~1394    │1395    └─ lib/ecto/query/inspect.ex:29:5: Inspect.Ecto.Query.inspect/213961397     warning: Macro.to_string/2 is deprecated. Use Macro.to_string/1 instead1398     │1399 144 │     Macro.to_string(expr, &expr_to_string(&1, &2, names, part))1400     │           ~1401     │1402     └─ lib/ecto/query/inspect.ex:144:11: Inspect.Ecto.Query.expr/314031404    warning: System.stacktrace/0 is deprecated. Use __STACKTRACE__ instead1405    │1406 54 │       filter_and_reraise e, System.stacktrace1407    │                                    ~1408    │1409    └─ lib/ecto/repo/preloader.ex:54:36: Ecto.Repo.Preloader.normalize_and_preload_each/514101411    warning: Map.size/1 is deprecated. Use Kernel.map_size/1 instead1412    │1413 44 │     index  = Map.size(params)1414    │                  ~1415    │1416    └─ lib/ecto/query/builder.ex:44:18: Ecto.Query.Builder.escape/51417    └─ lib/ecto/query/builder.ex:53:17: Ecto.Query.Builder.escape/514181419     warning: BadStructError.exception/1 is undefined (module BadStructError is not available or is yet to be defined). Make sure the module name is correct and has been specified in full (or that an alias has been defined)1420     │1421 228 │         raise BadStructError, struct: struct, term: data1422     │         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1423     │1424     └─ lib/ecto/repo/queryable.ex:228: Ecto.Repo.Queryable.process/514251426     warning: Decimal.minus/1 is deprecated. Use Decimal.negate/1 instead1427     │1428 614 │     Decimal.minus(decimal)1429     │             ~1430     │1431     └─ lib/ecto/query/builder.ex:614:13: Ecto.Query.Builder.negate!/114321433     warning: the following clause will never match:14341435         {:error, _} ->14361437     because it attempts to match on the result of:14381439         NaiveDateTime.new(date, time)14401441     which has type:14421443         dynamic({:ok, %NaiveDateTime{}})14441445     type warning found at:1446     │1447 803 │         {:error, _} -> :error1448     │         ~~~~~~~~~~~~~~~~~~~~~1449     │1450     └─ lib/ecto/type.ex:803: Ecto.Type.cast_naive_datetime/114511452     warning: Supervisor.Spec.supervise/2 is deprecated. Use the new child specifications outlined in the Supervisor module instead1453     │1454 159 │         supervise(children, strategy: :one_for_one)1455     │         ~1456     │1457     └─ lib/ecto/repo/supervisor.ex:159:9: Ecto.Repo.Supervisor.init/114581459     warning: System.stacktrace/0 is deprecated. Use __STACKTRACE__ instead1460     │1461 214 │       filter_and_reraise e, System.stacktrace1462     │                                    ~1463     │1464     └─ lib/ecto/query/planner.ex:214:36: Ecto.Query.Planner.prepare/41465     └─ lib/ecto/query/planner.ex:709:36: Ecto.Query.Planner.normalize/414661467    warning: Inspect.Algebra.surround_many/5 is deprecated. Use Inspect.Algebra.container_doc/6 instead1468    │1469 15 │     surround_many("dynamic(", [Macro.to_string(binding), inspected], ")", opts, fn str, _ -> str end)1470    │     ~1471    │1472    └─ lib/ecto/query/inspect.ex:15:5: Inspect.Ecto.Query.DynamicExpr.inspect/214731474      warning: expected a map or struct when accessing .__struct__ in expression:14751476          schema.__struct__14771478      where "schema" was given the types:14791480          # type: dynamic(atom() and not nil)1481          # from: lib/ecto/query/planner.ex:1186:411482          schema14831484          # type: atom()1485          # from: lib/ecto/query/planner.ex:1186:611486          is_atom(schema)14871488      hint: "var.field" (without parentheses) means "var" is a map() while "var.fun()" (with parentheses) means "var" is an atom()14891490      type warning found at:1491      │1492 1190 │       Map.has_key?(schema.__struct__, field) ->1493      │                           ~1494      │1495      └─ lib/ecto/query/planner.ex:1190:27: Ecto.Query.Planner.type!/614961497    warning: incompatible types given to Ecto.Migration.SchemaMigration.migrated_versions/2:14981499        Ecto.Migration.SchemaMigration.migrated_versions(repo, opts[:prefix])15001501    given types:15021503        (1504          -dynamic(%{..., __adapter__: term(), config: empty_list() or non_empty_list(term(), term())})-,1505          dynamic()1506        )15071508    but expected one of:15091510        atom(), term()15111512    where "opts" was given the type:15131514        # type: dynamic(1515          %{..., __struct__: atom()} or nil or empty_list() or non_empty_list(term(), term()) or1516            non_struct_map()1517        )1518        # from: lib/ecto/migrator.ex:44:651519        opts[:prefix]15201521    where "repo" was given the type:15221523        # type: dynamic(%{..., __adapter__: term(), config: empty_list() or non_empty_list(term(), term())})1524        # from: lib/ecto/migrator.ex:44:231525        Ecto.Migration.SchemaMigration.ensure_schema_migrations_table!(repo, opts[:prefix])15261527    type warning found at:1528    │1529 45 │       SchemaMigration.migrated_versions(repo, opts[:prefix])1530    │                       ~1531    │1532    └─ lib/ecto/migrator.ex:45:23: Ecto.Migrator.migrated_versions/215331534    warning: Supervisor.Spec.worker/3 is deprecated. Use the new child specifications outlined in the Supervisor module instead1535    │1536 12 │       worker(Ecto.Migration.Runner, [], restart: :temporary)1537    │       ~1538    │1539    └─ lib/ecto/migration/supervisor.ex:12:7: Ecto.Migration.Supervisor.init/115401541    warning: Supervisor.Spec.supervise/2 is deprecated. Use the new child specifications outlined in the Supervisor module instead1542    │1543 15 │     supervise(children, strategy: :simple_one_for_one)1544    │     ~1545    │1546    └─ lib/ecto/migration/supervisor.ex:15:5: Ecto.Migration.Supervisor.init/115471548     warning: expected a module (an atom) when invoking transaction/2 in expression:15491550         repo.transaction(fun, log: false, timeout: :infinity)15511552     where "fun" was given the type:15531554         # type: dynamic()1555         # from: lib/ecto/migrator.ex:114:471556         fun15571558     where "repo" was given the types:15591560         # type: dynamic(%{..., __adapter__: %{..., supports_ddl_transaction?: term()}})1561         # from: lib/ecto/migrator.ex:118:241562         repo.__adapter__.supports_ddl_transaction?15631564         # type: dynamic(%{..., __adapter__: %{..., supports_ddl_transaction?: not false and not nil}})1565         # from: lib/ecto/migrator.ex:118:241566         repo.__adapter__.supports_ddl_transaction?15671568     type warning found at:1569     │1570 119 │         repo.transaction(fun, [log: false, timeout: :infinity])1571     │              ~1572     │1573     └─ lib/ecto/migrator.ex:119:14: Ecto.Migrator.run_maybe_in_transaction/315741575     warning: Code.load_file/1 is deprecated. Use Code.require_file/2 or Code.compile_file/2 instead1576     │1577 291 │     modules = Code.load_file(file)1578     │                    ~1579     │1580     └─ lib/ecto/migrator.ex:291:20: Ecto.Migrator.extract_module/215811582    warning: Supervisor.Spec.worker/2 is deprecated. Use the new child specifications outlined in the Supervisor module instead1583    │1584 10 │       worker(Ecto.Registry, []),1585    │       ~1586    │1587    └─ lib/ecto/application.ex:10:7: Ecto.Application.start/215881589     warning: System.stacktrace/0 is deprecated. Use __STACKTRACE__ instead1590     │1591 321 │         reraise error, System.stacktrace1592     │                               ~1593     │1594     └─ lib/ecto/migrator.ex:321:31: Ecto.Migrator.verbose_schema_migration/315951596    warning: Supervisor.Spec.supervisor/2 is deprecated. Use the new child specifications outlined in the Supervisor module instead1597    │1598 11 │       supervisor(Ecto.Migration.Supervisor, [])1599    │       ~1600    │1601    └─ lib/ecto/application.ex:11:7: Ecto.Application.start/216021603Generated ecto app1604==> phoenix_ecto1605Compiling 6 files (.ex)1606    warning: Supervisor.Spec.supervise/2 is deprecated. Use the new child specifications outlined in the Supervisor module instead1607    │1608 10 │     supervise([1609    │     ~1610    │1611    └─ lib/phoenix_ecto/sql/sandbox_supervisor.ex:10:5: Phoenix.Ecto.SQL.SandboxSupervisor.init/116121613    warning: function actions/1 required by protocol Plug.Exception is not implemented (in module Plug.Exception.Ecto.SubQueryError)1614    │1615 20 │   defimpl Plug.Exception, for: Ecto.SubQueryError do1616    │   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1617    │1618    └─ lib/phoenix_ecto/plug.ex:20: Plug.Exception.Ecto.SubQueryError (module)16191620    warning: Supervisor.Spec.worker/3 is deprecated. Use the new child specifications outlined in the Supervisor module instead1621    │1622 11 │       worker(Phoenix.Ecto.SQL.SandboxSession, [], restart: :temporary)1623    │       ~1624    │1625    └─ lib/phoenix_ecto/sql/sandbox_supervisor.ex:11:7: Phoenix.Ecto.SQL.SandboxSupervisor.init/116261627    warning: function actions/1 required by protocol Plug.Exception is not implemented (in module Plug.Exception.Ecto.InvalidChangesetError)1628    │1629 13 │     defimpl Plug.Exception, for: exception do1630    │     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1631    │1632    └─ lib/phoenix_ecto/plug.ex:13: Plug.Exception.Ecto.InvalidChangesetError (module)16331634    warning: function actions/1 required by protocol Plug.Exception is not implemented (in module Plug.Exception.Ecto.StaleEntryError)1635    │1636 13 │     defimpl Plug.Exception, for: exception do1637    │     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1638    │1639    └─ lib/phoenix_ecto/plug.ex:13: Plug.Exception.Ecto.StaleEntryError (module)16401641    warning: function actions/1 required by protocol Plug.Exception is not implemented (in module Plug.Exception.Ecto.NoResultsError)1642    │1643 13 │     defimpl Plug.Exception, for: exception do1644    │     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1645    │1646    └─ lib/phoenix_ecto/plug.ex:13: Plug.Exception.Ecto.NoResultsError (module)16471648    warning: function actions/1 required by protocol Plug.Exception is not implemented (in module Plug.Exception.Ecto.Query.CastError)1649    │1650 13 │     defimpl Plug.Exception, for: exception do1651    │     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1652    │1653    └─ lib/phoenix_ecto/plug.ex:13: Plug.Exception.Ecto.Query.CastError (module)16541655    warning: function actions/1 required by protocol Plug.Exception is not implemented (in module Plug.Exception.Ecto.CastError)1656    │1657 13 │     defimpl Plug.Exception, for: exception do1658    │     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1659    │1660    └─ lib/phoenix_ecto/plug.ex:13: Plug.Exception.Ecto.CastError (module)16611662    warning: Supervisor.Spec.supervisor/2 is deprecated. Use the new child specifications outlined in the Supervisor module instead1663    │1664 13 │       supervisor(Phoenix.Ecto.SQL.SandboxSupervisor, [])1665    │       ~1666    │1667    └─ lib/phoenix_ecto.ex:13:7: Phoenix.Ecto.start/216681669Generated phoenix_ecto app1670==> ex_machina1671Compiling 6 files (.ex)1672     warning: Ecto.Type.embedded_dump/3 is undefined or private1673     │1674 257 │     Ecto.Type.embedded_dump(type, value, :json)1675     │               ~1676     │1677     └─ lib/ex_machina/ecto.ex:257:15: ExMachina.Ecto.try_embedded_dump/216781679Generated ex_machina app1680==> flashtag1681Compiling 16 files (.ex)1682    warning: Module.eval_quoted/2 is deprecated. Use Code.eval_quoted/3 instead1683    │1684  9 │   schema "users" do1685    │   ~~~~~~~~~~~~~~~~~1686    │1687    └─ lib/flashtag/accounts/user.ex:9: Flashtag.Accounts.User (module)16881689    warning: Module.eval_quoted/2 is deprecated. Use Code.eval_quoted/3 instead1690    │1691 10 │   schema "categories" do1692    │   ~~~~~~~~~~~~~~~~~~~~~~1693    │1694    └─ lib/flashtag/blog/category.ex:10: Flashtag.Blog.Category (module)16951696    warning: Module.eval_quoted/2 is deprecated. Use Code.eval_quoted/3 instead1697    │1698 10 │   schema "posts" do1699    │   ~~~~~~~~~~~~~~~~~1700    │1701    └─ lib/flashtag/blog/post.ex:10: Flashtag.Blog.Post (module)17021703    warning: Module.eval_quoted/2 is deprecated. Use Code.eval_quoted/3 instead1704    │1705 10 │   schema "series" do1706    │   ~~~~~~~~~~~~~~~~~~1707    │1708    └─ lib/flashtag/blog/series.ex:10: Flashtag.Blog.Series (module)17091710    warning: Module.eval_quoted/2 is deprecated. Use Code.eval_quoted/3 instead1711    │1712 10 │   schema "tags" do1713    │   ~~~~~~~~~~~~~~~~1714    │1715    └─ lib/flashtag/blog/tag.ex:10: Flashtag.Blog.Tag (module)171617171718== Compilation error in file lib/flashtag/repo.ex ==1719** (ArgumentError) missing :adapter configuration in config :flashtag, Flashtag.Repo1720    (ecto 2.2.12) lib/ecto/repo/supervisor.ex:70: Ecto.Repo.Supervisor.compile_config/21721    lib/flashtag/repo.ex:4: (module)1722could not compile dependency :flashtag, "mix compile" failed. Errors may have been logged above. You can recompile this dependency with "mix deps.compile flashtag --force", update it with "mix deps.update flashtag" or clean it with "mix deps.clean flashtag"