diff --git a/tests/sql/summary.sql.output b/tests/sql/summary.sql.output index 644f849..99ea9f6 100644 --- a/tests/sql/summary.sql.output +++ b/tests/sql/summary.sql.output @@ -6,7 +6,7 @@ You are now connected to database "signalk" as user "username". Expanded display is on. -[ RECORD 1 ]--+------------------------------- -server_version | 16.8 (Debian 16.8-1.pgdg120+1) +server_version | 16.9 (Debian 16.9-1.pgdg120+1) -[ RECORD 1 ]--------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- postgis_full_version | POSTGIS="3.5.2 dea6d0a" [EXTENSION] PGSQL="160" GEOS="3.11.1-CAPI-1.17.1" PROJ="9.1.1 NETWORK_ENABLED=OFF URL_ENDPOINT=https://cdn.proj.org USER_WRITABLE_DIRECTORY=/var/lib/postgresql/.local/share/proj DATABASE_PATH=/usr/share/proj/proj.db" (compiled against PROJ 9.1.1) LIBXML="2.9.14" LIBJSON="0.16" LIBPROTOBUF="1.4.1" WAGYU="0.5.0 (Internal)" @@ -219,17 +219,19 @@ Name | spatial_ref_sys Type | table Owner | username --[ RECORD 1 ]-------- +-[ RECORD 1 ]------------ schema_api | logbook --[ RECORD 2 ]-------- +-[ RECORD 2 ]------------ schema_api | metadata --[ RECORD 3 ]-------- +-[ RECORD 3 ]------------ +schema_api | metadata_ext +-[ RECORD 4 ]------------ schema_api | metrics --[ RECORD 4 ]-------- +-[ RECORD 5 ]------------ schema_api | moorages --[ RECORD 5 ]-------- +-[ RECORD 6 ]------------ schema_api | stays --[ RECORD 6 ]-------- +-[ RECORD 7 ]------------ schema_api | stays_at -[ RECORD 1 ]-+------------------------------ @@ -279,31 +281,13 @@ with_check | true -[ RECORD 2 ]------------------------------------------------------------------------------------------------------------------------------ schemaname | api tablename | metadata -policyname | api_vessel_role -permissive | PERMISSIVE -roles | {vessel_role} -cmd | ALL -qual | (vessel_id = current_setting('vessel.id'::text, false)) -with_check | true --[ RECORD 3 ]------------------------------------------------------------------------------------------------------------------------------ -schemaname | api -tablename | metadata -policyname | api_user_role -permissive | PERMISSIVE -roles | {user_role} -cmd | ALL -qual | (vessel_id = current_setting('vessel.id'::text, true)) -with_check | (vessel_id = current_setting('vessel.id'::text, false)) --[ RECORD 4 ]------------------------------------------------------------------------------------------------------------------------------ -schemaname | api -tablename | metadata policyname | api_scheduler_role permissive | PERMISSIVE roles | {scheduler} cmd | ALL qual | (vessel_id = current_setting('vessel.id'::text, false)) with_check | (vessel_id = current_setting('vessel.id'::text, false)) --[ RECORD 5 ]------------------------------------------------------------------------------------------------------------------------------ +-[ RECORD 3 ]------------------------------------------------------------------------------------------------------------------------------ schemaname | api tablename | metadata policyname | grafana_role @@ -312,7 +296,7 @@ roles | {grafana} cmd | ALL qual | (vessel_id = current_setting('vessel.id'::text, false)) with_check | false --[ RECORD 6 ]------------------------------------------------------------------------------------------------------------------------------ +-[ RECORD 4 ]------------------------------------------------------------------------------------------------------------------------------ schemaname | api tablename | metadata policyname | grafana_proxy_role @@ -321,52 +305,34 @@ roles | {grafana_auth} cmd | ALL qual | true with_check | false +-[ RECORD 5 ]------------------------------------------------------------------------------------------------------------------------------ +schemaname | api +tablename | metrics +policyname | admin_all +permissive | PERMISSIVE +roles | {username} +cmd | ALL +qual | true +with_check | true +-[ RECORD 6 ]------------------------------------------------------------------------------------------------------------------------------ +schemaname | auth +tablename | vessels +policyname | grafana_proxy_role +permissive | PERMISSIVE +roles | {grafana_auth} +cmd | ALL +qual | true +with_check | false -[ RECORD 7 ]------------------------------------------------------------------------------------------------------------------------------ schemaname | api tablename | metrics -policyname | admin_all -permissive | PERMISSIVE -roles | {username} -cmd | ALL -qual | true -with_check | true --[ RECORD 8 ]------------------------------------------------------------------------------------------------------------------------------ -schemaname | api -tablename | metrics -policyname | api_vessel_role -permissive | PERMISSIVE -roles | {vessel_role} -cmd | ALL -qual | (vessel_id = current_setting('vessel.id'::text, false)) -with_check | true --[ RECORD 9 ]------------------------------------------------------------------------------------------------------------------------------ -schemaname | auth -tablename | vessels -policyname | grafana_proxy_role -permissive | PERMISSIVE -roles | {grafana_auth} -cmd | ALL -qual | true -with_check | false --[ RECORD 10 ]----------------------------------------------------------------------------------------------------------------------------- -schemaname | api -tablename | metrics -policyname | api_user_role -permissive | PERMISSIVE -roles | {user_role} -cmd | ALL -qual | (vessel_id = current_setting('vessel.id'::text, true)) -with_check | (vessel_id = current_setting('vessel.id'::text, false)) --[ RECORD 11 ]----------------------------------------------------------------------------------------------------------------------------- -schemaname | api -tablename | metrics policyname | api_scheduler_role permissive | PERMISSIVE roles | {scheduler} cmd | ALL qual | (vessel_id = current_setting('vessel.id'::text, false)) with_check | (vessel_id = current_setting('vessel.id'::text, false)) --[ RECORD 12 ]----------------------------------------------------------------------------------------------------------------------------- +-[ RECORD 8 ]------------------------------------------------------------------------------------------------------------------------------ schemaname | api tablename | metrics policyname | grafana_role @@ -375,7 +341,7 @@ roles | {grafana} cmd | ALL qual | (vessel_id = current_setting('vessel.id'::text, false)) with_check | false --[ RECORD 13 ]----------------------------------------------------------------------------------------------------------------------------- +-[ RECORD 9 ]------------------------------------------------------------------------------------------------------------------------------ schemaname | api tablename | metrics policyname | api_anonymous_role @@ -384,7 +350,7 @@ roles | {api_anonymous} cmd | ALL qual | (vessel_id = current_setting('vessel.id'::text, false)) with_check | false --[ RECORD 14 ]----------------------------------------------------------------------------------------------------------------------------- +-[ RECORD 10 ]----------------------------------------------------------------------------------------------------------------------------- schemaname | api tablename | logbook policyname | admin_all @@ -393,7 +359,7 @@ roles | {username} cmd | ALL qual | true with_check | true --[ RECORD 15 ]----------------------------------------------------------------------------------------------------------------------------- +-[ RECORD 11 ]----------------------------------------------------------------------------------------------------------------------------- schemaname | api tablename | logbook policyname | api_vessel_role @@ -402,7 +368,7 @@ roles | {vessel_role} cmd | ALL qual | (vessel_id = current_setting('vessel.id'::text, false)) with_check | true --[ RECORD 16 ]----------------------------------------------------------------------------------------------------------------------------- +-[ RECORD 12 ]----------------------------------------------------------------------------------------------------------------------------- schemaname | auth tablename | accounts policyname | admin_all @@ -411,7 +377,7 @@ roles | {username} cmd | ALL qual | true with_check | true --[ RECORD 17 ]----------------------------------------------------------------------------------------------------------------------------- +-[ RECORD 13 ]----------------------------------------------------------------------------------------------------------------------------- schemaname | api tablename | logbook policyname | api_user_role @@ -420,7 +386,7 @@ roles | {user_role} cmd | ALL qual | (vessel_id = current_setting('vessel.id'::text, true)) with_check | (vessel_id = current_setting('vessel.id'::text, false)) --[ RECORD 18 ]----------------------------------------------------------------------------------------------------------------------------- +-[ RECORD 14 ]----------------------------------------------------------------------------------------------------------------------------- schemaname | api tablename | logbook policyname | api_scheduler_role @@ -429,7 +395,7 @@ roles | {scheduler} cmd | ALL qual | (vessel_id = current_setting('vessel.id'::text, false)) with_check | (vessel_id = current_setting('vessel.id'::text, false)) --[ RECORD 19 ]----------------------------------------------------------------------------------------------------------------------------- +-[ RECORD 15 ]----------------------------------------------------------------------------------------------------------------------------- schemaname | api tablename | logbook policyname | grafana_role @@ -438,7 +404,7 @@ roles | {grafana} cmd | ALL qual | (vessel_id = current_setting('vessel.id'::text, false)) with_check | false --[ RECORD 20 ]----------------------------------------------------------------------------------------------------------------------------- +-[ RECORD 16 ]----------------------------------------------------------------------------------------------------------------------------- schemaname | api tablename | logbook policyname | api_anonymous_role @@ -447,7 +413,7 @@ roles | {api_anonymous} cmd | ALL qual | (vessel_id = current_setting('vessel.id'::text, false)) with_check | false --[ RECORD 21 ]----------------------------------------------------------------------------------------------------------------------------- +-[ RECORD 17 ]----------------------------------------------------------------------------------------------------------------------------- schemaname | api tablename | stays policyname | admin_all @@ -456,7 +422,7 @@ roles | {username} cmd | ALL qual | true with_check | true --[ RECORD 22 ]----------------------------------------------------------------------------------------------------------------------------- +-[ RECORD 18 ]----------------------------------------------------------------------------------------------------------------------------- schemaname | api tablename | stays policyname | api_vessel_role @@ -465,7 +431,7 @@ roles | {vessel_role} cmd | ALL qual | (vessel_id = current_setting('vessel.id'::text, false)) with_check | true --[ RECORD 23 ]----------------------------------------------------------------------------------------------------------------------------- +-[ RECORD 19 ]----------------------------------------------------------------------------------------------------------------------------- schemaname | api tablename | logbook policyname | logbook_qgis_role @@ -474,7 +440,7 @@ roles | {qgis_role} cmd | ALL qual | true with_check | false --[ RECORD 24 ]----------------------------------------------------------------------------------------------------------------------------- +-[ RECORD 20 ]----------------------------------------------------------------------------------------------------------------------------- schemaname | public tablename | process_queue policyname | public_maplapse_role @@ -483,7 +449,7 @@ roles | {maplapse_role} cmd | ALL qual | true with_check | true --[ RECORD 25 ]----------------------------------------------------------------------------------------------------------------------------- +-[ RECORD 21 ]----------------------------------------------------------------------------------------------------------------------------- schemaname | api tablename | stays policyname | api_user_role @@ -492,7 +458,7 @@ roles | {user_role} cmd | ALL qual | (vessel_id = current_setting('vessel.id'::text, true)) with_check | (vessel_id = current_setting('vessel.id'::text, false)) --[ RECORD 26 ]----------------------------------------------------------------------------------------------------------------------------- +-[ RECORD 22 ]----------------------------------------------------------------------------------------------------------------------------- schemaname | api tablename | stays policyname | api_scheduler_role @@ -501,7 +467,7 @@ roles | {scheduler} cmd | ALL qual | (vessel_id = current_setting('vessel.id'::text, false)) with_check | (vessel_id = current_setting('vessel.id'::text, false)) --[ RECORD 27 ]----------------------------------------------------------------------------------------------------------------------------- +-[ RECORD 23 ]----------------------------------------------------------------------------------------------------------------------------- schemaname | api tablename | stays policyname | grafana_role @@ -510,7 +476,7 @@ roles | {grafana} cmd | ALL qual | (vessel_id = current_setting('vessel.id'::text, false)) with_check | false --[ RECORD 28 ]----------------------------------------------------------------------------------------------------------------------------- +-[ RECORD 24 ]----------------------------------------------------------------------------------------------------------------------------- schemaname | api tablename | stays policyname | api_anonymous_role @@ -519,7 +485,7 @@ roles | {api_anonymous} cmd | ALL qual | (vessel_id = current_setting('vessel.id'::text, false)) with_check | false --[ RECORD 29 ]----------------------------------------------------------------------------------------------------------------------------- +-[ RECORD 25 ]----------------------------------------------------------------------------------------------------------------------------- schemaname | api tablename | moorages policyname | admin_all @@ -528,7 +494,7 @@ roles | {username} cmd | ALL qual | true with_check | true --[ RECORD 30 ]----------------------------------------------------------------------------------------------------------------------------- +-[ RECORD 26 ]----------------------------------------------------------------------------------------------------------------------------- schemaname | api tablename | moorages policyname | api_vessel_role @@ -537,7 +503,16 @@ roles | {vessel_role} cmd | ALL qual | (vessel_id = current_setting('vessel.id'::text, false)) with_check | true --[ RECORD 31 ]----------------------------------------------------------------------------------------------------------------------------- +-[ RECORD 27 ]----------------------------------------------------------------------------------------------------------------------------- +schemaname | api +tablename | metadata_ext +policyname | admin_all +permissive | PERMISSIVE +roles | {username} +cmd | ALL +qual | true +with_check | true +-[ RECORD 28 ]----------------------------------------------------------------------------------------------------------------------------- schemaname | api tablename | moorages policyname | api_user_role @@ -546,7 +521,7 @@ roles | {user_role} cmd | ALL qual | (vessel_id = current_setting('vessel.id'::text, true)) with_check | (vessel_id = current_setting('vessel.id'::text, false)) --[ RECORD 32 ]----------------------------------------------------------------------------------------------------------------------------- +-[ RECORD 29 ]----------------------------------------------------------------------------------------------------------------------------- schemaname | api tablename | moorages policyname | api_scheduler_role @@ -555,7 +530,7 @@ roles | {scheduler} cmd | ALL qual | (vessel_id = current_setting('vessel.id'::text, false)) with_check | (vessel_id = current_setting('vessel.id'::text, false)) --[ RECORD 33 ]----------------------------------------------------------------------------------------------------------------------------- +-[ RECORD 30 ]----------------------------------------------------------------------------------------------------------------------------- schemaname | api tablename | moorages policyname | grafana_role @@ -564,7 +539,7 @@ roles | {grafana} cmd | ALL qual | (vessel_id = current_setting('vessel.id'::text, false)) with_check | false --[ RECORD 34 ]----------------------------------------------------------------------------------------------------------------------------- +-[ RECORD 31 ]----------------------------------------------------------------------------------------------------------------------------- schemaname | api tablename | moorages policyname | api_anonymous_role @@ -573,7 +548,7 @@ roles | {api_anonymous} cmd | ALL qual | (vessel_id = current_setting('vessel.id'::text, false)) with_check | false --[ RECORD 35 ]----------------------------------------------------------------------------------------------------------------------------- +-[ RECORD 32 ]----------------------------------------------------------------------------------------------------------------------------- schemaname | auth tablename | vessels policyname | admin_all @@ -582,7 +557,7 @@ roles | {username} cmd | ALL qual | true with_check | true --[ RECORD 36 ]----------------------------------------------------------------------------------------------------------------------------- +-[ RECORD 33 ]----------------------------------------------------------------------------------------------------------------------------- schemaname | auth tablename | vessels policyname | api_user_role @@ -591,7 +566,7 @@ roles | {user_role} cmd | ALL qual | ((vessel_id = current_setting('vessel.id'::text, true)) AND ((owner_email)::text = current_setting('user.email'::text, true))) with_check | ((vessel_id = current_setting('vessel.id'::text, true)) AND ((owner_email)::text = current_setting('user.email'::text, true))) --[ RECORD 37 ]----------------------------------------------------------------------------------------------------------------------------- +-[ RECORD 34 ]----------------------------------------------------------------------------------------------------------------------------- schemaname | auth tablename | vessels policyname | grafana_role @@ -600,7 +575,7 @@ roles | {grafana} cmd | ALL qual | ((owner_email)::text = current_setting('user.email'::text, true)) with_check | false --[ RECORD 38 ]----------------------------------------------------------------------------------------------------------------------------- +-[ RECORD 35 ]----------------------------------------------------------------------------------------------------------------------------- schemaname | auth tablename | accounts policyname | api_user_role @@ -609,7 +584,7 @@ roles | {user_role} cmd | ALL qual | ((email)::text = current_setting('user.email'::text, true)) with_check | ((email)::text = current_setting('user.email'::text, true)) --[ RECORD 39 ]----------------------------------------------------------------------------------------------------------------------------- +-[ RECORD 36 ]----------------------------------------------------------------------------------------------------------------------------- schemaname | auth tablename | accounts policyname | api_scheduler_role @@ -618,7 +593,7 @@ roles | {scheduler} cmd | ALL qual | ((email)::text = current_setting('user.email'::text, true)) with_check | ((email)::text = current_setting('user.email'::text, true)) --[ RECORD 40 ]----------------------------------------------------------------------------------------------------------------------------- +-[ RECORD 37 ]----------------------------------------------------------------------------------------------------------------------------- schemaname | auth tablename | accounts policyname | grafana_proxy_role @@ -627,7 +602,7 @@ roles | {grafana_auth} cmd | ALL qual | true with_check | false --[ RECORD 41 ]----------------------------------------------------------------------------------------------------------------------------- +-[ RECORD 38 ]----------------------------------------------------------------------------------------------------------------------------- schemaname | public tablename | process_queue policyname | admin_all @@ -636,7 +611,7 @@ roles | {username} cmd | ALL qual | true with_check | true --[ RECORD 42 ]----------------------------------------------------------------------------------------------------------------------------- +-[ RECORD 39 ]----------------------------------------------------------------------------------------------------------------------------- schemaname | public tablename | process_queue policyname | api_vessel_role @@ -645,7 +620,7 @@ roles | {vessel_role} cmd | ALL qual | ((ref_id = current_setting('user.id'::text, true)) OR (ref_id = current_setting('vessel.id'::text, true))) with_check | true --[ RECORD 43 ]----------------------------------------------------------------------------------------------------------------------------- +-[ RECORD 40 ]----------------------------------------------------------------------------------------------------------------------------- schemaname | public tablename | process_queue policyname | api_user_role @@ -654,7 +629,7 @@ roles | {user_role} cmd | ALL qual | ((ref_id = current_setting('user.id'::text, true)) OR (ref_id = current_setting('vessel.id'::text, true))) with_check | ((ref_id = current_setting('user.id'::text, true)) OR (ref_id = current_setting('vessel.id'::text, true))) --[ RECORD 44 ]----------------------------------------------------------------------------------------------------------------------------- +-[ RECORD 41 ]----------------------------------------------------------------------------------------------------------------------------- schemaname | public tablename | process_queue policyname | api_scheduler_role @@ -663,6 +638,60 @@ roles | {scheduler} cmd | ALL qual | true with_check | false +-[ RECORD 42 ]----------------------------------------------------------------------------------------------------------------------------- +schemaname | api +tablename | metadata_ext +policyname | api_user_role +permissive | PERMISSIVE +roles | {user_role} +cmd | ALL +qual | (vessel_id = current_setting('vessel.id'::text, false)) +with_check | (vessel_id = current_setting('vessel.id'::text, false)) +-[ RECORD 43 ]----------------------------------------------------------------------------------------------------------------------------- +schemaname | api +tablename | metadata_ext +policyname | api_anonymous_role +permissive | PERMISSIVE +roles | {api_anonymous} +cmd | ALL +qual | true +with_check | false +-[ RECORD 44 ]----------------------------------------------------------------------------------------------------------------------------- +schemaname | api +tablename | metrics +policyname | api_user_role +permissive | PERMISSIVE +roles | {user_role} +cmd | ALL +qual | (vessel_id = current_setting('vessel.id'::text, false)) +with_check | false +-[ RECORD 45 ]----------------------------------------------------------------------------------------------------------------------------- +schemaname | api +tablename | metrics +policyname | api_vessel_role +permissive | PERMISSIVE +roles | {vessel_role} +cmd | ALL +qual | (vessel_id = current_setting('vessel.id'::text, false)) +with_check | (vessel_id = current_setting('vessel.id'::text, false)) +-[ RECORD 46 ]----------------------------------------------------------------------------------------------------------------------------- +schemaname | api +tablename | metadata +policyname | api_vessel_role +permissive | PERMISSIVE +roles | {vessel_role} +cmd | ALL +qual | (vessel_id = current_setting('vessel.id'::text, false)) +with_check | (vessel_id = current_setting('vessel.id'::text, false)) +-[ RECORD 47 ]----------------------------------------------------------------------------------------------------------------------------- +schemaname | api +tablename | metadata +policyname | api_user_role +permissive | PERMISSIVE +roles | {user_role} +cmd | ALL +qual | (vessel_id = current_setting('vessel.id'::text, false)) +with_check | (vessel_id = current_setting('vessel.id'::text, false)) Test nominatim reverse_geocode_py_fn -[ RECORD 1 ]---------+---------------------------------------- @@ -676,16 +705,16 @@ overpass_py_fn | {"fee": "yes", "vhf": "09", "name": "Port OlĂ­mpic", "phone": " -[ RECORD 1 ]--+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- overpass_py_fn | {"name": "Port de la Ginesta", "type": "multipolygon", "leisure": "marina", "name:ca": "Port de la Ginesta", "wikidata": "Q16621038", "wikipedia": "ca:Port Ginesta", "check_date": "2024-08-23"} --[ RECORD 1 ]--+--------------------------------------------------------------------------------------- -overpass_py_fn | {"leisure": "marina", "seamark:type": "harbour", "seamark:harbour:category": "marina"} +-[ RECORD 1 ]--+--------------------------------------------------------------------------------------------------------------- +overpass_py_fn | {"name": "Norra hamnen", "leisure": "marina", "seamark:type": "harbour", "seamark:harbour:category": "marina"} --[ RECORD 1 ]----------------------------------------------------------------------------------------------------------------------------------------------------------------------- -versions_fn | {"api_version" : "0.9.1", "sys_version" : "PostgreSQL 16.8", "mobilitydb" : "1.2.0", "timescaledb" : "2.19.3", "postgis" : "3.5.2", "postgrest" : "PostgREST 12.2.12"} +-[ RECORD 1 ]---------------------------------------------------------------------------------------------------------------------------------------------------------------------- +versions_fn | {"api_version" : "0.9.1", "sys_version" : "PostgreSQL 16.9", "mobilitydb" : "1.2.0", "timescaledb" : "2.19.3", "postgis" : "3.5.2", "postgrest" : "PostgREST 13.0.0"} --[ RECORD 1 ]------------------ +-[ RECORD 1 ]----------------- api_version | 0.9.1 -sys_version | PostgreSQL 16.8 +sys_version | PostgreSQL 16.9 timescaledb | 2.19.3 postgis | 3.5.2 -postgrest | PostgREST 12.2.12 +postgrest | PostgREST 13.0.0