githuh 0.2.1 → 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 +6 -2
- data/.github/workflows/ruby.yml +8 -19
- data/.gitignore +5 -0
- data/.rubocop.yml +5 -2
- data/.rubocop_todo.yml +62 -84
- data/.secrets.baseline +127 -0
- data/CHANGELOG.md +39 -0
- data/Gemfile +13 -1
- data/Gemfile.lock +266 -124
- data/{LICENSE → LICENSE.txt} +1 -1
- data/README.adoc +18 -2
- data/Rakefile +13 -6
- data/config/label-mapping.yml +12 -0
- data/docs/img/badge.svg +21 -0
- data/docs/img/coverage.png +0 -0
- data/docs/img/coverage.svg +3 -3
- data/githuh.gemspec +8 -12
- data/justfile +57 -0
- data/lefthook.yml +35 -0
- data/lib/githuh/cli/commands/base.rb +36 -24
- data/lib/githuh/cli/commands/issue/export.rb +60 -58
- data/lib/githuh/cli/commands/repo/list.rb +138 -27
- data/lib/githuh/cli/commands/user/info.rb +3 -3
- data/lib/githuh/cli/launcher.rb +13 -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 +45 -106
- data/issues.json +0 -3168
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: f0e93141a03f0e5928c713b604064e96959c05e46da042a8122fd354169f6c4e
|
|
4
|
+
data.tar.gz: a7e2a02d760f6a1e886f3fdd2086387e4e46b33404fd3c4158a929698867a40b
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: '0816ce0ad4649b24bb3f339bd953e11ca532b0e17858d96eedf6a783b41f47ff9e0279fea5ff35f37e2542d5e96ec464e74136fe03d730303956ce2b8d120e93'
|
|
7
|
+
data.tar.gz: faec900a0a5f38501bd2929ced73cf4840dc86a07fcaa5318ff98e59e5e69460c66a6b32139af648f72f5b5a62bb39a5f2840e3735ea7b01b3413878a615d7a8
|
data/.envrc
CHANGED
|
@@ -1,4 +1,8 @@
|
|
|
1
|
+
# vim: ft=bash
|
|
2
|
+
export PATH=$(pwd)/exe:${PATH}
|
|
3
|
+
[[ -f .envrc.local ]] && source .envrc.local
|
|
1
4
|
|
|
2
|
-
|
|
5
|
+
[[ -f .env ]] && {
|
|
6
|
+
eval "$(cat .env | sed 's/^/export /g; /^$/d')"
|
|
7
|
+
}
|
|
3
8
|
|
|
4
|
-
export PATH=$(pwd)/exe:${PATH}
|
data/.github/workflows/ruby.yml
CHANGED
|
@@ -1,25 +1,14 @@
|
|
|
1
|
-
name:
|
|
1
|
+
name: RSpec
|
|
2
2
|
|
|
3
|
-
on:
|
|
4
|
-
push:
|
|
5
|
-
branches: [ master ]
|
|
6
|
-
pull_request:
|
|
7
|
-
branches: [ master ]
|
|
3
|
+
on: [push, pull_request]
|
|
8
4
|
|
|
9
5
|
jobs:
|
|
10
|
-
|
|
11
|
-
|
|
6
|
+
test:
|
|
12
7
|
runs-on: ubuntu-latest
|
|
13
|
-
|
|
14
8
|
steps:
|
|
15
|
-
- uses: actions/checkout@
|
|
16
|
-
-
|
|
17
|
-
uses: actions/setup-ruby@v1
|
|
9
|
+
- uses: actions/checkout@v6
|
|
10
|
+
- uses: ruby/setup-ruby@v1
|
|
18
11
|
with:
|
|
19
|
-
ruby-version:
|
|
20
|
-
-
|
|
21
|
-
|
|
22
|
-
gem install bundler
|
|
23
|
-
bundle install --jobs 4 --retry 3
|
|
24
|
-
bundle exec rspec
|
|
25
|
-
bundle exec rubocop
|
|
12
|
+
ruby-version: '4.0' # Not needed with a .ruby-version, .tool-versions or mise.toml
|
|
13
|
+
- run: bundle install -j 4
|
|
14
|
+
- run: bundle exec rspec --format documentation
|
data/.gitignore
CHANGED
data/.rubocop.yml
CHANGED
|
@@ -2,11 +2,14 @@ inherit_from:
|
|
|
2
2
|
- .rubocop_todo.yml
|
|
3
3
|
- .relaxed-rubocop-2.4.yml
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
plugins:
|
|
6
|
+
- rubocop-rake
|
|
7
|
+
- rubocop-rspec
|
|
6
8
|
|
|
7
9
|
AllCops:
|
|
8
|
-
TargetRubyVersion:
|
|
10
|
+
TargetRubyVersion: 4
|
|
9
11
|
UseCache: true
|
|
12
|
+
NewCops: enable
|
|
10
13
|
DefaultFormatter: progress
|
|
11
14
|
DisplayStyleGuide: true
|
|
12
15
|
DisplayCopNames: true
|
data/.rubocop_todo.yml
CHANGED
|
@@ -1,115 +1,93 @@
|
|
|
1
1
|
# This configuration was generated by
|
|
2
2
|
# `rubocop --auto-gen-config`
|
|
3
|
-
# on
|
|
3
|
+
# on 2026-04-21 01:47:48 UTC using RuboCop version 1.86.1.
|
|
4
4
|
# The point is for the user to remove these configuration records
|
|
5
5
|
# one by one as the offenses are removed from the code base.
|
|
6
6
|
# Note that changes in the inspected code, or installation of new
|
|
7
7
|
# versions of RuboCop, may require this file to be generated again.
|
|
8
8
|
|
|
9
|
-
# Offense count:
|
|
10
|
-
|
|
11
|
-
# Include: **/*.gemspec
|
|
12
|
-
Gemspec/RequiredRubyVersion:
|
|
9
|
+
# Offense count: 2
|
|
10
|
+
Lint/UselessConstantScoping:
|
|
13
11
|
Exclude:
|
|
14
|
-
- '
|
|
15
|
-
|
|
16
|
-
# Offense count: 6
|
|
17
|
-
# Cop supports --auto-correct.
|
|
18
|
-
# Configuration parameters: IndentOneStep, IndentationWidth.
|
|
19
|
-
# SupportedStyles: case, end
|
|
20
|
-
Layout/CaseIndentation:
|
|
21
|
-
EnforcedStyle: end
|
|
12
|
+
- 'spec/support/coverage_badge.rb'
|
|
22
13
|
|
|
23
|
-
# Offense count:
|
|
24
|
-
|
|
25
|
-
Layout/ElseAlignment:
|
|
14
|
+
# Offense count: 8
|
|
15
|
+
RSpec/AnyInstance:
|
|
26
16
|
Exclude:
|
|
27
|
-
- '
|
|
17
|
+
- 'spec/githuh/cli/launcher_spec.rb'
|
|
18
|
+
- 'spec/support/aruba_helper.rb'
|
|
28
19
|
|
|
29
|
-
# Offense count:
|
|
30
|
-
#
|
|
31
|
-
#
|
|
32
|
-
|
|
33
|
-
Layout/EndAlignment:
|
|
20
|
+
# Offense count: 12
|
|
21
|
+
# Configuration parameters: Prefixes, AllowedPatterns.
|
|
22
|
+
# Prefixes: when, with, without
|
|
23
|
+
RSpec/ContextWording:
|
|
34
24
|
Exclude:
|
|
35
|
-
- '
|
|
36
|
-
- '
|
|
25
|
+
- 'spec/githuh/cli/commands/export_spec.rb'
|
|
26
|
+
- 'spec/githuh/cli/commands/help_spec.rb'
|
|
27
|
+
- 'spec/githuh/cli/commands/info_spec.rb'
|
|
28
|
+
- 'spec/githuh/cli/commands/list_spec.rb'
|
|
29
|
+
- 'spec/githuh/cli/commands/version_spec.rb'
|
|
30
|
+
- 'spec/support/aruba_helper.rb'
|
|
37
31
|
|
|
38
|
-
# Offense count:
|
|
39
|
-
#
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
# SupportedColonStyles: key, separator, table
|
|
43
|
-
# SupportedLastArgumentHashStyles: always_inspect, always_ignore, ignore_implicit, ignore_explicit
|
|
44
|
-
Layout/HashAlignment:
|
|
45
|
-
Exclude:
|
|
46
|
-
- 'lib/githuh/cli/commands/issue/export.rb'
|
|
32
|
+
# Offense count: 2
|
|
33
|
+
# Configuration parameters: CountAsOne.
|
|
34
|
+
RSpec/ExampleLength:
|
|
35
|
+
Max: 6
|
|
47
36
|
|
|
48
|
-
# Offense count:
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
Layout/IndentationWidth:
|
|
52
|
-
Exclude:
|
|
53
|
-
- 'lib/githuh/cli/commands/issue/export.rb'
|
|
37
|
+
# Offense count: 8
|
|
38
|
+
RSpec/MultipleExpectations:
|
|
39
|
+
Max: 5
|
|
54
40
|
|
|
55
|
-
# Offense count:
|
|
56
|
-
#
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
Layout/MultilineOperationIndentation:
|
|
60
|
-
Exclude:
|
|
61
|
-
- 'lib/githuh/cli/commands/issue/export.rb'
|
|
41
|
+
# Offense count: 4
|
|
42
|
+
# Configuration parameters: AllowSubject.
|
|
43
|
+
RSpec/MultipleMemoizedHelpers:
|
|
44
|
+
Max: 7
|
|
62
45
|
|
|
63
|
-
# Offense count:
|
|
64
|
-
#
|
|
65
|
-
|
|
66
|
-
# SupportedStylesForExponentOperator: space, no_space
|
|
67
|
-
Layout/SpaceAroundOperators:
|
|
46
|
+
# Offense count: 2
|
|
47
|
+
# This cop supports unsafe autocorrection (--autocorrect-all).
|
|
48
|
+
RSpec/Output:
|
|
68
49
|
Exclude:
|
|
69
|
-
- '
|
|
50
|
+
- 'spec/support/run_helper.rb'
|
|
70
51
|
|
|
71
|
-
# Offense count:
|
|
72
|
-
#
|
|
73
|
-
#
|
|
74
|
-
|
|
75
|
-
Layout/TrailingEmptyLines:
|
|
52
|
+
# Offense count: 3
|
|
53
|
+
# Configuration parameters: CustomTransform, IgnoreMethods, IgnoreMetadata, InflectorPath, EnforcedInflector.
|
|
54
|
+
# SupportedInflectors: default, active_support
|
|
55
|
+
RSpec/SpecFilePathFormat:
|
|
76
56
|
Exclude:
|
|
77
|
-
- '
|
|
57
|
+
- '**/spec/routing/**/*'
|
|
58
|
+
- 'spec/githuh/cli/commands/export_spec.rb'
|
|
59
|
+
- 'spec/githuh/cli/commands/info_spec.rb'
|
|
60
|
+
- 'spec/githuh/cli/commands/list_spec.rb'
|
|
78
61
|
|
|
79
|
-
# Offense count:
|
|
80
|
-
|
|
81
|
-
Lint/NonDeterministicRequireOrder:
|
|
62
|
+
# Offense count: 4
|
|
63
|
+
RSpec/SubjectStub:
|
|
82
64
|
Exclude:
|
|
83
|
-
- 'spec/
|
|
65
|
+
- 'spec/githuh/cli/commands/list_spec.rb'
|
|
66
|
+
- 'spec/githuh/llm_spec.rb'
|
|
84
67
|
|
|
85
|
-
# Offense count:
|
|
86
|
-
#
|
|
87
|
-
|
|
68
|
+
# Offense count: 5
|
|
69
|
+
# Configuration parameters: IgnoreNameless, IgnoreSymbolicNames.
|
|
70
|
+
RSpec/VerifiedDoubles:
|
|
88
71
|
Exclude:
|
|
89
|
-
- '
|
|
72
|
+
- 'spec/githuh/cli/commands/export_spec.rb'
|
|
73
|
+
- 'spec/githuh/cli/commands/list_spec.rb'
|
|
74
|
+
- 'spec/support/aruba_helper.rb'
|
|
90
75
|
|
|
91
|
-
# Offense count:
|
|
92
|
-
#
|
|
93
|
-
|
|
76
|
+
# Offense count: 2
|
|
77
|
+
# This cop supports safe autocorrection (--autocorrect).
|
|
78
|
+
Rake/Desc:
|
|
94
79
|
Exclude:
|
|
95
|
-
- '
|
|
96
|
-
|
|
97
|
-
# Offense count: 12
|
|
98
|
-
# Configuration parameters: .
|
|
99
|
-
# SupportedStyles: annotated, template, unannotated
|
|
100
|
-
Style/FormatStringToken:
|
|
101
|
-
EnforcedStyle: unannotated
|
|
80
|
+
- 'Rakefile'
|
|
102
81
|
|
|
103
82
|
# Offense count: 1
|
|
104
|
-
#
|
|
105
|
-
|
|
106
|
-
# SupportedStyles: always, always_true, never
|
|
107
|
-
Style/FrozenStringLiteralComment:
|
|
83
|
+
# This cop supports unsafe autocorrection (--autocorrect-all).
|
|
84
|
+
Style/GlobalStdStream:
|
|
108
85
|
Exclude:
|
|
109
|
-
- '
|
|
86
|
+
- 'spec/support/coverage_badge.rb'
|
|
110
87
|
|
|
111
88
|
# Offense count: 1
|
|
112
|
-
#
|
|
113
|
-
|
|
89
|
+
# This cop supports unsafe autocorrection (--autocorrect-all).
|
|
90
|
+
# Configuration parameters: Mode.
|
|
91
|
+
Style/StringConcatenation:
|
|
114
92
|
Exclude:
|
|
115
|
-
- '
|
|
93
|
+
- 'spec/support/coverage_badge.rb'
|
data/.secrets.baseline
ADDED
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": "1.5.0",
|
|
3
|
+
"plugins_used": [
|
|
4
|
+
{
|
|
5
|
+
"name": "ArtifactoryDetector"
|
|
6
|
+
},
|
|
7
|
+
{
|
|
8
|
+
"name": "AWSKeyDetector"
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"name": "AzureStorageKeyDetector"
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
"name": "Base64HighEntropyString",
|
|
15
|
+
"limit": 4.5
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"name": "BasicAuthDetector"
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"name": "CloudantDetector"
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"name": "DiscordBotTokenDetector"
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"name": "GitHubTokenDetector"
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
"name": "GitLabTokenDetector"
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"name": "HexHighEntropyString",
|
|
34
|
+
"limit": 3.0
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
"name": "IbmCloudIamDetector"
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
"name": "IbmCosHmacDetector"
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"name": "IPPublicDetector"
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
"name": "JwtTokenDetector"
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"name": "KeywordDetector",
|
|
50
|
+
"keyword_exclude": ""
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"name": "MailchimpDetector"
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"name": "NpmDetector"
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
"name": "OpenAIDetector"
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
"name": "PrivateKeyDetector"
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
"name": "PypiTokenDetector"
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
"name": "SendGridDetector"
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
"name": "SlackDetector"
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
"name": "SoftlayerDetector"
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
"name": "SquareOAuthDetector"
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
"name": "StripeDetector"
|
|
81
|
+
},
|
|
82
|
+
{
|
|
83
|
+
"name": "TelegramBotTokenDetector"
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
"name": "TwilioKeyDetector"
|
|
87
|
+
}
|
|
88
|
+
],
|
|
89
|
+
"filters_used": [
|
|
90
|
+
{
|
|
91
|
+
"path": "detect_secrets.filters.allowlist.is_line_allowlisted"
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
"path": "detect_secrets.filters.common.is_ignored_due_to_verification_policies",
|
|
95
|
+
"min_level": 2
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
"path": "detect_secrets.filters.heuristic.is_indirect_reference"
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
"path": "detect_secrets.filters.heuristic.is_likely_id_string"
|
|
102
|
+
},
|
|
103
|
+
{
|
|
104
|
+
"path": "detect_secrets.filters.heuristic.is_lock_file"
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
"path": "detect_secrets.filters.heuristic.is_not_alphanumeric_string"
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
"path": "detect_secrets.filters.heuristic.is_potential_uuid"
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
"path": "detect_secrets.filters.heuristic.is_prefixed_with_dollar_sign"
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
"path": "detect_secrets.filters.heuristic.is_sequential_string"
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
"path": "detect_secrets.filters.heuristic.is_swagger_file"
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
"path": "detect_secrets.filters.heuristic.is_templated_secret"
|
|
123
|
+
}
|
|
124
|
+
],
|
|
125
|
+
"results": {},
|
|
126
|
+
"generated_at": "2026-04-13T21:29:03Z"
|
|
127
|
+
}
|
data/CHANGELOG.md
ADDED
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
## [Unreleased](https://github.com/kigster/githuh/tree/HEAD)
|
|
4
|
+
|
|
5
|
+
[Full Changelog](https://github.com/kigster/githuh/compare/v0.3.0...HEAD)
|
|
6
|
+
|
|
7
|
+
**Merged pull requests:**
|
|
8
|
+
|
|
9
|
+
- Bump tzinfo from 1.2.7 to 2.0.5 [#3](https://github.com/kigster/githuh/pull/3) ([dependabot[bot]](https://github.com/apps/dependabot))
|
|
10
|
+
|
|
11
|
+
## [v0.3.0](https://github.com/kigster/githuh/tree/v0.3.0) (2020-09-11)
|
|
12
|
+
|
|
13
|
+
[Full Changelog](https://github.com/kigster/githuh/compare/v0.2.1...v0.3.0)
|
|
14
|
+
|
|
15
|
+
**Merged pull requests:**
|
|
16
|
+
|
|
17
|
+
- WIP: label mapping [#2](https://github.com/kigster/githuh/pull/2) ([kigster](https://github.com/kigster))
|
|
18
|
+
|
|
19
|
+
## [v0.2.1](https://github.com/kigster/githuh/tree/v0.2.1) (2020-09-09)
|
|
20
|
+
|
|
21
|
+
[Full Changelog](https://github.com/kigster/githuh/compare/v0.2.0...v0.2.1)
|
|
22
|
+
|
|
23
|
+
**Implemented enhancements:**
|
|
24
|
+
|
|
25
|
+
- Support `issue export` command for Pivotal Tracker CSV [#1](https://github.com/kigster/githuh/pull/1) ([kigster](https://github.com/kigster))
|
|
26
|
+
|
|
27
|
+
## [v0.2.0](https://github.com/kigster/githuh/tree/v0.2.0) (2020-08-31)
|
|
28
|
+
|
|
29
|
+
[Full Changelog](https://github.com/kigster/githuh/compare/v0.1.2...v0.2.0)
|
|
30
|
+
|
|
31
|
+
## [v0.1.2](https://github.com/kigster/githuh/tree/v0.1.2) (2020-03-18)
|
|
32
|
+
|
|
33
|
+
[Full Changelog](https://github.com/kigster/githuh/compare/v0.1.0...v0.1.2)
|
|
34
|
+
|
|
35
|
+
## [v0.1.0](https://github.com/kigster/githuh/tree/v0.1.0) (2020-03-12)
|
|
36
|
+
|
|
37
|
+
[Full Changelog](https://github.com/kigster/githuh/compare/c3c88b7d4771bdb4e8909daa19427e36d382dd37...v0.1.0)
|
|
38
|
+
|
|
39
|
+
\* *This Changelog was automatically generated by [github_changelog_generator](https://github.com/github-changelog-generator/github-changelog-generator)*
|
data/Gemfile
CHANGED
|
@@ -1,6 +1,18 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
source
|
|
3
|
+
source "https://rubygems.org"
|
|
4
4
|
|
|
5
5
|
gemspec
|
|
6
6
|
|
|
7
|
+
gem "aruba"
|
|
8
|
+
gem "asciidoctor"
|
|
9
|
+
gem "awesome_print"
|
|
10
|
+
gem "coverage-badge"
|
|
11
|
+
gem "rake"
|
|
12
|
+
gem "rspec"
|
|
13
|
+
gem "rspec-its"
|
|
14
|
+
gem "rubocop"
|
|
15
|
+
gem "rubocop-rake"
|
|
16
|
+
gem "rubocop-rspec"
|
|
17
|
+
gem "simplecov", "~> 0.22"
|
|
18
|
+
gem "yard"
|