github_api2 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (127) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +770 -0
  3. data/LICENSE.txt +20 -0
  4. data/README.md +741 -0
  5. data/lib/github_api2/api/actions.rb +60 -0
  6. data/lib/github_api2/api/arguments.rb +253 -0
  7. data/lib/github_api2/api/config/property.rb +30 -0
  8. data/lib/github_api2/api/config/property_set.rb +120 -0
  9. data/lib/github_api2/api/config.rb +105 -0
  10. data/lib/github_api2/api/factory.rb +33 -0
  11. data/lib/github_api2/api.rb +398 -0
  12. data/lib/github_api2/authorization.rb +75 -0
  13. data/lib/github_api2/client/activity/events.rb +233 -0
  14. data/lib/github_api2/client/activity/feeds.rb +50 -0
  15. data/lib/github_api2/client/activity/notifications.rb +181 -0
  16. data/lib/github_api2/client/activity/starring.rb +130 -0
  17. data/lib/github_api2/client/activity/watching.rb +176 -0
  18. data/lib/github_api2/client/activity.rb +31 -0
  19. data/lib/github_api2/client/authorizations/app.rb +98 -0
  20. data/lib/github_api2/client/authorizations.rb +142 -0
  21. data/lib/github_api2/client/emojis.rb +19 -0
  22. data/lib/github_api2/client/gists/comments.rb +100 -0
  23. data/lib/github_api2/client/gists.rb +289 -0
  24. data/lib/github_api2/client/git_data/blobs.rb +51 -0
  25. data/lib/github_api2/client/git_data/commits.rb +101 -0
  26. data/lib/github_api2/client/git_data/references.rb +150 -0
  27. data/lib/github_api2/client/git_data/tags.rb +95 -0
  28. data/lib/github_api2/client/git_data/trees.rb +113 -0
  29. data/lib/github_api2/client/git_data.rb +31 -0
  30. data/lib/github_api2/client/gitignore.rb +57 -0
  31. data/lib/github_api2/client/issues/assignees.rb +77 -0
  32. data/lib/github_api2/client/issues/comments.rb +146 -0
  33. data/lib/github_api2/client/issues/events.rb +50 -0
  34. data/lib/github_api2/client/issues/labels.rb +189 -0
  35. data/lib/github_api2/client/issues/milestones.rb +146 -0
  36. data/lib/github_api2/client/issues.rb +248 -0
  37. data/lib/github_api2/client/markdown.rb +62 -0
  38. data/lib/github_api2/client/meta.rb +19 -0
  39. data/lib/github_api2/client/orgs/hooks.rb +182 -0
  40. data/lib/github_api2/client/orgs/members.rb +142 -0
  41. data/lib/github_api2/client/orgs/memberships.rb +131 -0
  42. data/lib/github_api2/client/orgs/projects.rb +57 -0
  43. data/lib/github_api2/client/orgs/teams.rb +407 -0
  44. data/lib/github_api2/client/orgs.rb +127 -0
  45. data/lib/github_api2/client/projects/cards.rb +158 -0
  46. data/lib/github_api2/client/projects/columns.rb +146 -0
  47. data/lib/github_api2/client/projects.rb +83 -0
  48. data/lib/github_api2/client/pull_requests/comments.rb +140 -0
  49. data/lib/github_api2/client/pull_requests/reviews.rb +158 -0
  50. data/lib/github_api2/client/pull_requests.rb +195 -0
  51. data/lib/github_api2/client/repos/branches/protections.rb +75 -0
  52. data/lib/github_api2/client/repos/branches.rb +48 -0
  53. data/lib/github_api2/client/repos/collaborators.rb +84 -0
  54. data/lib/github_api2/client/repos/comments.rb +125 -0
  55. data/lib/github_api2/client/repos/commits.rb +80 -0
  56. data/lib/github_api2/client/repos/contents.rb +263 -0
  57. data/lib/github_api2/client/repos/deployments.rb +138 -0
  58. data/lib/github_api2/client/repos/downloads.rb +62 -0
  59. data/lib/github_api2/client/repos/forks.rb +50 -0
  60. data/lib/github_api2/client/repos/hooks.rb +214 -0
  61. data/lib/github_api2/client/repos/invitations.rb +41 -0
  62. data/lib/github_api2/client/repos/keys.rb +104 -0
  63. data/lib/github_api2/client/repos/merging.rb +47 -0
  64. data/lib/github_api2/client/repos/pages.rb +48 -0
  65. data/lib/github_api2/client/repos/projects.rb +62 -0
  66. data/lib/github_api2/client/repos/pub_sub_hubbub.rb +133 -0
  67. data/lib/github_api2/client/repos/releases/assets.rb +136 -0
  68. data/lib/github_api2/client/repos/releases/tags.rb +24 -0
  69. data/lib/github_api2/client/repos/releases.rb +189 -0
  70. data/lib/github_api2/client/repos/statistics.rb +89 -0
  71. data/lib/github_api2/client/repos/statuses.rb +91 -0
  72. data/lib/github_api2/client/repos.rb +473 -0
  73. data/lib/github_api2/client/say.rb +25 -0
  74. data/lib/github_api2/client/scopes.rb +46 -0
  75. data/lib/github_api2/client/search/legacy.rb +111 -0
  76. data/lib/github_api2/client/search.rb +133 -0
  77. data/lib/github_api2/client/users/emails.rb +65 -0
  78. data/lib/github_api2/client/users/followers.rb +115 -0
  79. data/lib/github_api2/client/users/keys.rb +104 -0
  80. data/lib/github_api2/client/users.rb +117 -0
  81. data/lib/github_api2/client.rb +77 -0
  82. data/lib/github_api2/configuration.rb +70 -0
  83. data/lib/github_api2/connection.rb +82 -0
  84. data/lib/github_api2/constants.rb +61 -0
  85. data/lib/github_api2/core_ext/array.rb +25 -0
  86. data/lib/github_api2/core_ext/hash.rb +91 -0
  87. data/lib/github_api2/deprecation.rb +39 -0
  88. data/lib/github_api2/error/client_error.rb +89 -0
  89. data/lib/github_api2/error/service_error.rb +223 -0
  90. data/lib/github_api2/error.rb +32 -0
  91. data/lib/github_api2/ext/faraday.rb +40 -0
  92. data/lib/github_api2/mash.rb +7 -0
  93. data/lib/github_api2/middleware.rb +37 -0
  94. data/lib/github_api2/mime_type.rb +33 -0
  95. data/lib/github_api2/normalizer.rb +23 -0
  96. data/lib/github_api2/null_encoder.rb +25 -0
  97. data/lib/github_api2/page_iterator.rb +138 -0
  98. data/lib/github_api2/page_links.rb +63 -0
  99. data/lib/github_api2/paged_request.rb +42 -0
  100. data/lib/github_api2/pagination.rb +115 -0
  101. data/lib/github_api2/parameter_filter.rb +35 -0
  102. data/lib/github_api2/params_hash.rb +115 -0
  103. data/lib/github_api2/rate_limit.rb +25 -0
  104. data/lib/github_api2/request/basic_auth.rb +36 -0
  105. data/lib/github_api2/request/jsonize.rb +54 -0
  106. data/lib/github_api2/request/oauth2.rb +45 -0
  107. data/lib/github_api2/request/verbs.rb +63 -0
  108. data/lib/github_api2/request.rb +84 -0
  109. data/lib/github_api2/response/atom_parser.rb +22 -0
  110. data/lib/github_api2/response/follow_redirects.rb +140 -0
  111. data/lib/github_api2/response/header.rb +87 -0
  112. data/lib/github_api2/response/jsonize.rb +28 -0
  113. data/lib/github_api2/response/mashify.rb +24 -0
  114. data/lib/github_api2/response/raise_error.rb +22 -0
  115. data/lib/github_api2/response/xmlize.rb +28 -0
  116. data/lib/github_api2/response.rb +48 -0
  117. data/lib/github_api2/response_wrapper.rb +161 -0
  118. data/lib/github_api2/ssl_certs/cacerts.pem +2183 -0
  119. data/lib/github_api2/utils/url.rb +63 -0
  120. data/lib/github_api2/validations/format.rb +26 -0
  121. data/lib/github_api2/validations/presence.rb +32 -0
  122. data/lib/github_api2/validations/required.rb +21 -0
  123. data/lib/github_api2/validations/token.rb +41 -0
  124. data/lib/github_api2/validations.rb +22 -0
  125. data/lib/github_api2/version.rb +5 -0
  126. data/lib/github_api2.rb +92 -0
  127. metadata +363 -0
@@ -0,0 +1,63 @@
1
+ # encoding:utf-8
2
+
3
+ require 'cgi'
4
+ require 'addressable/uri'
5
+
6
+ module Github
7
+ module Utils
8
+ module Url
9
+ extend self
10
+
11
+ DEFAULT_QUERY_SEP = /[&;] */n
12
+
13
+ KEY_VALUE_SEP = '='.freeze
14
+
15
+ def escape_uri(s) Addressable::URI.escape(s.to_s) end
16
+
17
+ def escape(s) CGI.escape(s.to_s) end
18
+
19
+ def unescape(s) CGI.unescape(s.to_s) end
20
+
21
+ def normalize(s) Addressable::URI.parse(s.to_s).normalize.path end
22
+
23
+ def build_query(params)
24
+ params.map { |k, v|
25
+ if v.class == Array
26
+ build_query(v.map { |x| [k, x] })
27
+ else
28
+ v.nil? ? escape(k) : "#{escape(k)}=#{escape(v)}"
29
+ end
30
+ }.join("&")
31
+ end
32
+
33
+ def parse_query(query_string)
34
+ return '' if query_string.nil? || query_string.empty?
35
+ params = {}
36
+
37
+ query_string.split(DEFAULT_QUERY_SEP).each do |part|
38
+ k, v = part.split(KEY_VALUE_SEP, 2).map { |el| unescape(el) }
39
+
40
+ if cur = params[k]
41
+ if cur.class == Array
42
+ params[k] << v
43
+ else
44
+ params[k] = [cur, v]
45
+ end
46
+ else
47
+ params[k] = v
48
+ end
49
+ end
50
+ params
51
+ end
52
+
53
+ def parse_query_for_param(query_string, name)
54
+ parse_query(query_string).each do |key, val|
55
+ return val.first if (name == key) && val.is_a?(Array)
56
+ return val if (name == key)
57
+ end
58
+ return nil
59
+ end
60
+
61
+ end # Url
62
+ end # Utils
63
+ end # Github
@@ -0,0 +1,26 @@
1
+ # encoding: utf-8
2
+
3
+ require_relative '../error/client_error'
4
+
5
+ module Github
6
+ module Validations
7
+ module Format
8
+
9
+ # Ensures that value for a given key is of the correct form whether
10
+ # matching regular expression or set of predefined values.
11
+ #
12
+ def assert_valid_values(permitted, params)
13
+ params.each do |k, v|
14
+ next unless permitted.keys.include?(k)
15
+ if permitted[k].is_a?(Array) && !permitted[k].include?(params[k])
16
+ raise Github::Error::UnknownValue.new(k,v, permitted[k].join(', '))
17
+
18
+ elsif permitted[k].is_a?(Regexp) && !(permitted[k] =~ params[k])
19
+ raise Github::Error::UnknownValue.new(k,v, permitted[k])
20
+ end
21
+ end
22
+ end
23
+
24
+ end # Format
25
+ end # Validations
26
+ end # Github
@@ -0,0 +1,32 @@
1
+ # encoding: utf-8
2
+
3
+ require_relative '../error/client_error'
4
+
5
+ module Github
6
+ module Validations
7
+ # A mixin to help validate presence of non-empty values
8
+ module Presence
9
+
10
+ # Ensure that essential arguments are present before request is made.
11
+ #
12
+ # == Parameters
13
+ # Hash/Array of arguments to be checked against nil and empty string
14
+ #
15
+ # == Example
16
+ # assert_presence_of user: '...', repo: '...'
17
+ # assert_presence_of user, repo
18
+ #
19
+ def assert_presence_of(*args)
20
+ hash = args.last.is_a?(::Hash) ? args.pop : {}
21
+
22
+ errors = hash.select { |key, val| val.to_s.empty? }
23
+ raise Github::Error::Validations.new(errors) unless errors.empty?
24
+
25
+ args.each do |arg|
26
+ raise ArgumentError, "parameter cannot be nil" if arg.nil?
27
+ end
28
+ end
29
+
30
+ end # Presence
31
+ end # Validations
32
+ end # Github
@@ -0,0 +1,21 @@
1
+ # encoding: utf-8
2
+
3
+ require_relative '../error/client_error'
4
+
5
+ module Github
6
+ module Validations
7
+ module Required
8
+ # Validate all keys present in a provided hash against required set,
9
+ # on mismatch raise Github::Error::RequiredParams
10
+ # Note that keys need to be in the same format i.e. symbols or strings,
11
+ # otherwise the comparison will fail.
12
+ #
13
+ # @api public
14
+ def assert_required_keys(*required, provided)
15
+ required.flatten.all? { |key|
16
+ provided.deep_key?(key.to_s)
17
+ } || (raise Github::Error::RequiredParams.new(provided, required))
18
+ end
19
+ end # Required
20
+ end # Validations
21
+ end # Github
@@ -0,0 +1,41 @@
1
+ # encoding: utf-8
2
+
3
+ module Github
4
+ module Validations
5
+ module Token
6
+
7
+ TOKEN_REQUIRED = [
8
+ 'get /user',
9
+ 'get /user/emails',
10
+ 'get /user/followers',
11
+ 'get /user/following',
12
+ 'get /user/keys',
13
+ 'get /user/repos',
14
+ 'patch /user',
15
+ 'post /user/emails',
16
+ 'post /user/keys',
17
+ 'post /user/repos'
18
+ ]
19
+
20
+ TOKEN_REQUIRED_REGEXP = [
21
+ /repos\/.*\/.*\/comments/,
22
+ ]
23
+
24
+ # Ensures that required authentication token is present before
25
+ # request is sent.
26
+ #
27
+ def validates_token_for(method, path)
28
+ return true unless TOKEN_REQUIRED.grep("#{method} #{path}").empty?
29
+
30
+ token_required = false
31
+ TOKEN_REQUIRED_REGEXP.each do |regex|
32
+ if "#{method} #{path}" =~ regex
33
+ token_required = true
34
+ end
35
+ end
36
+ return token_required
37
+ end
38
+
39
+ end # Token
40
+ end # Validations
41
+ end # Github
@@ -0,0 +1,22 @@
1
+ # encoding: utf-8
2
+
3
+ require_relative 'validations/format'
4
+ require_relative 'validations/presence'
5
+ require_relative 'validations/required'
6
+ require_relative 'validations/token'
7
+
8
+ module Github
9
+ module Validations
10
+ include Presence
11
+ include Format
12
+ include Token
13
+ include Required
14
+
15
+ VALID_API_KEYS = [
16
+ 'page',
17
+ 'per_page',
18
+ 'auto_pagination',
19
+ 'jsonp_callback'
20
+ ]
21
+ end # Validation
22
+ end # Github
@@ -0,0 +1,5 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Github
4
+ VERSION = "1.0.0"
5
+ end # Github
@@ -0,0 +1,92 @@
1
+ # encoding: utf-8
2
+
3
+ require 'pp' if ENV['DEBUG']
4
+
5
+ require 'faraday'
6
+ require_relative 'github_api2/ext/faraday'
7
+
8
+ module Github
9
+ LIBNAME = 'github_api2'
10
+
11
+ LIBDIR = File.expand_path("../#{LIBNAME}", __FILE__)
12
+
13
+ class << self
14
+ # The client configuration
15
+ #
16
+ # @return [Configuration]
17
+ #
18
+ # @api public
19
+ def configuration
20
+ @configuration ||= Configuration.new
21
+ end
22
+ alias_method :config, :configuration
23
+
24
+ # Configure options
25
+ #
26
+ # @example
27
+ # Github.configure do |c|
28
+ # c.some_option = true
29
+ # end
30
+ #
31
+ # @yield the configuration block
32
+ # @yieldparam configuration [Github::Configuration]
33
+ # the configuration instance
34
+ #
35
+ # @return [nil]
36
+ #
37
+ # @api public
38
+ def configure
39
+ yield configuration
40
+ end
41
+
42
+ # Alias for Github::Client.new
43
+ #
44
+ # @param [Hash] options
45
+ # the configuration options
46
+ #
47
+ # @return [Github::Client]
48
+ #
49
+ # @api public
50
+ def new(options = {}, &block)
51
+ Client.new(options, &block)
52
+ end
53
+
54
+ # Default middleware stack that uses default adapter as specified
55
+ # by configuration setup
56
+ #
57
+ # @return [Proc]
58
+ #
59
+ # @api private
60
+ def default_middleware(options = {})
61
+ Middleware.default(options)
62
+ end
63
+
64
+ # Delegate to Github::Client
65
+ #
66
+ # @api private
67
+ def method_missing(method_name, *args, &block)
68
+ if new.respond_to?(method_name)
69
+ new.send(method_name, *args, &block)
70
+ elsif configuration.respond_to?(method_name)
71
+ Github.configuration.send(method_name, *args, &block)
72
+ else
73
+ super
74
+ end
75
+ end
76
+
77
+ def respond_to?(method_name, include_private = false)
78
+ new.respond_to?(method_name, include_private) ||
79
+ configuration.respond_to?(method_name) ||
80
+ super(method_name, include_private)
81
+ end
82
+ end
83
+ end # Github
84
+
85
+ require_relative 'github_api2/api'
86
+ require_relative 'github_api2/client'
87
+ require_relative 'github_api2/configuration'
88
+ require_relative 'github_api2/deprecation'
89
+ require_relative 'github_api2/core_ext/array'
90
+ require_relative 'github_api2/core_ext/hash'
91
+ require_relative 'github_api2/middleware'
92
+ require_relative 'github_api2/version'
metadata ADDED
@@ -0,0 +1,363 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: github_api2
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
5
+ platform: ruby
6
+ authors:
7
+ - Jacob Marquez
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2023-02-06 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: addressable
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '2.4'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '2.4'
27
+ - !ruby/object:Gem::Dependency
28
+ name: hashie
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: 3.5.2
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: 3.5.2
41
+ - !ruby/object:Gem::Dependency
42
+ name: faraday
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0.8'
48
+ - - "<"
49
+ - !ruby/object:Gem::Version
50
+ version: '2.0'
51
+ type: :runtime
52
+ prerelease: false
53
+ version_requirements: !ruby/object:Gem::Requirement
54
+ requirements:
55
+ - - ">="
56
+ - !ruby/object:Gem::Version
57
+ version: '0.8'
58
+ - - "<"
59
+ - !ruby/object:Gem::Version
60
+ version: '2.0'
61
+ - !ruby/object:Gem::Dependency
62
+ name: faraday_middleware
63
+ requirement: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - '='
66
+ - !ruby/object:Gem::Version
67
+ version: 1.2.0
68
+ type: :runtime
69
+ prerelease: false
70
+ version_requirements: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - '='
73
+ - !ruby/object:Gem::Version
74
+ version: 1.2.0
75
+ - !ruby/object:Gem::Dependency
76
+ name: oauth2
77
+ requirement: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - "<"
80
+ - !ruby/object:Gem::Version
81
+ version: '3.0'
82
+ type: :runtime
83
+ prerelease: false
84
+ version_requirements: !ruby/object:Gem::Requirement
85
+ requirements:
86
+ - - "<"
87
+ - !ruby/object:Gem::Version
88
+ version: '3.0'
89
+ - !ruby/object:Gem::Dependency
90
+ name: descendants_tracker
91
+ requirement: !ruby/object:Gem::Requirement
92
+ requirements:
93
+ - - "~>"
94
+ - !ruby/object:Gem::Version
95
+ version: 0.0.4
96
+ type: :runtime
97
+ prerelease: false
98
+ version_requirements: !ruby/object:Gem::Requirement
99
+ requirements:
100
+ - - "~>"
101
+ - !ruby/object:Gem::Version
102
+ version: 0.0.4
103
+ - !ruby/object:Gem::Dependency
104
+ name: bundler
105
+ requirement: !ruby/object:Gem::Requirement
106
+ requirements:
107
+ - - ">="
108
+ - !ruby/object:Gem::Version
109
+ version: 1.5.0
110
+ type: :development
111
+ prerelease: false
112
+ version_requirements: !ruby/object:Gem::Requirement
113
+ requirements:
114
+ - - ">="
115
+ - !ruby/object:Gem::Version
116
+ version: 1.5.0
117
+ - !ruby/object:Gem::Dependency
118
+ name: rake
119
+ requirement: !ruby/object:Gem::Requirement
120
+ requirements:
121
+ - - ">="
122
+ - !ruby/object:Gem::Version
123
+ version: '0'
124
+ type: :development
125
+ prerelease: false
126
+ version_requirements: !ruby/object:Gem::Requirement
127
+ requirements:
128
+ - - ">="
129
+ - !ruby/object:Gem::Version
130
+ version: '0'
131
+ - !ruby/object:Gem::Dependency
132
+ name: cucumber
133
+ requirement: !ruby/object:Gem::Requirement
134
+ requirements:
135
+ - - "~>"
136
+ - !ruby/object:Gem::Version
137
+ version: '2.1'
138
+ type: :development
139
+ prerelease: false
140
+ version_requirements: !ruby/object:Gem::Requirement
141
+ requirements:
142
+ - - "~>"
143
+ - !ruby/object:Gem::Version
144
+ version: '2.1'
145
+ - !ruby/object:Gem::Dependency
146
+ name: rspec
147
+ requirement: !ruby/object:Gem::Requirement
148
+ requirements:
149
+ - - "~>"
150
+ - !ruby/object:Gem::Version
151
+ version: '3'
152
+ type: :development
153
+ prerelease: false
154
+ version_requirements: !ruby/object:Gem::Requirement
155
+ requirements:
156
+ - - "~>"
157
+ - !ruby/object:Gem::Version
158
+ version: '3'
159
+ - !ruby/object:Gem::Dependency
160
+ name: rspec-its
161
+ requirement: !ruby/object:Gem::Requirement
162
+ requirements:
163
+ - - "~>"
164
+ - !ruby/object:Gem::Version
165
+ version: '1'
166
+ type: :development
167
+ prerelease: false
168
+ version_requirements: !ruby/object:Gem::Requirement
169
+ requirements:
170
+ - - "~>"
171
+ - !ruby/object:Gem::Version
172
+ version: '1'
173
+ - !ruby/object:Gem::Dependency
174
+ name: vcr
175
+ requirement: !ruby/object:Gem::Requirement
176
+ requirements:
177
+ - - "~>"
178
+ - !ruby/object:Gem::Version
179
+ version: 3.0.3
180
+ type: :development
181
+ prerelease: false
182
+ version_requirements: !ruby/object:Gem::Requirement
183
+ requirements:
184
+ - - "~>"
185
+ - !ruby/object:Gem::Version
186
+ version: 3.0.3
187
+ - !ruby/object:Gem::Dependency
188
+ name: webmock
189
+ requirement: !ruby/object:Gem::Requirement
190
+ requirements:
191
+ - - "~>"
192
+ - !ruby/object:Gem::Version
193
+ version: '3.8'
194
+ type: :development
195
+ prerelease: false
196
+ version_requirements: !ruby/object:Gem::Requirement
197
+ requirements:
198
+ - - "~>"
199
+ - !ruby/object:Gem::Version
200
+ version: '3.8'
201
+ description: ' Ruby client that supports all of the GitHub API methods. It"s build
202
+ in a modular way, that is, you can either instantiate the whole api wrapper Github.new
203
+ or use parts of it e.i. Github::Client::Repos.new if working solely with repositories
204
+ is your main concern. Intuitive query methods allow you easily call API endpoints.
205
+ This version of github_api is intended to provide support for Oauth 2.x. '
206
+ email:
207
+ - jacobmarq@gmail.com
208
+ executables: []
209
+ extensions: []
210
+ extra_rdoc_files:
211
+ - LICENSE.txt
212
+ - README.md
213
+ - CHANGELOG.md
214
+ files:
215
+ - CHANGELOG.md
216
+ - LICENSE.txt
217
+ - README.md
218
+ - lib/github_api2.rb
219
+ - lib/github_api2/api.rb
220
+ - lib/github_api2/api/actions.rb
221
+ - lib/github_api2/api/arguments.rb
222
+ - lib/github_api2/api/config.rb
223
+ - lib/github_api2/api/config/property.rb
224
+ - lib/github_api2/api/config/property_set.rb
225
+ - lib/github_api2/api/factory.rb
226
+ - lib/github_api2/authorization.rb
227
+ - lib/github_api2/client.rb
228
+ - lib/github_api2/client/activity.rb
229
+ - lib/github_api2/client/activity/events.rb
230
+ - lib/github_api2/client/activity/feeds.rb
231
+ - lib/github_api2/client/activity/notifications.rb
232
+ - lib/github_api2/client/activity/starring.rb
233
+ - lib/github_api2/client/activity/watching.rb
234
+ - lib/github_api2/client/authorizations.rb
235
+ - lib/github_api2/client/authorizations/app.rb
236
+ - lib/github_api2/client/emojis.rb
237
+ - lib/github_api2/client/gists.rb
238
+ - lib/github_api2/client/gists/comments.rb
239
+ - lib/github_api2/client/git_data.rb
240
+ - lib/github_api2/client/git_data/blobs.rb
241
+ - lib/github_api2/client/git_data/commits.rb
242
+ - lib/github_api2/client/git_data/references.rb
243
+ - lib/github_api2/client/git_data/tags.rb
244
+ - lib/github_api2/client/git_data/trees.rb
245
+ - lib/github_api2/client/gitignore.rb
246
+ - lib/github_api2/client/issues.rb
247
+ - lib/github_api2/client/issues/assignees.rb
248
+ - lib/github_api2/client/issues/comments.rb
249
+ - lib/github_api2/client/issues/events.rb
250
+ - lib/github_api2/client/issues/labels.rb
251
+ - lib/github_api2/client/issues/milestones.rb
252
+ - lib/github_api2/client/markdown.rb
253
+ - lib/github_api2/client/meta.rb
254
+ - lib/github_api2/client/orgs.rb
255
+ - lib/github_api2/client/orgs/hooks.rb
256
+ - lib/github_api2/client/orgs/members.rb
257
+ - lib/github_api2/client/orgs/memberships.rb
258
+ - lib/github_api2/client/orgs/projects.rb
259
+ - lib/github_api2/client/orgs/teams.rb
260
+ - lib/github_api2/client/projects.rb
261
+ - lib/github_api2/client/projects/cards.rb
262
+ - lib/github_api2/client/projects/columns.rb
263
+ - lib/github_api2/client/pull_requests.rb
264
+ - lib/github_api2/client/pull_requests/comments.rb
265
+ - lib/github_api2/client/pull_requests/reviews.rb
266
+ - lib/github_api2/client/repos.rb
267
+ - lib/github_api2/client/repos/branches.rb
268
+ - lib/github_api2/client/repos/branches/protections.rb
269
+ - lib/github_api2/client/repos/collaborators.rb
270
+ - lib/github_api2/client/repos/comments.rb
271
+ - lib/github_api2/client/repos/commits.rb
272
+ - lib/github_api2/client/repos/contents.rb
273
+ - lib/github_api2/client/repos/deployments.rb
274
+ - lib/github_api2/client/repos/downloads.rb
275
+ - lib/github_api2/client/repos/forks.rb
276
+ - lib/github_api2/client/repos/hooks.rb
277
+ - lib/github_api2/client/repos/invitations.rb
278
+ - lib/github_api2/client/repos/keys.rb
279
+ - lib/github_api2/client/repos/merging.rb
280
+ - lib/github_api2/client/repos/pages.rb
281
+ - lib/github_api2/client/repos/projects.rb
282
+ - lib/github_api2/client/repos/pub_sub_hubbub.rb
283
+ - lib/github_api2/client/repos/releases.rb
284
+ - lib/github_api2/client/repos/releases/assets.rb
285
+ - lib/github_api2/client/repos/releases/tags.rb
286
+ - lib/github_api2/client/repos/statistics.rb
287
+ - lib/github_api2/client/repos/statuses.rb
288
+ - lib/github_api2/client/say.rb
289
+ - lib/github_api2/client/scopes.rb
290
+ - lib/github_api2/client/search.rb
291
+ - lib/github_api2/client/search/legacy.rb
292
+ - lib/github_api2/client/users.rb
293
+ - lib/github_api2/client/users/emails.rb
294
+ - lib/github_api2/client/users/followers.rb
295
+ - lib/github_api2/client/users/keys.rb
296
+ - lib/github_api2/configuration.rb
297
+ - lib/github_api2/connection.rb
298
+ - lib/github_api2/constants.rb
299
+ - lib/github_api2/core_ext/array.rb
300
+ - lib/github_api2/core_ext/hash.rb
301
+ - lib/github_api2/deprecation.rb
302
+ - lib/github_api2/error.rb
303
+ - lib/github_api2/error/client_error.rb
304
+ - lib/github_api2/error/service_error.rb
305
+ - lib/github_api2/ext/faraday.rb
306
+ - lib/github_api2/mash.rb
307
+ - lib/github_api2/middleware.rb
308
+ - lib/github_api2/mime_type.rb
309
+ - lib/github_api2/normalizer.rb
310
+ - lib/github_api2/null_encoder.rb
311
+ - lib/github_api2/page_iterator.rb
312
+ - lib/github_api2/page_links.rb
313
+ - lib/github_api2/paged_request.rb
314
+ - lib/github_api2/pagination.rb
315
+ - lib/github_api2/parameter_filter.rb
316
+ - lib/github_api2/params_hash.rb
317
+ - lib/github_api2/rate_limit.rb
318
+ - lib/github_api2/request.rb
319
+ - lib/github_api2/request/basic_auth.rb
320
+ - lib/github_api2/request/jsonize.rb
321
+ - lib/github_api2/request/oauth2.rb
322
+ - lib/github_api2/request/verbs.rb
323
+ - lib/github_api2/response.rb
324
+ - lib/github_api2/response/atom_parser.rb
325
+ - lib/github_api2/response/follow_redirects.rb
326
+ - lib/github_api2/response/header.rb
327
+ - lib/github_api2/response/jsonize.rb
328
+ - lib/github_api2/response/mashify.rb
329
+ - lib/github_api2/response/raise_error.rb
330
+ - lib/github_api2/response/xmlize.rb
331
+ - lib/github_api2/response_wrapper.rb
332
+ - lib/github_api2/ssl_certs/cacerts.pem
333
+ - lib/github_api2/utils/url.rb
334
+ - lib/github_api2/validations.rb
335
+ - lib/github_api2/validations/format.rb
336
+ - lib/github_api2/validations/presence.rb
337
+ - lib/github_api2/validations/required.rb
338
+ - lib/github_api2/validations/token.rb
339
+ - lib/github_api2/version.rb
340
+ homepage: http://jacobmarq.github.io/github/
341
+ licenses:
342
+ - MIT
343
+ metadata: {}
344
+ post_install_message:
345
+ rdoc_options: []
346
+ require_paths:
347
+ - lib
348
+ required_ruby_version: !ruby/object:Gem::Requirement
349
+ requirements:
350
+ - - ">="
351
+ - !ruby/object:Gem::Version
352
+ version: 2.0.0
353
+ required_rubygems_version: !ruby/object:Gem::Requirement
354
+ requirements:
355
+ - - ">="
356
+ - !ruby/object:Gem::Version
357
+ version: '0'
358
+ requirements: []
359
+ rubygems_version: 3.3.7
360
+ signing_key:
361
+ specification_version: 4
362
+ summary: Additional support for Piotr's ruby client for the official GitHub API
363
+ test_files: []