teamsupport 0.1.1 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 34efcc772aafee7ea6e94d94e079829a772b132c
4
- data.tar.gz: d54e779b77291b47e05eb7ffca328ab4f96b851a
3
+ metadata.gz: 48f0057ea45c1a3755d758162ee330322f543cc5
4
+ data.tar.gz: 88d5d5493ece8d2e05e526750242f3ab6545b60d
5
5
  SHA512:
6
- metadata.gz: 225c7a5a5a9e1ff029b51b4a5e80a6f2dca64c057c3fe6a0893bddaa47008b0b2ac9c2e4572ea75a2f2be3576cfb7151a0caaf12cf6f2727725e3f36bf54657b
7
- data.tar.gz: 9a0c4de0a90e7c313c8d839361782053a1616050bccd93e9437800aac717f7ea4fea4ba5539e0dd62a6649ebf5bb6a5b2e49daeccdfb7c92770b1f2b6b56dde8
6
+ metadata.gz: daa3b76e1bf592e8130cbc9d6cd01006894b8f39f572159da5cf947946d461db3f063ac64b4888cbf125f0eca3460bf9a7633c7498dafaa4cb1847c6d6ce25c3
7
+ data.tar.gz: 8eec1767765bfd07a0cc60808c0c1354e59b146818ca42b91491b2ead9d7ba08cc7d983b807a5fef6236750122fbe25c11964a43b70fe3ae76a8fbacc3d47388
@@ -5,6 +5,13 @@ This project adheres to [Semantic Versioning](http://semver.org/).
5
5
  ## Unreleased
6
6
  - Backlog and Future Milestones are managed via [Github](https://github.com/jrbeilke/teamsupport/issues)
7
7
 
8
+ ## 0.2.0 - 2016-11-07
9
+ ### Added
10
+ - Add support for configuring URL used in API requests
11
+
12
+ ### Changed
13
+ - Upgraded to use http v2 and removed support for Ruby 1.9
14
+
8
15
  ## 0.1.1 - 2016-09-22
9
16
  ### Fixed
10
17
  - Fixed bad bundler dependency version in gemspec
data/README.md CHANGED
@@ -51,8 +51,11 @@ You can pass configuration options as a block to `Teamsupport::REST::Client.new`
51
51
  client = Teamsupport::REST::Client.new do |config|
52
52
  config.api_key = "TEAMSUPPORT_ORGANIZATION_ID"
53
53
  config.api_secret = "TEAMSUPPORT_API_TOKEN"
54
+ config.api_url = "TEAMSUPPORT_API_URL"
54
55
  end
55
56
 
57
+ The API url is not required and will default to `https://app.teamsupport.com` if not defined in config.
58
+
56
59
  ## Usage Examples
57
60
  After configuring a `client`, you can do the following things.
58
61
 
@@ -16,16 +16,17 @@ module Teamsupport
16
16
  # @api public
17
17
  attr_accessor :api_key, :api_secret
18
18
 
19
- # Provide user_agent method for overriding default Client user_agent value
19
+ # Provide api_url and user_agent methods for overriding default Client values
20
20
  #
21
21
  # @example
22
22
  # teamsupport_client = Teamsupport::Client.new(api_key: 'AK', api_secret: 'AS')
23
+ # teamsupport_client.api_url = 'https://app.teamsupport.com'
23
24
  # teamsupport_client.user_agent = 'MyTeamsupportClient/1.0.0'
24
25
  #
25
26
  # @return [String]
26
27
  #
27
28
  # @api public
28
- attr_writer :user_agent
29
+ attr_writer :api_url, :user_agent
29
30
 
30
31
  # Initializes a new Client object
31
32
  #
@@ -41,6 +42,19 @@ module Teamsupport
41
42
  yield(self) if block_given?
42
43
  end
43
44
 
45
+ # Returns api_url string for the Client
46
+ #
47
+ # @example
48
+ # teamsupport_client = Teamsupport::Client.new(api_key: 'AK', api_secret: 'AS')
49
+ # teamsupport_client.api_url
50
+ #
51
+ # @return [String]
52
+ #
53
+ # @api public
54
+ def api_url
55
+ @api_url ||= 'https://app.teamsupport.com'
56
+ end
57
+
44
58
  # Returns user agent string for the Client
45
59
  #
46
60
  # @example
@@ -17,10 +17,6 @@ module Teamsupport
17
17
  true
18
18
  end
19
19
 
20
- def respond_to?(*)
21
- true
22
- end
23
-
24
20
  def instance_of?(klass)
25
21
  raise(TypeError, 'class or module required') unless klass.is_a?(Class)
26
22
  self.class == klass
@@ -9,7 +9,6 @@ require 'teamsupport/headers'
9
9
  module Teamsupport
10
10
  module REST
11
11
  class Request
12
- BASE_URL = 'https://app.teamsupport.com'.freeze
13
12
  attr_accessor :client, :headers, :options, :path, :request_method, :uri
14
13
  alias verb request_method
15
14
 
@@ -25,7 +24,7 @@ module Teamsupport
25
24
  # @api private
26
25
  def initialize(client, request_method, path, options = {})
27
26
  @client = client
28
- @uri = Addressable::URI.parse(path.start_with?('http') ? path : BASE_URL + path)
27
+ @uri = Addressable::URI.parse(path.start_with?('http') ? path : @client.api_url + path)
29
28
  @request_method = request_method
30
29
  @headers = Teamsupport::Headers.new(@client, @request_method, @uri, options).request_headers
31
30
  @path = uri.path
@@ -17,7 +17,7 @@ module Teamsupport
17
17
  #
18
18
  # @api private
19
19
  def minor
20
- 1
20
+ 2
21
21
  end
22
22
 
23
23
  # Returns patch version
@@ -26,7 +26,7 @@ module Teamsupport
26
26
  #
27
27
  # @api private
28
28
  def patch
29
- 1
29
+ 0
30
30
  end
31
31
 
32
32
  # Returns pre version
@@ -6,7 +6,7 @@ require 'teamsupport/version'
6
6
  Gem::Specification.new do |spec|
7
7
  spec.add_dependency 'addressable', '~> 2.3'
8
8
  spec.add_dependency 'equalizer', '~> 0.0.11'
9
- spec.add_dependency 'http', '~> 1.0'
9
+ spec.add_dependency 'http', '~> 2.0'
10
10
  spec.add_dependency 'http-form_data', '~> 1.0'
11
11
  spec.add_dependency 'naught', '~> 1.0'
12
12
  spec.add_development_dependency 'bundler', '~> 1.0'
@@ -16,12 +16,12 @@ Gem::Specification.new do |spec|
16
16
  spec.authors = ['Jon Beilke']
17
17
  spec.email = ['jrbeilke@gmail.com']
18
18
 
19
- spec.summary = spec.description
20
- spec.description = 'A Ruby interface to the Teamsupport API.'
19
+ spec.summary = 'A Ruby interface to the Teamsupport API.'
20
+ spec.description = 'A simple library for communicating with the TeamSupport API. Currently supports Customers, Products, and Tickets, with plans to expand to full support of the API with a 1.0 release.'
21
21
  spec.homepage = 'https://github.com/jrbeilke/teamsupport'
22
22
  spec.licenses = %w(MIT)
23
23
 
24
24
  spec.files = %w(.yardopts CHANGELOG.md CONTRIBUTING.md LICENSE.md README.md teamsupport.gemspec) + Dir['lib/**/*.rb']
25
25
  spec.require_paths = %w(lib)
26
- spec.required_ruby_version = '>= 1.9.3'
26
+ spec.required_ruby_version = '>= 2.0.0'
27
27
  end
metadata CHANGED
@@ -1,107 +1,109 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: teamsupport
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jon Beilke
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-09-22 00:00:00.000000000 Z
11
+ date: 2016-11-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: addressable
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ~>
18
18
  - !ruby/object:Gem::Version
19
19
  version: '2.3'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - "~>"
24
+ - - ~>
25
25
  - !ruby/object:Gem::Version
26
26
  version: '2.3'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: equalizer
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ~>
32
32
  - !ruby/object:Gem::Version
33
33
  version: 0.0.11
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - "~>"
38
+ - - ~>
39
39
  - !ruby/object:Gem::Version
40
40
  version: 0.0.11
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: http
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - "~>"
45
+ - - ~>
46
46
  - !ruby/object:Gem::Version
47
- version: '1.0'
47
+ version: '2.0'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - "~>"
52
+ - - ~>
53
53
  - !ruby/object:Gem::Version
54
- version: '1.0'
54
+ version: '2.0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: http-form_data
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - "~>"
59
+ - - ~>
60
60
  - !ruby/object:Gem::Version
61
61
  version: '1.0'
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - "~>"
66
+ - - ~>
67
67
  - !ruby/object:Gem::Version
68
68
  version: '1.0'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: naught
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - "~>"
73
+ - - ~>
74
74
  - !ruby/object:Gem::Version
75
75
  version: '1.0'
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - "~>"
80
+ - - ~>
81
81
  - !ruby/object:Gem::Version
82
82
  version: '1.0'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: bundler
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - "~>"
87
+ - - ~>
88
88
  - !ruby/object:Gem::Version
89
89
  version: '1.0'
90
90
  type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - "~>"
94
+ - - ~>
95
95
  - !ruby/object:Gem::Version
96
96
  version: '1.0'
97
- description: A Ruby interface to the Teamsupport API.
97
+ description: A simple library for communicating with the TeamSupport API. Currently
98
+ supports Customers, Products, and Tickets, with plans to expand to full support
99
+ of the API with a 1.0 release.
98
100
  email:
99
101
  - jrbeilke@gmail.com
100
102
  executables: []
101
103
  extensions: []
102
104
  extra_rdoc_files: []
103
105
  files:
104
- - ".yardopts"
106
+ - .yardopts
105
107
  - CHANGELOG.md
106
108
  - CONTRIBUTING.md
107
109
  - LICENSE.md
@@ -140,12 +142,12 @@ require_paths:
140
142
  - lib
141
143
  required_ruby_version: !ruby/object:Gem::Requirement
142
144
  requirements:
143
- - - ">="
145
+ - - '>='
144
146
  - !ruby/object:Gem::Version
145
- version: 1.9.3
147
+ version: 2.0.0
146
148
  required_rubygems_version: !ruby/object:Gem::Requirement
147
149
  requirements:
148
- - - ">="
150
+ - - '>='
149
151
  - !ruby/object:Gem::Version
150
152
  version: '0'
151
153
  requirements: []
@@ -153,6 +155,5 @@ rubyforge_project:
153
155
  rubygems_version: 2.4.2
154
156
  signing_key:
155
157
  specification_version: 4
156
- summary: ''
158
+ summary: A Ruby interface to the Teamsupport API.
157
159
  test_files: []
158
- has_rdoc: