linear-cli 0.9.14 → 0.9.17

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: fd77c94912af23400218c7b8efd3260ee4dac4c4e96eb2095a353ac08831f70e
4
- data.tar.gz: 7a4e9adf0fd3e694030c0bc032cbf276adce393e2990bbe89733f18477983541
3
+ metadata.gz: e5c0d2c4f9191fcb285234522569f47e6e4b437338563fa8b14a801480c92b4a
4
+ data.tar.gz: b023995d7242b5e02af60bf6e9fb7d9013660f9cfc31dcbd5d53003e529f8974
5
5
  SHA512:
6
- metadata.gz: 6a29310a7526761c3c8e04336345ad2a5c0693e3f6b3ae48dda51e5df7ac1fe78b3c458ce1c61075b60f41f939df68dc16307ae0306c1c53470c666e7d84a8bb
7
- data.tar.gz: 16fed8d02909f6699bbe12a52e3bdd376fc7c7b1374ef088d7f76108e5d7ed15b4c7cadecadc66d650459f597f2cbe72b66d4ef2fa901125f56bda1387093e5c
6
+ metadata.gz: 15030e014db1cd76294da2f3967cdbb69ad2964f752ee8213776e373d6b22fe31c2266e4818862156d0c4839a7bbbdc5bee31e6420cbe63e3cec2c5da7b4e279
7
+ data.tar.gz: c8113509fd3f9315c952cf4d970f3b78e730cf987209f9005d9d2b6fb6213b1666607c3c724b998dec62228b413b598797a8d0477fab180ca90e4005d0775f1c
data/CHANGELOG.md CHANGED
@@ -107,8 +107,8 @@
107
107
  ### Added
108
108
  - Added new changelog management system (changelog-rb) (@bougyman)
109
109
 
110
- [Unreleased]: https://github.com/rubyists/linear-cli/compare/0.9.11...HEAD
111
- [0.9.11]: https://github.com/rubyists/linear-cli/compare/v0.9.10...0.9.11
110
+ [Unreleased]: https://github.com/rubyists/linear-cli/compare/v0.9.11...HEAD
111
+ [0.9.11]: https://github.com/rubyists/linear-cli/compare/v0.9.10...v0.9.11
112
112
  [0.9.10]: https://github.com/rubyists/linear-cli/compare/0.9.8...v0.9.10
113
113
  [0.9.8]: https://github.com/rubyists/linear-cli/compare/v0.9.7...0.9.8
114
114
  [0.9.7]: https://github.com/rubyists/linear-cli/compare/v0.9.5...v0.9.7
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Rubyists
4
4
  module Linear
5
- VERSION = '0.9.14'
5
+ VERSION = '0.9.17'
6
6
  end
7
7
  end
@@ -27,6 +27,7 @@ module Rubyists
27
27
  argument :ids, type: :array, default: [], desc: 'Issue IDs to list'
28
28
  option :mine, type: :boolean, default: true, desc: 'Only show my issues'
29
29
  option :unassigned, aliases: ['-u'], type: :boolean, default: false, desc: 'Show unassigned issues only'
30
+ option :team, aliases: ['-t'], type: :string, desc: 'Show issues for only this team'
30
31
  option :full, type: :boolean, aliases: ['-f'], default: false, desc: 'Show full issue details'
31
32
 
32
33
  def call(ids:, **options)
@@ -36,13 +37,19 @@ module Rubyists
36
37
  display issues_for(options.merge(ids:)), options
37
38
  end
38
39
 
40
+ def filters_for(options)
41
+ filter = {}
42
+ filter[:assignee] = { isMe: { eq: true } } if options[:mine]
43
+ filter[:assignee] = { null: true } if options[:unassigned]
44
+ filter[:team] = { key: { eq: options[:team] } } if options[:team]
45
+ filter
46
+ end
47
+
39
48
  def issues_for(options)
40
49
  logger.debug('Fetching issues', options:)
41
50
  return options[:ids].map { |id| Rubyists::Linear::Issue.find(id.upcase) } if options[:ids]
42
- return Rubyists::Linear::Issue.all(filter: { assignee: { null: true } }) if options[:unassigned]
43
- return Rubyists::Linear::User.me.issues if options[:mine]
44
51
 
45
- Rubyists::Linear::Issue.all
52
+ Rubyists::Linear::Issue.all filter: filters_for(options)
46
53
  end
47
54
  end
48
55
  end
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'semantic_logger'
4
+ require_relative '../issue'
4
5
 
5
6
  module Rubyists
6
7
  # Namespace for Linear
@@ -14,6 +15,7 @@ module Rubyists
14
15
  class Take
15
16
  include SemanticLogger::Loggable
16
17
  include Rubyists::Linear::CLI::CommonOptions
18
+ include Rubyists::Linear::CLI::Issue # for #gimme_da_issue! and other Issue methods
17
19
  desc 'Assign one or more issues to yourself'
18
20
  argument :issue_ids, type: :array, required: true, desc: 'Issue Identifiers'
19
21
 
@@ -53,7 +53,6 @@ module Rubyists
53
53
  end
54
54
 
55
55
  def create_pr!(title:, body:)
56
- require 'pry-byebug'; binding.pry
57
56
  return `gh pr create -a @me --title "#{title}" --body-file "#{body.path}"` if body.respond_to?(:path)
58
57
 
59
58
  `gh pr create -a @me --title "#{title}" --body "#{body}"`
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: linear-cli
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.14
4
+ version: 0.9.17
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tj (bougyman) Vanderpoel
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-04-08 00:00:00.000000000 Z
11
+ date: 2024-04-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: base64
@@ -257,7 +257,6 @@ files:
257
257
  - lib/linear/models/user.rb
258
258
  - lib/linear/models/workflow_state.rb
259
259
  - lib/linear/version.rb
260
- - linear-cli.gemspec
261
260
  - oci/Containerfile
262
261
  - oci/build_image
263
262
  - oci/plc
data/linear-cli.gemspec DELETED
@@ -1,54 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require_relative 'lib/linear/version'
4
-
5
- Gem::Specification.new do |spec|
6
- spec.name = 'linear-cli'
7
- spec.version = Rubyists::Linear::VERSION
8
- spec.authors = ['Tj (bougyman) Vanderpoel']
9
- spec.email = ['tj@rubyists.com']
10
-
11
- spec.summary = 'CLI for interacting with Linear.app.'
12
- spec.description = 'A CLI for interacting with Linear.app. Loosely based on the GitHub CLI'
13
- spec.homepage = 'https://github.com/rubyists/linear-cli'
14
- spec.required_ruby_version = '>= 3.2.0'
15
-
16
- spec.license = 'MIT'
17
- spec.metadata['allowed_push_host'] = 'https://rubygems.org'
18
-
19
- spec.metadata['homepage_uri'] = spec.homepage
20
- spec.metadata['source_code_uri'] = spec.homepage
21
- spec.metadata['changelog_uri'] = "#{spec.homepage}/blob/master/CHANGELOG.md"
22
-
23
- # Specify which files should be added to the gem when it is released.
24
- # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
25
- spec.files = Dir.chdir(__dir__) do
26
- `git ls-files -z`.split("\x0").reject do |f|
27
- (File.expand_path(f) == __FILE__) ||
28
- f.start_with?(*%w[changelog/ pkg/ bin/ test/ spec/ features/ .git .github appveyor .rspec .rubocop cucumber.yml
29
- Gemfile])
30
- end
31
- end
32
- spec.bindir = 'exe'
33
- spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }.reject { |f| f.end_with?('.sh') }
34
- spec.require_paths = ['lib']
35
-
36
- # Uncomment to register a new dependency of your gem
37
- spec.add_dependency 'base64', '~> 0.2'
38
- spec.add_dependency 'dry-cli', '~> 1.0'
39
- spec.add_dependency 'dry-cli-completion', '~> 1.0'
40
- spec.add_dependency 'git', '~> 1.5'
41
- spec.add_dependency 'gqli', '~> 1.2'
42
- spec.add_dependency 'httpx', '~> 1.2'
43
- spec.add_dependency 'pry-byebug'
44
- spec.add_dependency 'semantic_logger', '~> 4.0'
45
- spec.add_dependency 'sequel', '~> 5.0'
46
- spec.add_dependency 'sqlite3', '~> 1.7'
47
- spec.add_dependency 'tty-editor', '~> 0.7'
48
- spec.add_dependency 'tty-markdown', '~> 0.7'
49
- spec.add_dependency 'tty-prompt', '~> 0.23'
50
-
51
- # For more information and examples about making a new gem, check out our
52
- # guide at: https://bundler.io/guides/creating_gem.html
53
- spec.metadata['rubygems_mfa_required'] = 'true'
54
- end