From 6051502e61e50a8f30284739250566bd1fccfaf1 Mon Sep 17 00:00:00 2001 From: Helmut Merz Date: Fri, 12 Jun 2026 10:55:25 +0200 Subject: [PATCH] move Util module out of core; + some minor fixes in application and web.server --- config/config.exs | 10 ++++++++++ config/dev.exs | 1 - config/runtime.exs | 4 ++++ lib/application.ex | 4 ++-- lib/core/core.ex | 8 ++++---- lib/core/program.ex | 8 ++++---- lib/{core => }/util.ex | 2 +- lib/web/server/endpoint.ex | 2 ++ lib/web/server/router.ex | 5 +++-- projects/demo/lib/application.ex | 2 +- test/{core => }/util_test.exs | 6 +++--- 11 files changed, 34 insertions(+), 18 deletions(-) create mode 100644 config/runtime.exs rename lib/{core => }/util.ex (86%) rename test/{core => }/util_test.exs (69%) diff --git a/config/config.exs b/config/config.exs index bb906fb..3dca519 100644 --- a/config/config.exs +++ b/config/config.exs @@ -7,4 +7,14 @@ config :logger, :default_formatter, colors: [enabled: false], metadata: [:mfa, :pid] +config :scopes, Scopes.Web.Server.Endpoint, + url: [host: "localhost"], + adapter: Bandit.PhoenixAdapter, + render_errors: [ + formats: [json: ScopesApiWeb.ErrorJSON], + layout: false + ], + #pubsub_server: Scopes.Web.Server.PubSub, + live_view: [signing_salt: "3Jtdea8i"] + import_config "#{config_env()}.exs" diff --git a/config/dev.exs b/config/dev.exs index 8a82453..73850d6 100644 --- a/config/dev.exs +++ b/config/dev.exs @@ -23,4 +23,3 @@ config :scopes, Scopes.Web.Server.Endpoint, check_origin: false, code_reloader: true, debug_errors: true - diff --git a/config/runtime.exs b/config/runtime.exs new file mode 100644 index 0000000..739120b --- /dev/null +++ b/config/runtime.exs @@ -0,0 +1,4 @@ +import Config + +config :scopes, Scopes.Web.Server.Endpoint, server: true + diff --git a/lib/application.ex b/lib/application.ex index 337458a..30d02c6 100644 --- a/lib/application.ex +++ b/lib/application.ex @@ -5,7 +5,7 @@ defmodule Scopes.Application do use Application - alias Scopes.Core.Util + alias Scopes.Util require Logger require Util @@ -19,7 +19,7 @@ defmodule Scopes.Application do #Scopes.Repo, #{DNSCluster, query: # Application.get_env(:scopes, :dns_cluster_query) || :ignore}, - #{Phoenix.PubSub, name: Scopes.PubSub}, + {Phoenix.PubSub, name: Scopes.PubSub}, # Start a worker by calling: ScopesApi.Worker.start_link(arg) # {Scopes.Worker, arg}, # Start to serve requests, typically the last entry diff --git a/lib/core/core.ex b/lib/core/core.ex index 60a13da..865138f 100644 --- a/lib/core/core.ex +++ b/lib/core/core.ex @@ -1,10 +1,10 @@ defmodule Scopes.Core do - require Logger - require Scopes.Core.Util - alias Scopes.Core.Actor alias Scopes.Core.Shape - alias Scopes.Core.Util + alias Scopes.Util + + require Logger + require Util def neuron(scope) do #Logger.info(Util.show [scope]) diff --git a/lib/core/program.ex b/lib/core/program.ex index 1fe4014..440aea2 100644 --- a/lib/core/program.ex +++ b/lib/core/program.ex @@ -1,11 +1,11 @@ defmodule Scopes.Core.Program do - require Logger - require Scopes.Core.Util - alias Scopes.Core alias Scopes.Core.Environ alias Scopes.Core.Shape - alias Scopes.Core.Util + alias Scopes.Util + + require Logger + require Util defmodule State do defstruct [:value, :count, :stage, :prog] diff --git a/lib/core/util.ex b/lib/util.ex similarity index 86% rename from lib/core/util.ex rename to lib/util.ex index 520b631..a21a1a9 100644 --- a/lib/core/util.ex +++ b/lib/util.ex @@ -1,4 +1,4 @@ -defmodule Scopes.Core.Util do +defmodule Scopes.Util do defmacro show(fields) do names = for f <- fields do Macro.to_string(f) end quote bind_quoted: [names: names, fields: fields] do diff --git a/lib/web/server/endpoint.ex b/lib/web/server/endpoint.ex index 303036d..a4b771a 100644 --- a/lib/web/server/endpoint.ex +++ b/lib/web/server/endpoint.ex @@ -1,5 +1,7 @@ defmodule Scopes.Web.Server.Endpoint do use Phoenix.Endpoint, otp_app: :scopes + plug Plug.RequestId + plug Scopes.Web.Server.Router end diff --git a/lib/web/server/router.ex b/lib/web/server/router.ex index 3f2cb69..6df9082 100644 --- a/lib/web/server/router.ex +++ b/lib/web/server/router.ex @@ -24,9 +24,10 @@ end defmodule Scopes.Web.Server.JSON do require Logger - require Scopes.Core.Util + require Scopes.Util + def index(%{message: text}) do - Logger.info(Scopes.Core.Util.show [text]) + Logger.info(Scopes.Util.show [text]) text end end diff --git a/projects/demo/lib/application.ex b/projects/demo/lib/application.ex index fb1cff1..e616a74 100644 --- a/projects/demo/lib/application.ex +++ b/projects/demo/lib/application.ex @@ -1,7 +1,7 @@ defmodule Scopes.Demo.Application do use Application - alias Scopes.Core.Util + alias Scopes.Util require Logger require Util diff --git a/test/core/util_test.exs b/test/util_test.exs similarity index 69% rename from test/core/util_test.exs rename to test/util_test.exs index 74a1645..d95b84b 100644 --- a/test/core/util_test.exs +++ b/test/util_test.exs @@ -1,8 +1,8 @@ -defmodule Scopes.CoreUtilTest do +defmodule Scopes.UtilTest do use ExUnit.Case, async: true - alias Scopes.Core.Util - require Scopes.Core.Util + alias Scopes.Util + require Util describe "info:" do test "fields" do