From dab47ae76ec0eba540d6106c78a9b0c179bc2e5b Mon Sep 17 00:00:00 2001 From: Dzmitry Kremez Date: Mon, 12 Feb 2024 10:54:29 +0000 Subject: [PATCH 1/3] Provide installation type as settings attribute --- lib/intercom-rails/script_tag.rb | 1 + lib/intercom-rails/version.rb | 2 +- spec/script_tag_spec.rb | 7 +++++++ 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/lib/intercom-rails/script_tag.rb b/lib/intercom-rails/script_tag.rb index 319f471..c753879 100644 --- a/lib/intercom-rails/script_tag.rb +++ b/lib/intercom-rails/script_tag.rb @@ -72,6 +72,7 @@ def intercom_settings hsh[:company] = company_details if company_details.present? hsh[:hide_default_launcher] = Config.hide_default_launcher if Config.hide_default_launcher hsh[:api_base] = Config.api_base if Config.api_base + hsh[:installation_type] = 'rails' hsh end diff --git a/lib/intercom-rails/version.rb b/lib/intercom-rails/version.rb index e2aef2d..6b0cf04 100644 --- a/lib/intercom-rails/version.rb +++ b/lib/intercom-rails/version.rb @@ -1,3 +1,3 @@ module IntercomRails - VERSION = "0.4.2" + VERSION = "0.4.3" end diff --git a/spec/script_tag_spec.rb b/spec/script_tag_spec.rb index 705fe24..a91c40e 100644 --- a/spec/script_tag_spec.rb +++ b/spec/script_tag_spec.rb @@ -37,6 +37,13 @@ end end + context 'integration type' do + it 'should be rails' do + script_tag = ScriptTag.new() + expect(script_tag.intercom_settings[:installation_type]).to eq('rails') + end + end + it 'strips out nil entries for standard attributes' do %w(name email user_id).each do |standard_attribute| with_value = ScriptTag.new(:user_details => {standard_attribute => 'value'}) From 1993c22f5ea5036f20b92c5be33fecd92559000a Mon Sep 17 00:00:00 2001 From: Dzmitry Kremez Date: Mon, 12 Feb 2024 11:23:04 +0000 Subject: [PATCH 2/3] Update CI ruby version to fix CI build --- .circleci/config.yml | 2 +- intercom-rails.gemspec | 11 ++++++----- lib/intercom-rails/script_tag.rb | 4 +--- spec/script_tag_helper_spec.rb | 2 +- spec/script_tag_spec.rb | 2 +- 5 files changed, 10 insertions(+), 11 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 348cea4..465eccf 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -2,7 +2,7 @@ version: 2 jobs: build: docker: - - image: circleci/ruby:2.5.7 + - image: cimg/ruby:2.7 working_directory: ~/intercom-rails diff --git a/intercom-rails.gemspec b/intercom-rails.gemspec index 44d9c83..03b9633 100644 --- a/intercom-rails.gemspec +++ b/intercom-rails.gemspec @@ -18,14 +18,15 @@ Gem::Specification.new do |s| s.files = Dir["{app,config,db,lib}/**/*"] + ["Rakefile", "README.md"] s.test_files = Dir["test/**/*"] - s.add_dependency 'activesupport', '>3.0' + s.add_dependency 'activesupport', '>4.0' s.add_development_dependency 'rake' - s.add_development_dependency 'actionpack', '>3.2.12' - s.add_development_dependency 'rspec', '~> 3.1' - s.add_development_dependency 'rspec-rails', '~> 3.1' + s.add_development_dependency 'actionpack', '>5.0' + s.add_development_dependency 'rspec', '~> 3.13' + s.add_development_dependency 'rspec-rails', '~> 5.0' s.add_development_dependency 'pry' - s.add_development_dependency 'sinatra', '~> 1.4.5' + s.add_development_dependency 'sinatra', '~> 2.0' s.add_development_dependency 'thin', '~> 1.7.0' + s.add_development_dependency 'bigdecimal', '1.3.5' s.add_development_dependency 'tzinfo' s.add_development_dependency 'gem-release' end diff --git a/lib/intercom-rails/script_tag.rb b/lib/intercom-rails/script_tag.rb index c753879..db439c9 100644 --- a/lib/intercom-rails/script_tag.rb +++ b/lib/intercom-rails/script_tag.rb @@ -1,8 +1,6 @@ # frozen_string_literal: true -require 'active_support/json' -require 'active_support/core_ext/hash/indifferent_access' -require 'active_support/core_ext/string/output_safety' +require 'active_support/all' require 'action_view' module IntercomRails diff --git a/spec/script_tag_helper_spec.rb b/spec/script_tag_helper_spec.rb index 8fab37a..4c2c780 100644 --- a/spec/script_tag_helper_spec.rb +++ b/spec/script_tag_helper_spec.rb @@ -35,7 +35,7 @@ :email => 'marco@intercom.io', :user_id => 'marco', }) - expect(script_tag.csp_sha256).to eq("'sha256-qLRbekKD6dEDMyLKPNFYpokzwYCz+WeNPqJE603mT24='") + expect(script_tag.csp_sha256).to eq("'sha256-lOGcYryJDhf1KCboXuy8wxCxIGAT16HDiUQNRhluxRQ='") end it 'inserts a valid nonce if present' do diff --git a/spec/script_tag_spec.rb b/spec/script_tag_spec.rb index a91c40e..53bd084 100644 --- a/spec/script_tag_spec.rb +++ b/spec/script_tag_spec.rb @@ -206,7 +206,7 @@ def sha256_hmac(secret, input) :email => 'marco@intercom.io', :user_id => 'marco', }) - expect(script_tag.csp_sha256).to eq("'sha256-qLRbekKD6dEDMyLKPNFYpokzwYCz+WeNPqJE603mT24='") + expect(script_tag.csp_sha256).to eq("'sha256-lOGcYryJDhf1KCboXuy8wxCxIGAT16HDiUQNRhluxRQ='") end it 'inserts a valid nonce if present' do From ba56d58898301fc59c9aa7cbb56ffd2c1688dcf2 Mon Sep 17 00:00:00 2001 From: Dzmitry Kremez Date: Mon, 12 Feb 2024 14:59:22 +0000 Subject: [PATCH 3/3] Bump gem version number to 1.0.0 as we dropped active record 3.x support --- lib/intercom-rails/version.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/intercom-rails/version.rb b/lib/intercom-rails/version.rb index 6b0cf04..8c2b46c 100644 --- a/lib/intercom-rails/version.rb +++ b/lib/intercom-rails/version.rb @@ -1,3 +1,3 @@ module IntercomRails - VERSION = "0.4.3" + VERSION = "1.0.0" end