linear-cli 0.6.1 → 0.7.1

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: 4026e9cf06b89bfcb574999671055fe7c07cb81b3b00c373834c73a5b6804388
4
- data.tar.gz: e476a919a256f0689f77e286e0681c9f53b31616fd87ed3851010b8b12fdc835
3
+ metadata.gz: df0794178c2a028eeace27132cd5271f6b4e6b3002c36ba15d9b5548c5888cc2
4
+ data.tar.gz: 62e02c37d7c2b16a364b65fcd7b77f4babc6a1dda0d574441ac77bf27cc90762
5
5
  SHA512:
6
- metadata.gz: 63516aa3096f09fba035ec976fecb068fa0e716490813d450cd5f1389e7dd96bc115cbe799581142a175b81520ba215d0b3653a93dca1c0a5c30e6110e9f65fa
7
- data.tar.gz: 01c3f94c3a364d49b2f78512285d144dffb40cbefaa4e4db36c2827ba62bbcc0e8cf6b6f885d611a2689abb5b04d5170d2b44246c3a4f77a3757df038a38fc95
6
+ metadata.gz: e7fdfd36b6107fe7caa23b4b34d585cdcc2b693affdb7be5c3314b51e9ade3f429ed6175a5eeb55de38be931709204c72da40a1553080fbfccc5e2f145608c05
7
+ data.tar.gz: af11d48a295fb2fc2cbf4f8ef0c67209d88f582f488fc6145e500a56a8cfc9d562dedc2cbb26e69137fca3be62b3c5ae1311467d06e90ad182bdb77a9dda1e1c
data/CHANGELOG.md CHANGED
@@ -2,6 +2,14 @@
2
2
 
3
3
  ## [Unreleased]
4
4
 
5
+ ## [0.7.1] - 2024-02-04
6
+ ### Fixed
7
+ - Fixed extra output when commenting on an inssue (@bougyman)
8
+
9
+ ## [0.7.0] - 2024-02-04
10
+ ### Added
11
+ - Added better help when using the lc bin and aliases (@bougyman)
12
+
5
13
  ## [0.6.1] - 2024-02-04
6
14
  ### Added
7
15
  - Added lcreate alias (@bougyman)
@@ -25,8 +33,10 @@
25
33
  ### Added
26
34
  - Added new changelog management system (changelog-rb) (@bougyman)
27
35
 
28
- [Unreleased]: https://github.com/rubyists/linear-cli/compare/0.6.1...HEAD
29
- [0.6.1]: https://github.com/rubyists/linear-cli/compare/v0.6.0...0.6.1
36
+ [Unreleased]: https://github.com/rubyists/linear-cli/compare/0.7.1...HEAD
37
+ [0.7.1]: https://github.com/rubyists/linear-cli/compare/v0.7.0...0.7.1
38
+ [0.7.0]: https://github.com/rubyists/linear-cli/compare/v0.6.1...v0.7.0
39
+ [0.6.1]: https://github.com/rubyists/linear-cli/compare/v0.6.0...v0.6.1
30
40
  [0.6.0]: https://github.com/rubyists/linear-cli/compare/v0.5.5...v0.6.0
31
41
  [0.5.5]: https://github.com/rubyists/linear-cli/compare/v0.5.4...v0.5.5
32
42
  [0.5.4]: https://github.com/rubyists/linear-cli/compare/v0.5.3...v0.5.4
@@ -0,0 +1,4 @@
1
+ type: Added
2
+ title: >
3
+ Added better help when using the lc bin and aliases
4
+ author: bougyman
@@ -0,0 +1 @@
1
+ date: 2024-02-04
@@ -0,0 +1,4 @@
1
+ type: Fixed
2
+ title: >
3
+ Fixed extra output when commenting on an inssue
4
+ author: bougyman
@@ -0,0 +1 @@
1
+ date: 2024-02-04
data/exe/lc CHANGED
@@ -1,6 +1,4 @@
1
1
  #!/usr/bin/env ruby
2
2
  # frozen_string_literal: true
3
3
 
4
- require 'linear'
5
- Rubyists::Linear::L :cli
6
- Dry::CLI.new(Rubyists::Linear::CLI).call
4
+ exec File.join(__dir__, 'lc.sh'), *ARGV
data/exe/lc.sh ADDED
@@ -0,0 +1,17 @@
1
+ #!/usr/bin/env bash
2
+ if [ "$#" -eq 0 ]; then
3
+ printf "No subcommand provided, defaulting to 'lc issue list'\nlc --help to see subcommands\n" >&2
4
+ exec linear-cli issue list
5
+ fi
6
+ if [[ "$*" =~ --help|-h ]]
7
+ then
8
+ printf "Each subcommand has its own help, use 'lc <subcommand> --help' to see it\n" >&2
9
+ linear-cli "$@" 2>&1|sed 's/linear-cli/lc/g'
10
+ exit 0
11
+ fi
12
+ if ! linear-cli "$@"
13
+ then
14
+ printf "lc: linear-cli failed\n" >&2
15
+ lc "$@" --help 2>&1
16
+ exit 1
17
+ fi
data/exe/lclose.sh CHANGED
@@ -4,6 +4,6 @@ then
4
4
  printf "This wrapper adds the --close option to the 'issue update' command.\n" >&2
5
5
  printf "It is used to close one or many issues. The issues are specified by their ID/slugs.\n" >&2
6
6
  printf "For closing multiple issues, you really want to pass --reason so you do not get prompted for each issue.\n\n" >&2
7
- exec lc issue update --help
7
+ exec linear-cli issue update --help
8
8
  fi
9
- exec lc issue update --close "$@"
9
+ exec linear-cli issue update --close "$@"
data/exe/lcls.sh CHANGED
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env bash
2
- exec lc i ls "$@"
2
+ exec linear-cli issue list "$@"
data/exe/lcreate.sh CHANGED
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env bash
2
- exec lc issue create "$@"
2
+ exec linear-cli issue create "$@"
data/exe/linear-cli ADDED
@@ -0,0 +1,6 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ require 'linear'
5
+ Rubyists::Linear::L :cli
6
+ Dry::CLI.new(Rubyists::Linear::CLI).call
@@ -24,6 +24,7 @@ module Rubyists
24
24
  exit 1
25
25
  rescue NotFoundError => e
26
26
  logger.error e.message
27
+ exit 66
27
28
  rescue StandardError => e
28
29
  logger.error e.message
29
30
  logger.error e.backtrace.join("\n") if Rubyists::Linear.verbosity.positive?
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Rubyists
4
4
  module Linear
5
- VERSION = '0.6.1'
5
+ VERSION = '0.7.1'
6
6
  end
7
7
  end
data/lib/linear/cli.rb CHANGED
@@ -38,7 +38,6 @@ module Rubyists
38
38
  end
39
39
 
40
40
  def self.load_and_register!(command)
41
- logger.debug "Registering #{command}"
42
41
  name = command.name.split('::').last.downcase
43
42
  command_aliases = command::ALIASES[name.to_sym] || []
44
43
  register name, aliases: Array(command_aliases) do |cmd|
@@ -19,12 +19,14 @@ module Rubyists
19
19
  include Rubyists::Linear::CLI::Issue # for #gimme_da_issue! and other Issue methods
20
20
  desc 'Update an issue'
21
21
  argument :issue_ids, type: :array, required: true, desc: 'Issue IDs (i.e. ISS-1)'
22
- option :comment, type: :string, aliases: ['--message'], desc: 'Comment to add to the issue'
22
+ option :comment, type: :string, aliases: ['-m'], desc: 'Comment to add to the issue'
23
23
  option :pr, type: :boolean, aliases: ['--pull-request'], default: false, desc: 'Create a pull request'
24
24
  option :close, type: :boolean, default: false, desc: 'Close the issue'
25
- option :reason, type: :string, aliases: ['--close-reason'], desc: 'Reason for closing the issue'
25
+ option :reason, type: :string, aliases: ['--butwhy'], desc: 'Reason for closing the issue'
26
26
 
27
27
  def call(issue_ids:, **options)
28
+ prompt.error('You should provide at least one issue ID') && raise(SmellsBad) if issue_ids.empty?
29
+
28
30
  logger.debug('Updating issues', issue_ids:, options:)
29
31
  Rubyists::Linear::Issue.find_all(issue_ids).each do |issue|
30
32
  update_issue(issue, **options)
@@ -10,6 +10,9 @@ module Rubyists
10
10
  # should be included in any command that deals with issues
11
11
  module Issue
12
12
  include CLI::SubCommands
13
+
14
+ DESCRIPTION = 'Manage issues'
15
+
13
16
  # Aliases for Issue commands
14
17
  ALIASES = {
15
18
  create: %w[c new add], # aliases for the create command
@@ -41,6 +44,7 @@ module Rubyists
41
44
  issue_comment(issue, options[:comment]) if options[:comment]
42
45
  return close_issue(issue, **options) if options[:close]
43
46
  return issue_pr(issue) if options[:pr]
47
+ return if options[:comment]
44
48
 
45
49
  prompt.warn('No action taken, no options specified')
46
50
  prompt.ok('Issue was not updated')
@@ -12,6 +12,8 @@ module Rubyists
12
12
  list: %w[ls l], # aliases for the list command
13
13
  team: %w[t teams] # aliases for the main team command itself
14
14
  }.freeze
15
+
16
+ DESCRIPTION = 'Manage teams'
15
17
  end
16
18
  end
17
19
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: linear-cli
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.1
4
+ version: 0.7.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tj (bougyman) Vanderpoel
@@ -183,12 +183,14 @@ email:
183
183
  - tj@rubyists.com
184
184
  executables:
185
185
  - lc
186
+ - lc.sh
186
187
  - lclose
187
188
  - lclose.sh
188
189
  - lcls
189
190
  - lcls.sh
190
191
  - lcreate
191
192
  - lcreate.sh
193
+ - linear-cli
192
194
  extensions: []
193
195
  extra_rdoc_files: []
194
196
  files:
@@ -207,14 +209,20 @@ files:
207
209
  - changelog/0.6.0/tag.yml
208
210
  - changelog/0.6.1/added_lcreate_alias.yml
209
211
  - changelog/0.6.1/tag.yml
212
+ - changelog/0.7.0/added_better_help_when_using_the_lc_bin_and_aliases.yml
213
+ - changelog/0.7.0/tag.yml
214
+ - changelog/0.7.1/fixed_extra_output_when_commenting_on_an_inssue.yml
215
+ - changelog/0.7.1/tag.yml
210
216
  - changelog/unreleased/.gitkeep
211
217
  - exe/lc
218
+ - exe/lc.sh
212
219
  - exe/lclose
213
220
  - exe/lclose.sh
214
221
  - exe/lcls
215
222
  - exe/lcls.sh
216
223
  - exe/lcreate
217
224
  - exe/lcreate.sh
225
+ - exe/linear-cli
218
226
  - lib/linear.rb
219
227
  - lib/linear/api.rb
220
228
  - lib/linear/cli.rb