Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .ruby-gemset
Original file line number Diff line number Diff line change
@@ -1 +1 @@
tokyo_api
-global
Comment thread
ehimen-io marked this conversation as resolved.
Outdated
2 changes: 1 addition & 1 deletion .ruby-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
3.4.5
4.0.1
14 changes: 14 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# Changelog

## [1.11.0] - 2026-02-11

### Added
- Added `faraday ~> 2.0` as explicit runtime dependency
- Added `faraday-mashify ~> 1.0` as explicit runtime dependency
- Added `rake ~> 13.0` as development dependency
- Added `require 'faraday/mashify'` to main library file

### Updates
- Upgraded from Ruby 3.4.5 to Ruby 4.0.1
Comment thread
ehimen-io marked this conversation as resolved.
Outdated
- Updated vertebrae dependency to >= 1.0.5 for Faraday 2.x compatibility
- Modernized gemspec file with proper dependency declarations
16 changes: 3 additions & 13 deletions Gemfile
Original file line number Diff line number Diff line change
@@ -1,16 +1,6 @@
# frozen_string_literal: true

source 'http://rubygems.org'
source 'https://rubygems.org'

gem 'vertebrae', '< 1'

# Add dependencies to develop your gem here.
# Include everything needed to run rake, tests, features, etc.
group :development do
gem 'bundler'
gem 'byebug'
gem 'juwelier', git: 'https://github.com/flajann2/juwelier.git'
gem 'rspec'
gem 'rubocop'
gem 'webmock'
end
# Specify your gem's dependencies in tokyo_api.gemspec
gemspec
45 changes: 2 additions & 43 deletions Rakefile
Original file line number Diff line number Diff line change
@@ -1,49 +1,8 @@
# frozen_string_literal: true

require 'rubygems'
require 'bundler'
begin
Bundler.setup(:default, :development)
rescue Bundler::BundlerError => e
warn e.message
warn 'Run `bundle install` to install missing gems'
exit e.status_code
end
require 'rake'

require 'juwelier'
Juwelier::Tasks.new do |gem|
# gem is a Gem::Specification... see http://docs.rubygems.org/read/chapter/20 for more options
gem.name = 'tokyo_api'
gem.homepage = 'http://github.com/controlshift/tokyo_api'
gem.license = 'MIT'
gem.summary = 'Ruby API Wrapper for Tokyo CRM service'
gem.description = 'Tokyo is a CRM middleware, this gem helps apps talk to it.'
gem.email = 'nathan@controlshiftlabs.com'
gem.authors = ['Nathan Woodhull']
# dependencies defined in Gemfile
end
Juwelier::RubygemsDotOrgTasks.new

require 'rspec/core'
require 'bundler/gem_tasks'
require 'rspec/core/rake_task'
RSpec::Core::RakeTask.new(:spec) do |spec|
spec.pattern = FileList['spec/**/*_spec.rb']
end

RSpec::Core::RakeTask.new(:rcov) do |spec|
spec.pattern = 'spec/**/*_spec.rb'
spec.rcov = true
end
RSpec::Core::RakeTask.new(:spec)

task default: :spec

require 'rdoc/task'
Rake::RDocTask.new do |rdoc|
version = File.exist?('VERSION') ? File.read('VERSION') : ''

rdoc.rdoc_dir = 'rdoc'
rdoc.title = "tokyo_api #{version}"
rdoc.rdoc_files.include('README*')
rdoc.rdoc_files.include('lib/**/*.rb')
end
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
1.10.0
1.11.0
1 change: 1 addition & 0 deletions lib/tokyo_api.rb
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
# frozen_string_literal: true

require 'vertebrae'
require 'faraday/mashify'
require 'tokyo_api/base'
require 'tokyo_api/actionkit'
require 'tokyo_api/campact'
Expand Down
20 changes: 9 additions & 11 deletions lib/tokyo_api/client.rb
Original file line number Diff line number Diff line change
Expand Up @@ -57,21 +57,19 @@ def request(method, path, params, options) # :nodoc:
end

def setup
connection.stack do |builder|
builder.use Faraday::Request::Multipart
builder.use Faraday::Request::UrlEncoded
connection.faraday_connection = Faraday.new(connection.configuration.faraday_options) do |f|
f.request :multipart
f.request :url_encoded
if connection.configuration.authenticated?
builder.use Faraday::Request::BasicAuthentication, connection.configuration.username,
connection.configuration.password
f.request :authorization, :basic, connection.configuration.username, connection.configuration.password
end

builder.use Faraday::Response::Logger if ENV['DEBUG']
f.response :logger if ENV['DEBUG']
f.response :mashify
f.response :json

builder.use FaradayMiddleware::Mashify
builder.use FaradayMiddleware::ParseJson

builder.use Vertebrae::Response::RaiseError
builder.adapter connection.configuration.adapter
f.use Vertebrae::Response::RaiseError
f.adapter connection.configuration.adapter
end
end
end
Expand Down
111 changes: 32 additions & 79 deletions tokyo_api.gemspec
Original file line number Diff line number Diff line change
@@ -1,85 +1,38 @@
# Generated by juwelier
# DO NOT EDIT THIS FILE DIRECTLY
# Instead, edit Juwelier::Tasks in Rakefile, and run 'rake gemspec'
# -*- encoding: utf-8 -*-
# stub: tokyo_api 1.9.0 ruby lib
# frozen_string_literal: true

Gem::Specification.new do |s|
s.name = "tokyo_api".freeze
s.version = "1.9.0"
lib = File.expand_path('lib', __dir__)
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)

s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
s.require_paths = ["lib".freeze]
s.authors = ["Nathan Woodhull".freeze]
s.date = "2023-09-28"
s.description = "Tokyo is a CRM middleware, this gem helps apps talk to it.".freeze
s.email = "nathan@controlshiftlabs.com".freeze
s.extra_rdoc_files = [
"LICENSE.txt",
"README.md"
]
s.files = [
".document",
".github/workflows/ci.yml",
".rspec",
".ruby-gemset",
".ruby-version",
"Gemfile",
"LICENSE.txt",
"README.md",
"Rakefile",
"VERSION",
"example.rb",
"lib/tokyo_api.rb",
"lib/tokyo_api/actionkit.rb",
"lib/tokyo_api/base.rb",
"lib/tokyo_api/campact.rb",
"lib/tokyo_api/client.rb",
"lib/tokyo_api/expire.rb",
"lib/tokyo_api/external_image.rb",
"lib/tokyo_api/identity.rb",
"spec/actionkit_spec.rb",
"spec/campact_spec.rb",
"spec/client_spec.rb",
"spec/expire_spec.rb",
"spec/external_image_spec.rb",
"spec/fixtures/expire/success",
"spec/fixtures/responses/actionkit/full_user_success",
"spec/fixtures/responses/campact/full_user_success",
"spec/fixtures/responses/full_user_error",
"spec/fixtures/responses/full_user_success",
"spec/fixtures/responses/identity/full_user_success",
"spec/fixtures/responses/krautbuster/full_user_success",
"spec/identity_spec.rb",
"spec/spec_helper.rb",
"spec/tokyo_api_spec.rb",
"tokyo_api.gemspec"
]
s.homepage = "http://github.com/controlshift/tokyo_api".freeze
s.licenses = ["MIT".freeze]
s.rubygems_version = "3.3.19".freeze
s.summary = "Ruby API Wrapper for Tokyo CRM service".freeze
Gem::Specification.new do |spec|
spec.name = 'tokyo_api'
spec.version = File.read(File.expand_path('VERSION', __dir__)).strip
spec.authors = ['Nathan Woodhull']
Comment thread
ehimen-io marked this conversation as resolved.
Outdated
spec.email = ['nathan@controlshiftlabs.com']
Comment thread
ehimen-io marked this conversation as resolved.
Outdated

if s.respond_to? :specification_version then
s.specification_version = 4
end
spec.summary = 'Ruby API Wrapper for Tokyo CRM service'
spec.description = 'Tokyo is a CRM middleware, this gem helps apps talk to it.'
spec.homepage = 'https://github.com/controlshift/tokyo_api'
spec.license = 'MIT'

if s.respond_to? :add_runtime_dependency then
s.add_runtime_dependency(%q<vertebrae>.freeze, ["< 1"])
s.add_development_dependency(%q<bundler>.freeze, [">= 0"])
s.add_development_dependency(%q<byebug>.freeze, [">= 0"])
s.add_development_dependency(%q<juwelier>.freeze, [">= 0"])
s.add_development_dependency(%q<rspec>.freeze, [">= 0"])
s.add_development_dependency(%q<rubocop>.freeze, [">= 0"])
s.add_development_dependency(%q<webmock>.freeze, [">= 0"])
else
s.add_dependency(%q<vertebrae>.freeze, ["< 1"])
s.add_dependency(%q<bundler>.freeze, [">= 0"])
s.add_dependency(%q<byebug>.freeze, [">= 0"])
s.add_dependency(%q<juwelier>.freeze, [">= 0"])
s.add_dependency(%q<rspec>.freeze, [">= 0"])
s.add_dependency(%q<rubocop>.freeze, [">= 0"])
s.add_dependency(%q<webmock>.freeze, [">= 0"])
spec.files = Dir.chdir(File.expand_path(__dir__)) do
`git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
end
end
spec.require_paths = ['lib']

spec.required_ruby_version = '>= 3.0.0'

# Runtime dependencies
spec.add_runtime_dependency 'vertebrae', '>= 1.0.5'
spec.add_runtime_dependency 'faraday', '~> 2.0'
spec.add_runtime_dependency 'faraday-mashify', '~> 1.0'

# Development dependencies
spec.add_development_dependency 'bundler', '>= 2.0'
spec.add_development_dependency 'byebug'
spec.add_development_dependency 'rake', '~> 13.0'
spec.add_development_dependency 'rspec', '~> 3.0'
spec.add_development_dependency 'rubocop'
spec.add_development_dependency 'webmock'

spec.metadata['rubygems_mfa_required'] = 'true'
end