From 861b7f54159f5431cd7a5998499c16c2521f201f Mon Sep 17 00:00:00 2001 From: Rafal Wojsznis Date: Wed, 4 Jul 2018 15:19:12 +0200 Subject: [PATCH 1/2] Explicitly cast json object to corresponding types Makes it compatible with newer Crystal 0.25.x release --- src/multi_auth/providers/google.cr | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/multi_auth/providers/google.cr b/src/multi_auth/providers/google.cr index 1f47a8f..ae9f263 100644 --- a/src/multi_auth/providers/google.cr +++ b/src/multi_auth/providers/google.cr @@ -66,10 +66,12 @@ class MultiAuth::Provider::Google < MultiAuth::Provider private def primary?(field) field = json[field]? - return nil if field.nil? - field.each do |item| + return unless field + + field.as_a.each do |item| return item if item["metadata"]["primary"].as_bool? end + nil end @@ -101,7 +103,7 @@ class MultiAuth::Provider::Google < MultiAuth::Provider user.phone = primary("phoneNumbers")["canonicalForm"].as_s if primary?("phoneNumbers") user.description = primary("biographies")["value"].as_s if primary?("biographies") - json["urls"].each do |url| + json["urls"].as_a.each do |url| urls = {} of String => String urls[url["type"].as_s] = url["value"].as_s From 2ede282eeb2fe10f12e25cac37da177f20913c27 Mon Sep 17 00:00:00 2001 From: Rafal Wojsznis Date: Wed, 4 Jul 2018 15:19:56 +0200 Subject: [PATCH 2/2] Bump version due to incompatible change Semantic according to semver.org --- shard.yml | 4 ++-- src/multi_auth/version.cr | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/shard.yml b/shard.yml index 016cbed..2d323b4 100644 --- a/shard.yml +++ b/shard.yml @@ -1,10 +1,10 @@ name: multi_auth -version: 0.1.0 +version: 1.0.0 authors: - Sergey Makridenkov -crystal: 0.23.0 +crystal: 0.25.0 license: MIT diff --git a/src/multi_auth/version.cr b/src/multi_auth/version.cr index 96d93f9..f04638f 100644 --- a/src/multi_auth/version.cr +++ b/src/multi_auth/version.cr @@ -1,3 +1,3 @@ module MultiAuth - VERSION = "0.1.0" + VERSION = "1.0.0" end