Skip to content

GDK doctor fails for Geo check due to changes in the `safe_load` API

Overview

When running gdk doctor we get an exception on the Geo check due to changes in the safe_load API

Steps to replicate (optional)

  1. Run gdk doctor
  2. See the exception below
Geo
================================================================================
wrong number of arguments (given 4, expected 1)
/Users/brodock/.rvm/gems/ruby-2.7.5/gems/psych-4.0.4/lib/psych.rb:322:in `safe_load'
/Users/brodock/Projetos/Gitlab/gdk-dev/lib/gdk/diagnostic/geo.rb:46:in `database_yml_file_content'
/Users/brodock/Projetos/Gitlab/gdk-dev/lib/gdk/diagnostic/geo.rb:50:in `database_names'
/Users/brodock/Projetos/Gitlab/gdk-dev/lib/gdk/diagnostic/geo.rb:54:in `geo_database_exists?'
/Users/brodock/Projetos/Gitlab/gdk-dev/lib/gdk/diagnostic/geo.rb:9:in `diagnose'
/Users/brodock/Projetos/Gitlab/gdk-dev/lib/gdk/command/doctor.rb:55:in `perform_diagnosis_for'
/Users/brodock/Projetos/Gitlab/gdk-dev/lib/gdk/command/doctor.rb:48:in `block (2 levels) in jobs'

Proposal (optional)

Change use of safe_load to use the new API: https://makandracards.com/makandra/465149-ruby-the-yaml-safe_load-method-hides-some-pitfalls#note-section-new-safeload-api=

Environment (optional)

  • Operating system name: <!-- output of `uname -a` command -->
  • Architecture: <!-- output of `arch` command -->
  • The contents of your gdk.yml (if any)
  • Ruby version: <!-- output of `ruby --version` command -->
  • GDK version: <!-- output of `git rev-parse --short HEAD` command -->