twenty-cli 0.5.5 → 0.5.7

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: 2788338657a1baa50cd9df1dbf6f0ee6cec4670c70e888d0ecf483c2dee42aec
4
- data.tar.gz: b1cc4f163fc1a2be7aeb924ab9bbfba5f4769d4d848fe78265b288fb77e14dc3
3
+ metadata.gz: 39b8553e6aa621c07c81e4379940c7da72e535b26ac3c98714288ad75ad80f0e
4
+ data.tar.gz: 2742e7429d90c5affec8e5d335773c776f9a4bfb1299b853fc97b4dd471a2b7a
5
5
  SHA512:
6
- metadata.gz: d3db4deea8e6f421c1189d328298f1acf38f2058f33fff6d11b3413c898a674159130252e5131992268871e4a217de19b051e516c76ddc128d27688865a92403
7
- data.tar.gz: 2cdd2d036d9d1abb8680abe9b97a904a6608f650093579897f7b00dc3b3dd874971eae85ede66d308371a0d46c1f5362a0f7cb543dc5d997ff092f48c25ba0ca
6
+ metadata.gz: e94e2a9446e37590d542ab101588cffd2fa8fbf31406f30f1113c72b79e23cb4f1a0d7b84680c1bb778e1210b15013fddbd20fe49e547a612150df84f8a05d8b
7
+ data.tar.gz: 46a6643af111fbdb0dfa5c52eda52d68150948a2aa377ba0065d3ae131bf0b9c43193173e4bc1d6b8ec0a544b7bc3a34484ca143076e4932ae8cfba39a70756c
@@ -21,9 +21,9 @@ class Twenty::Command::Connect < Twenty::Command
21
21
  private
22
22
 
23
23
  def run_command(options)
24
- require "twenty/server/model"
25
24
  path = File.realpath(options.path ? options.path : Dir.getwd)
26
25
  if File.exist?(path)
26
+ require_models!
27
27
  project = Twenty::Project.create(
28
28
  name: File.basename(path),
29
29
  path:
@@ -24,7 +24,7 @@ class Twenty::Command::Console < Twenty::Command
24
24
  private
25
25
 
26
26
  def run_command(options)
27
- require "twenty/server/model"
27
+ require_models!
28
28
  require "irb"
29
29
  TOPLEVEL_BINDING.irb
30
30
  end
@@ -19,8 +19,8 @@ class Twenty::Command::Disconnect < Twenty::Command
19
19
  private
20
20
 
21
21
  def run_command(options)
22
- require "twenty/server/model"
23
22
  path = File.realpath(options.path ? options.path : Dir.getwd)
23
+ require_models!
24
24
  Twenty::Project
25
25
  .where(path:)
26
26
  .first!
@@ -2,11 +2,12 @@
2
2
 
3
3
  module Twenty::Command::Hook
4
4
  module RequireMigration
5
+ Error = Class.new(RuntimeError)
6
+
5
7
  def run_command(...)
6
8
  if pending_migrations?
7
- warn "There are pending migrations.\n" \
8
- "Run \"twenty migrate\" first.\n"
9
- exit(1)
9
+ raise Error, "There are pending database migrations to run. \n" \
10
+ "Try 'twenty migrate'"
10
11
  else
11
12
  super(...)
12
13
  end
@@ -3,6 +3,7 @@
3
3
  module Twenty::Command::Hook
4
4
  module Rescue
5
5
  FRAME_MAX = 15
6
+ INDENT_BY = 2
6
7
 
7
8
  def run(...)
8
9
  super(...)
@@ -11,7 +12,8 @@ module Twenty::Command::Hook
11
12
  $stderr.print "\n",
12
13
  " ", Paint[" Exception ", :white, :red, :bold], "\n",
13
14
  " ", Paint[ex.class.to_s, :bold], "\n",
14
- " ", ex.message, "\n\n",
15
+ ex.message.each_line.map { [" " * INDENT_BY, _1] }.join,
16
+ "\n\n",
15
17
  " ", Paint[" Backtrace ", :white, :blue, :bold], "\n",
16
18
  format_backtrace(ex.backtrace), "\n",
17
19
  "\n"
@@ -20,8 +22,8 @@ module Twenty::Command::Hook
20
22
  private
21
23
 
22
24
  def format_backtrace(backtrace)
23
- backtrace.last(FRAME_MAX).map do
24
- " #{_1.gsub(Dir.getwd, "")}"
25
+ backtrace[0..FRAME_MAX-1].map do
26
+ [" " * INDENT_BY, _1.gsub(Dir.getwd, "")].join
25
27
  end.join("\n")
26
28
  end
27
29
  end
@@ -36,7 +36,7 @@ class Twenty::Command::Up < Twenty::Command
36
36
  private
37
37
 
38
38
  def run_command(options)
39
- require "twenty/server/model"
39
+ require_models!
40
40
  File.binwrite(pid, Process.pid.to_s)
41
41
  thr = Twenty::Rack.server(options).start
42
42
  thr.join
@@ -16,4 +16,10 @@ class Twenty::Command < Cmd
16
16
  require_relative "command/disconnect"
17
17
  require_relative "command/migrate"
18
18
  require_relative "command/console"
19
+
20
+ private
21
+
22
+ def require_models!
23
+ require "twenty/server/model"
24
+ end
19
25
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: twenty-cli
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.5
4
+ version: 0.5.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - '0x1eef'
@@ -115,7 +115,6 @@ files:
115
115
  - "./lib/twenty/cli/command/hook/rescue.rb"
116
116
  - "./lib/twenty/cli/command/hook/sqlite_conn.rb"
117
117
  - "./lib/twenty/cli/command/migrate.rb"
118
- - "./lib/twenty/cli/command/mixin/common_option_mixin.rb"
119
118
  - "./lib/twenty/cli/command/option.rb"
120
119
  - "./lib/twenty/cli/command/option/database.rb"
121
120
  - "./lib/twenty/cli/command/up.rb"
@@ -1,15 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- class Twenty::Command
4
- module CommonOptionMixin
5
- def self.included(mod)
6
- mod.module_eval do
7
- set_option "-d PATH",
8
- "--database PATH",
9
- "The path to an alternate SQLite database",
10
- as: String,
11
- default: nil
12
- end
13
- end
14
- end
15
- end