# frozen_string_literal: true

require_relative 'lib/erp_integration/version'

Gem::Specification.new do |spec|
  spec.name          = 'erp_integration'
  spec.version       = ErpIntegration::VERSION
  spec.authors       = ['Stefan Vermaas']
  spec.email         = ['stefan@knowndecimal.com']

  spec.summary       = 'Connects Mejuri with third-party ERP vendors'
  spec.license       = 'MIT'
  spec.homepage      = 'https://www.github.com/mejuri-inc/erp-integration'
  spec.required_ruby_version = Gem::Requirement.new('>= 2.3.7')

  spec.metadata['allowed_push_host'] = 'https://rubygems.org'

  spec.metadata['homepage_uri'] = spec.homepage
  spec.metadata['source_code_uri'] = 'https://www.github.com/mejuri-inc/erp-integration'
  spec.metadata['changelog_uri'] = 'https://www.github.com/mejuri-inc/erp-integration/blob/main/CHANGELOG.md'

  # Specify which files should be added to the gem when it is released.
  # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
  spec.files = Dir.chdir(File.expand_path(__dir__)) do
    `git ls-files -z`.split("\x0").reject { |f| f.match(%r{\A(?:test|spec|features)/}) }
  end
  spec.bindir        = 'exe'
  spec.executables   = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
  spec.require_paths = ['lib']

  # ActiveSupport is used for extended support of String inflections.
  spec.add_dependency 'activesupport', '>= 0.12'

  # Faraday is a HTTP/REST API client library to interact with third-party API vendors
  spec.add_dependency 'faraday', '>= 0.17.3', '< 1.9.0'
  spec.add_dependency 'faraday_middleware', '>= 0.14', '< 1.3'

  # Development dependencies
  spec.add_development_dependency 'byebug', '~> 11.0'
  spec.add_development_dependency 'flay', '~> 2.12', '>= 2.12.1'
  spec.add_development_dependency 'github_changelog_generator', '~> 1.15.2'
  spec.add_development_dependency 'rake', '~> 13.0'
  spec.add_development_dependency 'reek', '< 6.0'
  spec.add_development_dependency 'rspec', '~> 3.10'
  spec.add_development_dependency 'rubocop', '< 0.82.0'
  spec.add_development_dependency 'rubocop-rake', '~> 0.5'
  spec.add_development_dependency 'rubocop-rspec', '< 1.39.0'
  spec.add_development_dependency 'webmock', '~> 3.14.0'

  # The `parallel` gem is a dev dependency for Rubocop. However, the versions
  # for parallel after 1.19.2 don't work with ruby 2.3.x. As ruby 2.3.x is
  # required for Mejuri, we're manually locking it to stay on `1.19.2`.
  spec.add_development_dependency 'parallel', '1.19.2'
end