From 910903fccb5da55d2ec6ea276ec757a93ab0d027 Mon Sep 17 00:00:00 2001 From: Joost Diepenmaat Date: Tue, 24 Mar 2026 15:40:46 +0100 Subject: [PATCH 1/2] Bump passage to latest version --- .gitignore | 1 + clj-ishare-client/deps.edn | 2 +- connector/README.md | 2 +- connector/deps.edn | 4 ++-- connector/src/org/bdinetwork/connector/main.clj | 9 +++------ deps.edn | 4 ++-- 6 files changed, 10 insertions(+), 12 deletions(-) diff --git a/.gitignore b/.gitignore index f743641..537f088 100644 --- a/.gitignore +++ b/.gitignore @@ -14,3 +14,4 @@ /log/ /policies.db/ /rules.edn +/connector/log.json diff --git a/clj-ishare-client/deps.edn b/clj-ishare-client/deps.edn index f31aa12..8614d6a 100644 --- a/clj-ishare-client/deps.edn +++ b/clj-ishare-client/deps.edn @@ -15,7 +15,7 @@ :aliases {:dev {:extra-paths ["test" "test-resources"]} :test {:extra-paths ["test" "test-resources"] - :extra-deps {org.clojure/core.async {:mvn/version "1.8.741"} + :extra-deps {org.clojure/core.async {:mvn/version "1.9.865"} nl.jomco/clj-http-status-codes {:mvn/version "0.2"} nl.jomco/with-resources {:mvn/version "0.1.2"} org.bdinetwork/association-register {:local/root "../association-register"} diff --git a/connector/README.md b/connector/README.md index 2a2619d..925727d 100644 --- a/connector/README.md +++ b/connector/README.md @@ -110,7 +110,7 @@ Short name: `logger` Log incoming requests, response status and duration at `info` level. -Optional `props` will be evaluated in the "leave" or "error" +Optional `props` will be evaluated in the "leave" phase and logged as diagnostic context, `props` should be a shallow map with string keys. diff --git a/connector/deps.edn b/connector/deps.edn index 284e2d8..f0ceabf 100644 --- a/connector/deps.edn +++ b/connector/deps.edn @@ -5,14 +5,14 @@ org.bdinetwork/service-commons {:local/root "../service-commons"} ;; drip responses - org.clojure/core.async {:mvn/version "1.8.741"} + org.clojure/core.async {:mvn/version "1.9.865"} org.clojure/tools.logging {:mvn/version "1.3.1"} ch.qos.logback/logback-classic {:mvn/version "1.5.32"} nl.jomco/clj-http-status-codes {:mvn/version "0.2"} nl.jomco/passage {:git/url "https://codeberg.org/jomco/passage.git" - :git/sha "0d291ae5386d03e1b6a9a900b98e0183dfadeea9"} + :git/sha "c47454d365b78f739c915102b22f863b087d5abd"} manifold/manifold {:mvn/version "0.5.0"} org.clojure/data.json {:mvn/version "2.5.2"} ring/ring-core {:mvn/version "1.15.3"} diff --git a/connector/src/org/bdinetwork/connector/main.clj b/connector/src/org/bdinetwork/connector/main.clj index 677f764..281984a 100644 --- a/connector/src/org/bdinetwork/connector/main.clj +++ b/connector/src/org/bdinetwork/connector/main.clj @@ -7,15 +7,12 @@ (ns org.bdinetwork.connector.main (:gen-class) - (:require [environ.core :refer [env]] - [nl.jomco.resources :refer [with-resources wait-until-interrupted]] - [org.bdinetwork.connector.system :as system] + (:require [org.bdinetwork.connector.system :as system] [passage.main :as passage])) (defn start! [env] (system/run-system (passage/config env passage/opt-specs))) -(defn -main [& _] - (with-resources [_sys (start! env)] - (wait-until-interrupted))) +(defn -main [& args] + (passage/run-system start! args)) diff --git a/deps.edn b/deps.edn index 167391a..5d5e3c1 100644 --- a/deps.edn +++ b/deps.edn @@ -30,7 +30,7 @@ ring/ring-mock {:mvn/version "0.6.2"} ;; clj-ishare-client tests - org.clojure/core.async {:mvn/version "1.8.741"} + org.clojure/core.async {:mvn/version "1.9.865"} ;; connector tests ring/ring {:mvn/version "1.15.3"}} @@ -48,7 +48,7 @@ :lint {:extra-deps {clj-kondo/clj-kondo {:mvn/version "RELEASE"}} :main-opts ["-m" "clj-kondo.main"]} - :build {:deps {io.github.clojure/tools.build {:mvn/version "0.10.12"} + :build {:deps {io.github.clojure/tools.build {:mvn/version "0.10.13"} slipset/deps-deploy {:mvn/version "RELEASE"}} :ns-default build-lib} From b6162a39a8a9460ef3aa6426860eba7f9a22bf97 Mon Sep 17 00:00:00 2001 From: Joost Diepenmaat Date: Fri, 27 Mar 2026 16:00:58 +0100 Subject: [PATCH 2/2] Update passage; proxy changes Proxy will now pass paths and query-string from incoming request. --- connector/README.md | 4 ++-- connector/deps.edn | 2 +- test-config/backend-connector.edn | 3 ++- test-config/rules.edn | 2 +- 4 files changed, 6 insertions(+), 5 deletions(-) diff --git a/connector/README.md b/connector/README.md index 925727d..918a8f1 100644 --- a/connector/README.md +++ b/connector/README.md @@ -146,7 +146,7 @@ When it fails to connect to the downstream server, respond with Example: ```edn -[proxy (str "https://example.com" (get request :uri))] +[proxy "https://example.com"] ``` Note: this interceptor should always be the last in the list of @@ -408,7 +408,7 @@ The following example is protected by a basic authentication username / password [request update :headers assoc "authorization" #join ["Basic " #b64 #join [#env! "BACKEND_USER" ":" #env! "BACKEND_PASS"]]] [response update :headers assoc "x-bdi-connector" "passed"] - [proxy (str "http://backend:port/" (get request :uri))]]} + [proxy "http://backend:port/"]]} {:match {} :interceptors [[logger] diff --git a/connector/deps.edn b/connector/deps.edn index f0ceabf..ebb18f0 100644 --- a/connector/deps.edn +++ b/connector/deps.edn @@ -12,7 +12,7 @@ nl.jomco/clj-http-status-codes {:mvn/version "0.2"} nl.jomco/passage {:git/url "https://codeberg.org/jomco/passage.git" - :git/sha "c47454d365b78f739c915102b22f863b087d5abd"} + :git/sha "01b55586e3824c3b81c715572c5c948af98a9343"} manifold/manifold {:mvn/version "0.5.0"} org.clojure/data.json {:mvn/version "2.5.2"} ring/ring-core {:mvn/version "1.15.3"} diff --git a/test-config/backend-connector.edn b/test-config/backend-connector.edn index cdeb228..78fbb58 100644 --- a/test-config/backend-connector.edn +++ b/test-config/backend-connector.edn @@ -77,7 +77,8 @@ (if (get-in request [:params "without-token"]) "authorization" "dummy")] - [proxy (str association-server-url "/parties/" party-id)]]} + [request update dissoc :query-string] + [proxy "/api/bdi/party" (str association-server-url "/parties/" party-id)]]} ;;;; noodlebar/oauth authentication and authorization diff --git a/test-config/rules.edn b/test-config/rules.edn index ba11cf3..0ecbdac 100644 --- a/test-config/rules.edn +++ b/test-config/rules.edn @@ -45,7 +45,7 @@ [request assoc-in [:headers "x-api-key"] #env! BACKEND_API_KEY] [request update :query-string str/replace "ownerId=NL.KVK." "ownerId=kvk%3a"] ; translate p8 to itv notation - [proxy (str #env! "BACKEND_URL" (get request :uri))]]} + [proxy #env! "BACKEND_URL"]]} ;; example access to audit log protected by basic ;; authentication (for demo purposes only!)