githuh 0.3.0 → 0.4.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.
- checksums.yaml +4 -4
- data/.envrc +4 -0
- data/.github/workflows/ruby.yml +8 -19
- data/.gitignore +3 -0
- data/.rubocop.yml +5 -2
- data/.rubocop_todo.yml +65 -71
- data/.secrets.baseline +127 -0
- data/CHANGELOG.md +39 -0
- data/Gemfile +13 -1
- data/Gemfile.lock +261 -116
- data/{LICENSE → LICENSE.txt} +1 -1
- data/README.adoc +2 -2
- data/Rakefile +13 -6
- data/docs/img/badge.svg +21 -0
- data/docs/img/coverage.png +0 -0
- data/docs/img/coverage.svg +2 -2
- data/githuh.gemspec +7 -12
- data/justfile +57 -0
- data/lefthook.yml +35 -0
- data/lib/githuh/cli/commands/base.rb +19 -17
- data/lib/githuh/cli/commands/issue/export.rb +19 -18
- data/lib/githuh/cli/commands/repo/list.rb +136 -27
- data/lib/githuh/cli/commands/user/info.rb +2 -2
- data/lib/githuh/cli/launcher.rb +10 -14
- data/lib/githuh/env_loader.rb +34 -0
- data/lib/githuh/llm/anthropic.rb +29 -0
- data/lib/githuh/llm/base.rb +69 -0
- data/lib/githuh/llm/openai.rb +26 -0
- data/lib/githuh/llm.rb +31 -0
- data/lib/githuh/version.rb +1 -1
- data/lib/githuh.rb +10 -8
- metadata +39 -115
- data/issues.json +0 -3168
data/lib/githuh.rb
CHANGED
|
@@ -9,9 +9,12 @@ require 'dry/cli'
|
|
|
9
9
|
require 'forwardable'
|
|
10
10
|
|
|
11
11
|
require_relative 'githuh/version'
|
|
12
|
+
require_relative 'githuh/env_loader'
|
|
13
|
+
|
|
14
|
+
Githuh::EnvLoader.load!
|
|
12
15
|
|
|
13
16
|
module Githuh
|
|
14
|
-
BANNER = "Githuh Version #{VERSION}"
|
|
17
|
+
BANNER = "Githuh Version #{VERSION}".freeze
|
|
15
18
|
BINARY = File.expand_path('../exe/githuh', __dir__).freeze
|
|
16
19
|
|
|
17
20
|
module CLI
|
|
@@ -19,11 +22,9 @@ module Githuh
|
|
|
19
22
|
extend Dry::CLI::Registry
|
|
20
23
|
end
|
|
21
24
|
end
|
|
22
|
-
end
|
|
23
25
|
|
|
24
|
-
require 'githuh/cli/launcher'
|
|
26
|
+
require 'githuh/cli/launcher'
|
|
25
27
|
|
|
26
|
-
module Githuh
|
|
27
28
|
class << self
|
|
28
29
|
attr_accessor :launcher, :in_test
|
|
29
30
|
|
|
@@ -39,12 +40,12 @@ module Githuh
|
|
|
39
40
|
end
|
|
40
41
|
|
|
41
42
|
Kernel.module_eval do
|
|
42
|
-
def puts(*
|
|
43
|
-
::Githuh.stdout.puts(*
|
|
43
|
+
def puts(*)
|
|
44
|
+
::Githuh.stdout.puts(*)
|
|
44
45
|
end
|
|
45
46
|
|
|
46
|
-
def warn(*
|
|
47
|
-
::Githuh.stderr.puts(*
|
|
47
|
+
def warn(*)
|
|
48
|
+
::Githuh.stderr.puts(*)
|
|
48
49
|
end
|
|
49
50
|
end
|
|
50
51
|
|
|
@@ -83,6 +84,7 @@ module Githuh
|
|
|
83
84
|
end
|
|
84
85
|
end
|
|
85
86
|
|
|
87
|
+
require 'githuh/llm'
|
|
86
88
|
require 'githuh/cli/commands/base'
|
|
87
89
|
require 'githuh/cli/commands/version'
|
|
88
90
|
require 'githuh/cli/commands/user/info'
|
metadata
CHANGED
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: githuh
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.4.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Konstantin Gredeskoul
|
|
8
|
-
autorequire:
|
|
9
8
|
bindir: exe
|
|
10
9
|
cert_chain: []
|
|
11
|
-
date:
|
|
10
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
|
12
11
|
dependencies:
|
|
13
12
|
- !ruby/object:Gem::Dependency
|
|
14
13
|
name: activesupport
|
|
@@ -39,21 +38,21 @@ dependencies:
|
|
|
39
38
|
- !ruby/object:Gem::Version
|
|
40
39
|
version: '3'
|
|
41
40
|
- !ruby/object:Gem::Dependency
|
|
42
|
-
name:
|
|
41
|
+
name: csv
|
|
43
42
|
requirement: !ruby/object:Gem::Requirement
|
|
44
43
|
requirements:
|
|
45
|
-
- - "
|
|
44
|
+
- - ">="
|
|
46
45
|
- !ruby/object:Gem::Version
|
|
47
|
-
version: '0
|
|
46
|
+
version: '0'
|
|
48
47
|
type: :runtime
|
|
49
48
|
prerelease: false
|
|
50
49
|
version_requirements: !ruby/object:Gem::Requirement
|
|
51
50
|
requirements:
|
|
52
|
-
- - "
|
|
51
|
+
- - ">="
|
|
53
52
|
- !ruby/object:Gem::Version
|
|
54
|
-
version: '0
|
|
53
|
+
version: '0'
|
|
55
54
|
- !ruby/object:Gem::Dependency
|
|
56
|
-
name:
|
|
55
|
+
name: dry-cli
|
|
57
56
|
requirement: !ruby/object:Gem::Requirement
|
|
58
57
|
requirements:
|
|
59
58
|
- - ">="
|
|
@@ -67,21 +66,21 @@ dependencies:
|
|
|
67
66
|
- !ruby/object:Gem::Version
|
|
68
67
|
version: '0'
|
|
69
68
|
- !ruby/object:Gem::Dependency
|
|
70
|
-
name:
|
|
69
|
+
name: faraday
|
|
71
70
|
requirement: !ruby/object:Gem::Requirement
|
|
72
71
|
requirements:
|
|
73
|
-
- - "
|
|
72
|
+
- - ">="
|
|
74
73
|
- !ruby/object:Gem::Version
|
|
75
|
-
version: '
|
|
74
|
+
version: '0'
|
|
76
75
|
type: :runtime
|
|
77
76
|
prerelease: false
|
|
78
77
|
version_requirements: !ruby/object:Gem::Requirement
|
|
79
78
|
requirements:
|
|
80
|
-
- - "
|
|
79
|
+
- - ">="
|
|
81
80
|
- !ruby/object:Gem::Version
|
|
82
|
-
version: '
|
|
81
|
+
version: '0'
|
|
83
82
|
- !ruby/object:Gem::Dependency
|
|
84
|
-
name:
|
|
83
|
+
name: faraday-retry
|
|
85
84
|
requirement: !ruby/object:Gem::Requirement
|
|
86
85
|
requirements:
|
|
87
86
|
- - ">="
|
|
@@ -95,7 +94,7 @@ dependencies:
|
|
|
95
94
|
- !ruby/object:Gem::Version
|
|
96
95
|
version: '0'
|
|
97
96
|
- !ruby/object:Gem::Dependency
|
|
98
|
-
name:
|
|
97
|
+
name: hashie
|
|
99
98
|
requirement: !ruby/object:Gem::Requirement
|
|
100
99
|
requirements:
|
|
101
100
|
- - ">="
|
|
@@ -109,7 +108,7 @@ dependencies:
|
|
|
109
108
|
- !ruby/object:Gem::Version
|
|
110
109
|
version: '0'
|
|
111
110
|
- !ruby/object:Gem::Dependency
|
|
112
|
-
name:
|
|
111
|
+
name: octokit
|
|
113
112
|
requirement: !ruby/object:Gem::Requirement
|
|
114
113
|
requirements:
|
|
115
114
|
- - ">="
|
|
@@ -123,97 +122,13 @@ dependencies:
|
|
|
123
122
|
- !ruby/object:Gem::Version
|
|
124
123
|
version: '0'
|
|
125
124
|
- !ruby/object:Gem::Dependency
|
|
126
|
-
name:
|
|
127
|
-
requirement: !ruby/object:Gem::Requirement
|
|
128
|
-
requirements:
|
|
129
|
-
- - '='
|
|
130
|
-
- !ruby/object:Gem::Version
|
|
131
|
-
version: 1.0.0
|
|
132
|
-
type: :development
|
|
133
|
-
prerelease: false
|
|
134
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
135
|
-
requirements:
|
|
136
|
-
- - '='
|
|
137
|
-
- !ruby/object:Gem::Version
|
|
138
|
-
version: 1.0.0
|
|
139
|
-
- !ruby/object:Gem::Dependency
|
|
140
|
-
name: awesome_print
|
|
141
|
-
requirement: !ruby/object:Gem::Requirement
|
|
142
|
-
requirements:
|
|
143
|
-
- - "~>"
|
|
144
|
-
- !ruby/object:Gem::Version
|
|
145
|
-
version: '1'
|
|
146
|
-
type: :development
|
|
147
|
-
prerelease: false
|
|
148
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
149
|
-
requirements:
|
|
150
|
-
- - "~>"
|
|
151
|
-
- !ruby/object:Gem::Version
|
|
152
|
-
version: '1'
|
|
153
|
-
- !ruby/object:Gem::Dependency
|
|
154
|
-
name: bundler
|
|
155
|
-
requirement: !ruby/object:Gem::Requirement
|
|
156
|
-
requirements:
|
|
157
|
-
- - "~>"
|
|
158
|
-
- !ruby/object:Gem::Version
|
|
159
|
-
version: '2'
|
|
160
|
-
type: :development
|
|
161
|
-
prerelease: false
|
|
162
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
163
|
-
requirements:
|
|
164
|
-
- - "~>"
|
|
165
|
-
- !ruby/object:Gem::Version
|
|
166
|
-
version: '2'
|
|
167
|
-
- !ruby/object:Gem::Dependency
|
|
168
|
-
name: rake
|
|
169
|
-
requirement: !ruby/object:Gem::Requirement
|
|
170
|
-
requirements:
|
|
171
|
-
- - "~>"
|
|
172
|
-
- !ruby/object:Gem::Version
|
|
173
|
-
version: '13'
|
|
174
|
-
type: :development
|
|
175
|
-
prerelease: false
|
|
176
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
177
|
-
requirements:
|
|
178
|
-
- - "~>"
|
|
179
|
-
- !ruby/object:Gem::Version
|
|
180
|
-
version: '13'
|
|
181
|
-
- !ruby/object:Gem::Dependency
|
|
182
|
-
name: rspec
|
|
183
|
-
requirement: !ruby/object:Gem::Requirement
|
|
184
|
-
requirements:
|
|
185
|
-
- - "~>"
|
|
186
|
-
- !ruby/object:Gem::Version
|
|
187
|
-
version: '3'
|
|
188
|
-
type: :development
|
|
189
|
-
prerelease: false
|
|
190
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
191
|
-
requirements:
|
|
192
|
-
- - "~>"
|
|
193
|
-
- !ruby/object:Gem::Version
|
|
194
|
-
version: '3'
|
|
195
|
-
- !ruby/object:Gem::Dependency
|
|
196
|
-
name: rspec-its
|
|
197
|
-
requirement: !ruby/object:Gem::Requirement
|
|
198
|
-
requirements:
|
|
199
|
-
- - "~>"
|
|
200
|
-
- !ruby/object:Gem::Version
|
|
201
|
-
version: '1'
|
|
202
|
-
type: :development
|
|
203
|
-
prerelease: false
|
|
204
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
205
|
-
requirements:
|
|
206
|
-
- - "~>"
|
|
207
|
-
- !ruby/object:Gem::Version
|
|
208
|
-
version: '1'
|
|
209
|
-
- !ruby/object:Gem::Dependency
|
|
210
|
-
name: rubocop
|
|
125
|
+
name: tty-box
|
|
211
126
|
requirement: !ruby/object:Gem::Requirement
|
|
212
127
|
requirements:
|
|
213
128
|
- - ">="
|
|
214
129
|
- !ruby/object:Gem::Version
|
|
215
130
|
version: '0'
|
|
216
|
-
type: :
|
|
131
|
+
type: :runtime
|
|
217
132
|
prerelease: false
|
|
218
133
|
version_requirements: !ruby/object:Gem::Requirement
|
|
219
134
|
requirements:
|
|
@@ -221,13 +136,13 @@ dependencies:
|
|
|
221
136
|
- !ruby/object:Gem::Version
|
|
222
137
|
version: '0'
|
|
223
138
|
- !ruby/object:Gem::Dependency
|
|
224
|
-
name:
|
|
139
|
+
name: tty-progressbar
|
|
225
140
|
requirement: !ruby/object:Gem::Requirement
|
|
226
141
|
requirements:
|
|
227
142
|
- - ">="
|
|
228
143
|
- !ruby/object:Gem::Version
|
|
229
144
|
version: '0'
|
|
230
|
-
type: :
|
|
145
|
+
type: :runtime
|
|
231
146
|
prerelease: false
|
|
232
147
|
version_requirements: !ruby/object:Gem::Requirement
|
|
233
148
|
requirements:
|
|
@@ -235,13 +150,13 @@ dependencies:
|
|
|
235
150
|
- !ruby/object:Gem::Version
|
|
236
151
|
version: '0'
|
|
237
152
|
- !ruby/object:Gem::Dependency
|
|
238
|
-
name:
|
|
153
|
+
name: tty-screen
|
|
239
154
|
requirement: !ruby/object:Gem::Requirement
|
|
240
155
|
requirements:
|
|
241
156
|
- - ">="
|
|
242
157
|
- !ruby/object:Gem::Version
|
|
243
158
|
version: '0'
|
|
244
|
-
type: :
|
|
159
|
+
type: :runtime
|
|
245
160
|
prerelease: false
|
|
246
161
|
version_requirements: !ruby/object:Gem::Requirement
|
|
247
162
|
requirements:
|
|
@@ -263,19 +178,24 @@ files:
|
|
|
263
178
|
- ".rspec"
|
|
264
179
|
- ".rubocop.yml"
|
|
265
180
|
- ".rubocop_todo.yml"
|
|
181
|
+
- ".secrets.baseline"
|
|
182
|
+
- CHANGELOG.md
|
|
266
183
|
- Gemfile
|
|
267
184
|
- Gemfile.lock
|
|
268
|
-
- LICENSE
|
|
185
|
+
- LICENSE.txt
|
|
269
186
|
- README.adoc
|
|
270
187
|
- Rakefile
|
|
271
188
|
- WARRANTY.md
|
|
272
189
|
- codecov.yml
|
|
273
190
|
- config/label-mapping.yml
|
|
191
|
+
- docs/img/badge.svg
|
|
192
|
+
- docs/img/coverage.png
|
|
274
193
|
- docs/img/coverage.svg
|
|
275
194
|
- docs/img/githuh-issue-export.png
|
|
276
195
|
- exe/githuh
|
|
277
196
|
- githuh.gemspec
|
|
278
|
-
-
|
|
197
|
+
- justfile
|
|
198
|
+
- lefthook.yml
|
|
279
199
|
- lib/githuh.rb
|
|
280
200
|
- lib/githuh/cli/commands/base.rb
|
|
281
201
|
- lib/githuh/cli/commands/issue/export.rb
|
|
@@ -284,28 +204,32 @@ files:
|
|
|
284
204
|
- lib/githuh/cli/commands/user/info.rb
|
|
285
205
|
- lib/githuh/cli/commands/version.rb
|
|
286
206
|
- lib/githuh/cli/launcher.rb
|
|
207
|
+
- lib/githuh/env_loader.rb
|
|
208
|
+
- lib/githuh/llm.rb
|
|
209
|
+
- lib/githuh/llm/anthropic.rb
|
|
210
|
+
- lib/githuh/llm/base.rb
|
|
211
|
+
- lib/githuh/llm/openai.rb
|
|
287
212
|
- lib/githuh/version.rb
|
|
288
213
|
homepage: https://github.com/kigster/githuh
|
|
289
214
|
licenses:
|
|
290
215
|
- MIT
|
|
291
|
-
metadata:
|
|
292
|
-
|
|
216
|
+
metadata:
|
|
217
|
+
rubygems_mfa_required: 'true'
|
|
293
218
|
rdoc_options: []
|
|
294
219
|
require_paths:
|
|
295
220
|
- lib
|
|
296
221
|
required_ruby_version: !ruby/object:Gem::Requirement
|
|
297
222
|
requirements:
|
|
298
|
-
- - "
|
|
223
|
+
- - "~>"
|
|
299
224
|
- !ruby/object:Gem::Version
|
|
300
|
-
version: '
|
|
225
|
+
version: '4.0'
|
|
301
226
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
302
227
|
requirements:
|
|
303
228
|
- - ">="
|
|
304
229
|
- !ruby/object:Gem::Version
|
|
305
230
|
version: '0'
|
|
306
231
|
requirements: []
|
|
307
|
-
rubygems_version:
|
|
308
|
-
signing_key:
|
|
232
|
+
rubygems_version: 4.0.10
|
|
309
233
|
specification_version: 4
|
|
310
234
|
summary: Extensible CLI helper client for Github, for automating various tasks, such
|
|
311
235
|
as — generating a list of org's repos and converting it into a pretty markdown,
|