]> git.openstreetmap.org Git - rails.git/commitdiff
Merge remote-tracking branch 'upstream/pull/4970'
authorTom Hughes <tom@compton.nu>
Wed, 10 Jul 2024 17:27:39 +0000 (18:27 +0100)
committerTom Hughes <tom@compton.nu>
Wed, 10 Jul 2024 17:27:39 +0000 (18:27 +0100)
Gemfile.lock
lib/nominatim.rb
lib/osm.rb

index 774d795bcfd3610f26e1a6623b90edde974aca21..284e97adc9fa92bf307cada90a90c0e85128a29f 100644 (file)
@@ -95,8 +95,8 @@ GEM
     autoprefixer-rails (10.4.16.0)
       execjs (~> 2)
     aws-eventstream (1.3.0)
-    aws-partitions (1.950.0)
-    aws-sdk-core (3.201.0)
+    aws-partitions (1.954.0)
+    aws-sdk-core (3.201.1)
       aws-eventstream (~> 1, >= 1.3.0)
       aws-partitions (~> 1, >= 1.651.0)
       aws-sigv4 (~> 1.8)
@@ -186,7 +186,7 @@ GEM
       doorkeeper (>= 5.5, < 5.8)
       jwt (>= 2.5)
     drb (2.2.1)
-    dry-configurable (1.1.0)
+    dry-configurable (1.2.0)
       dry-core (~> 1.0, < 2)
       zeitwerk (~> 2.6)
     dry-core (1.0.1)
@@ -234,8 +234,9 @@ GEM
     factory_bot_rails (6.4.3)
       factory_bot (~> 6.4)
       railties (>= 5.0.0)
-    faraday (2.9.2)
+    faraday (2.10.0)
       faraday-net_http (>= 2.0, < 3.2)
+      logger
     faraday-net_http (3.1.0)
       net-http
     ffi (1.17.0)
@@ -288,7 +289,7 @@ GEM
     image_size (3.4.0)
     in_threads (1.6.0)
     io-console (0.7.2)
-    irb (1.13.2)
+    irb (1.14.0)
       rdoc (>= 4.0.0)
       reline (>= 0.4.2)
     jbuilder (2.12.0)
@@ -326,7 +327,7 @@ GEM
     marcel (1.0.4)
     matrix (0.4.2)
     maxminddb (0.1.22)
-    mini_magick (4.13.1)
+    mini_magick (4.13.2)
     mini_mime (1.1.5)
     mini_portile2 (2.8.7)
     mini_racer (0.9.0)
@@ -402,7 +403,7 @@ GEM
       omniauth (~> 2.0)
     openstreetmap-deadlock_retry (1.3.1)
     parallel (1.25.1)
-    parser (3.3.3.0)
+    parser (3.3.4.0)
       ast (~> 2.4.1)
       racc
     pg (1.5.6)
@@ -490,13 +491,13 @@ GEM
     rouge (4.3.0)
     rtlcss (0.2.1)
       mini_racer (>= 0.6.3)
-    rubocop (1.64.1)
+    rubocop (1.65.0)
       json (~> 2.3)
       language_server-protocol (>= 3.17.0)
       parallel (~> 1.10)
       parser (>= 3.3.0.2)
       rainbow (>= 2.2.2, < 4.0)
-      regexp_parser (>= 1.8, < 3.0)
+      regexp_parser (>= 2.4, < 3.0)
       rexml (>= 3.2.5, < 4.0)
       rubocop-ast (>= 1.31.1, < 2.0)
       ruby-progressbar (~> 1.7)
@@ -588,7 +589,7 @@ GEM
       crack (>= 0.3.2)
       hashdiff (>= 0.4.0, < 2.0.0)
     webrick (1.8.1)
-    websocket (1.2.10)
+    websocket (1.2.11)
     websocket-driver (0.7.6)
       websocket-extensions (>= 0.1.0)
     websocket-extensions (0.1.5)
index adb041da43857799d2bdbea0a8a1c018e1d536e6..5e4a18b519733d39e5fc7b770e0d3cfb61729c8d 100644 (file)
@@ -11,14 +11,16 @@ module Nominatim
       url = "#{Settings.nominatim_url}reverse?lat=#{lat}&lon=#{lon}&zoom=#{zoom}&accept-language=#{language}"
 
       begin
-        response = Timeout.timeout(4) do
-          REXML::Document.new(Net::HTTP.get(URI.parse(url)))
+        response = OSM.http_client.get(URI.parse(url)) do |request|
+          request.options.timeout = 4
         end
+
+        results = REXML::Document.new(response.body) if response.success?
       rescue StandardError
-        response = nil
+        results = nil
       end
 
-      if response && result = response.get_text("reversegeocode/result")
+      if results && result = results.get_text("reversegeocode/result")
         result.value
       else
         "#{number_with_precision(lat, :precision => 3)}, #{number_with_precision(lon, :precision => 3)}"
index dd273418e52cc562c95f94b67ef1bba47218f1c3..46f37036f92d796243960cf1c7c8b63fdd91244e 100644 (file)
@@ -535,7 +535,8 @@ module OSM
 
   # Return the HTTP client to use
   def self.http_client
-    @http_client ||= Faraday.new(:request => { :timeout => 15 })
+    @http_client ||= Faraday.new(:request => { :timeout => 15 },
+                                 :headers => { :user_agent => Settings.server_url })
   end
 
   # Return the MaxMindDB database handle