muxify 0.1.5 → 0.1.10
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/.rspec +2 -1
- data/.rubocop.yml +15 -0
- data/.travis.yml +8 -3
- data/Gemfile +1 -1
- data/README.md +28 -26
- data/Rakefile +5 -3
- data/bin/console +4 -3
- data/bin/muxify +2 -3
- data/bin/rails_server_with_puma_dev +53 -0
- data/bin/rake +29 -0
- data/bin/rspec +29 -0
- data/bin/rubocop +29 -0
- data/lib/muxify/builder.rb +26 -23
- data/lib/muxify/cli.rb +10 -5
- data/lib/muxify/linker.rb +2 -2
- data/lib/muxify/version.rb +1 -1
- data/muxify.gemspec +4 -2
- metadata +23 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d7643b48e39c0bdea0bcbe70da3bc38872eec60fb1256209ab462d3894c81ded
|
4
|
+
data.tar.gz: f8c00a63134eae01e183340963afe1a8bcd63874d7beeb0ed2a6f4129e54ee6c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9513967b1db9a34a44168798e16619ccd9aff89d1d66046ae466444b3185c3c46b9b44aae223029390c88e7dc512b6bfae62162277987fe18338b4c3bd98b59d
|
7
|
+
data.tar.gz: 4c64b6891a1d6de45f3aa439c73f34da09044038964dd02f4a8d9aa5459e940289be6fffd8ba651b1d58cb4d9b4bff5d761b6e917e0697755e49384ff0d055d7
|
data/.rspec
CHANGED
data/.rubocop.yml
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
---
|
2
|
+
Layout/SpaceInsideArrayLiteralBrackets:
|
3
|
+
EnforcedStyle: no_space
|
4
|
+
Layout/SpaceInsideHashLiteralBraces:
|
5
|
+
EnforcedStyle: no_space
|
6
|
+
Style/Documentation:
|
7
|
+
Enabled: false
|
8
|
+
Style/StringLiterals:
|
9
|
+
Enabled: false
|
10
|
+
Style/TrailingCommaInArguments:
|
11
|
+
EnforcedStyleForMultiline: comma
|
12
|
+
Style/TrailingCommaInArrayLiteral:
|
13
|
+
EnforcedStyleForMultiline: comma
|
14
|
+
Style/TrailingCommaInHashLiteral:
|
15
|
+
EnforcedStyleForMultiline: comma
|
data/.travis.yml
CHANGED
data/Gemfile
CHANGED
data/README.md
CHANGED
@@ -4,15 +4,15 @@ Sets up consistent tmux development environment for projects.
|
|
4
4
|
|
5
5
|
Why?
|
6
6
|
|
7
|
-
|
8
|
-
|
9
|
-
|
7
|
+
- Saves time and effort switching projects.
|
8
|
+
- Ensures consistent layout which is faster to navigate via muscle memory.
|
9
|
+
- Avoids visual and mental overhead of maintaining numerous tabs.
|
10
10
|
|
11
11
|
## Dependencies
|
12
12
|
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
- MacOS (may work on Linux)
|
14
|
+
- Ruby
|
15
|
+
- Tmux (`which tmux || brew install tmux`)
|
16
16
|
|
17
17
|
## Installation
|
18
18
|
|
@@ -41,25 +41,26 @@ $ mux my_app
|
|
41
41
|
|
42
42
|
Depending on its type, this will create the following tmux windows for a project:
|
43
43
|
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
44
|
+
- Standard (applies to all projects)
|
45
|
+
- shell (performs `git fetch` when `.git` is present)
|
46
|
+
- editor (invokes terminal editor, defaulting to `vim` when `$EDITOR` is unset)
|
47
|
+
- logs (when present, truncates then tails `log/*.log`)
|
48
|
+
- Rails (identified by presence of `bin/rails`)
|
49
|
+
- db (`rails db`)
|
50
|
+
- console (`rails console`)
|
51
|
+
- server (configures puma-dev then `rails server`; see [code](./bin/rails_server_with_puma_dev))
|
52
|
+
- NodeJS (identified by presence of `package.json` when non-Rails)
|
53
|
+
- console (`node`)
|
54
|
+
- Elixir (identified by presence of `mix.exs` when non-Phoenix)
|
55
|
+
- console (`iex -S mix`)
|
56
|
+
- server (`mix`)
|
57
|
+
- Elixir/Phoenix (identified by presence of `deps/phoenix`)
|
58
|
+
- console (`iex -S mix phoenix.server`)
|
59
|
+
- server (`mix phoenix.server`)
|
60
|
+
- Django (identified by `requirements.txt` containing `django`)
|
61
|
+
- db (`python manage.py dbshell`)
|
62
|
+
- console (`python manage.py shell`)
|
63
|
+
- server (`python manage.py runserver`)
|
63
64
|
|
64
65
|
## Customising projects
|
65
66
|
|
@@ -67,6 +68,7 @@ To add a custom tmux window for a project:
|
|
67
68
|
|
68
69
|
1. Create a file called `~/.muxifyrc`.
|
69
70
|
1. Edit it in YAML format; eg to add a tmux window to `my_app` project which is named `server` and invokes `yarn dev`:
|
71
|
+
|
70
72
|
```yaml
|
71
73
|
my_app:
|
72
74
|
windows:
|
@@ -75,7 +77,7 @@ my_app:
|
|
75
77
|
|
76
78
|
## Thanks
|
77
79
|
|
78
|
-
|
80
|
+
- https://github.com/tmuxinator/tmuxinator
|
79
81
|
|
80
82
|
## Contributing
|
81
83
|
|
data/Rakefile
CHANGED
@@ -1,8 +1,10 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require
|
4
|
-
require
|
3
|
+
require 'bundler/gem_tasks'
|
4
|
+
require 'rubocop/rake_task'
|
5
|
+
require 'rspec/core/rake_task'
|
5
6
|
|
7
|
+
RuboCop::RakeTask.new
|
6
8
|
RSpec::Core::RakeTask.new(:spec)
|
7
9
|
|
8
|
-
task :
|
10
|
+
task default: %i[rubocop spec]
|
data/bin/console
CHANGED
@@ -1,7 +1,8 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
|
+
# frozen_string_literal: true
|
2
3
|
|
3
|
-
require
|
4
|
-
require
|
4
|
+
require 'bundler/setup'
|
5
|
+
require 'muxify'
|
5
6
|
|
6
7
|
# You can add fixtures and/or initialization code here to make experimenting
|
7
8
|
# with your gem easier. You can also use a different console, if you like.
|
@@ -10,5 +11,5 @@ require "muxify"
|
|
10
11
|
# require "pry"
|
11
12
|
# Pry.start
|
12
13
|
|
13
|
-
require
|
14
|
+
require 'irb'
|
14
15
|
IRB.start(__FILE__)
|
data/bin/muxify
CHANGED
@@ -1,8 +1,7 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
|
+
# frozen_string_literal: true
|
2
3
|
|
3
|
-
if File.directory? File.expand_path('
|
4
|
-
$:.unshift File.expand_path('../../lib', __FILE__)
|
5
|
-
end
|
4
|
+
$LOAD_PATH.unshift File.expand_path('../lib', __dir__) if File.directory? File.expand_path('../.git', __dir__)
|
6
5
|
|
7
6
|
require 'bundler/setup'
|
8
7
|
require 'muxify'
|
@@ -0,0 +1,53 @@
|
|
1
|
+
#!/usr/bin/env bash
|
2
|
+
|
3
|
+
# Starts rails server with a random port and configures puma-dev
|
4
|
+
# Usage:
|
5
|
+
# rails_server_with_puma_dev [HOSTNAME]
|
6
|
+
# HOSTNAME should not include the `.test` extension.
|
7
|
+
# If HOSTNAME isn't supplied, it defaults to current directory name
|
8
|
+
# (underscores are converted to dashes).
|
9
|
+
|
10
|
+
set -euo pipefail
|
11
|
+
|
12
|
+
min_port=3000
|
13
|
+
max_port=4000
|
14
|
+
puma_dev_config_path="$HOME/.puma-dev"
|
15
|
+
|
16
|
+
find_available_port() {
|
17
|
+
netstat -aln | awk -v min_port="$min_port" -v max_port="$max_port" '
|
18
|
+
$6 == "LISTEN" {
|
19
|
+
if ($4 ~ "[.:][0-9]+$") {
|
20
|
+
split($4, a, /[:.]/);
|
21
|
+
port = a[length(a)];
|
22
|
+
p[port] = 1
|
23
|
+
}
|
24
|
+
}
|
25
|
+
END {
|
26
|
+
for (i = min_port; i < max_port && p[i]; i++) {};
|
27
|
+
if (i == max_port) { exit 1 };
|
28
|
+
print i
|
29
|
+
}
|
30
|
+
'
|
31
|
+
}
|
32
|
+
|
33
|
+
get_target_hostname() {
|
34
|
+
if (( $# == 0 )); then
|
35
|
+
echo "$(basename "$(pwd)" | tr '_' '-')"
|
36
|
+
else
|
37
|
+
echo $1
|
38
|
+
fi
|
39
|
+
}
|
40
|
+
|
41
|
+
configure_puma_dev() {
|
42
|
+
target_config_path="$puma_dev_config_path/$host"
|
43
|
+
echo "Configuring puma-dev: $host.test:$port ($target_config_path)"
|
44
|
+
echo "$port" > "$target_config_path"
|
45
|
+
puma-dev -stop
|
46
|
+
pkill -USR1 puma-dev
|
47
|
+
}
|
48
|
+
|
49
|
+
target_port="$(find_available_port)"
|
50
|
+
target_host="$(get_target_hostname "$@")"
|
51
|
+
|
52
|
+
host="$target_host" port="$target_port" configure_puma_dev
|
53
|
+
bundle exec rails server -p "$target_port"
|
data/bin/rake
ADDED
@@ -0,0 +1,29 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
#
|
5
|
+
# This file was generated by Bundler.
|
6
|
+
#
|
7
|
+
# The application 'rake' is installed as part of a gem, and
|
8
|
+
# this file is here to facilitate running it.
|
9
|
+
#
|
10
|
+
|
11
|
+
require 'pathname'
|
12
|
+
ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile',
|
13
|
+
Pathname.new(__FILE__).realpath)
|
14
|
+
|
15
|
+
bundle_binstub = File.expand_path('bundle', __dir__)
|
16
|
+
|
17
|
+
if File.file?(bundle_binstub)
|
18
|
+
if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/
|
19
|
+
load(bundle_binstub)
|
20
|
+
else
|
21
|
+
abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
|
22
|
+
Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
require 'rubygems'
|
27
|
+
require 'bundler/setup'
|
28
|
+
|
29
|
+
load Gem.bin_path('rake', 'rake')
|
data/bin/rspec
ADDED
@@ -0,0 +1,29 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
#
|
5
|
+
# This file was generated by Bundler.
|
6
|
+
#
|
7
|
+
# The application 'rspec' is installed as part of a gem, and
|
8
|
+
# this file is here to facilitate running it.
|
9
|
+
#
|
10
|
+
|
11
|
+
require 'pathname'
|
12
|
+
ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile',
|
13
|
+
Pathname.new(__FILE__).realpath)
|
14
|
+
|
15
|
+
bundle_binstub = File.expand_path('bundle', __dir__)
|
16
|
+
|
17
|
+
if File.file?(bundle_binstub)
|
18
|
+
if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/
|
19
|
+
load(bundle_binstub)
|
20
|
+
else
|
21
|
+
abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
|
22
|
+
Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
require 'rubygems'
|
27
|
+
require 'bundler/setup'
|
28
|
+
|
29
|
+
load Gem.bin_path('rspec-core', 'rspec')
|
data/bin/rubocop
ADDED
@@ -0,0 +1,29 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
#
|
5
|
+
# This file was generated by Bundler.
|
6
|
+
#
|
7
|
+
# The application 'rubocop' is installed as part of a gem, and
|
8
|
+
# this file is here to facilitate running it.
|
9
|
+
#
|
10
|
+
|
11
|
+
require 'pathname'
|
12
|
+
ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile',
|
13
|
+
Pathname.new(__FILE__).realpath)
|
14
|
+
|
15
|
+
bundle_binstub = File.expand_path('bundle', __dir__)
|
16
|
+
|
17
|
+
if File.file?(bundle_binstub)
|
18
|
+
if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/
|
19
|
+
load(bundle_binstub)
|
20
|
+
else
|
21
|
+
abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
|
22
|
+
Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
require 'rubygems'
|
27
|
+
require 'bundler/setup'
|
28
|
+
|
29
|
+
load Gem.bin_path('rubocop', 'rubocop')
|
data/lib/muxify/builder.rb
CHANGED
@@ -11,9 +11,10 @@ module Muxify
|
|
11
11
|
new(*args).to_yaml
|
12
12
|
end
|
13
13
|
|
14
|
-
def initialize(root, name: nil)
|
14
|
+
def initialize(root, name: nil, custom_config_path: CUSTOM_CONFIG_PATH)
|
15
15
|
@root = File.expand_path(root)
|
16
16
|
@name = name || File.basename(@root)
|
17
|
+
@custom_config_path = custom_config_path
|
17
18
|
end
|
18
19
|
|
19
20
|
def to_yaml
|
@@ -22,7 +23,7 @@ module Muxify
|
|
22
23
|
|
23
24
|
private
|
24
25
|
|
25
|
-
attr_reader :root, :name
|
26
|
+
attr_reader :root, :name, :custom_config_path
|
26
27
|
|
27
28
|
def config
|
28
29
|
{
|
@@ -41,9 +42,18 @@ module Muxify
|
|
41
42
|
end
|
42
43
|
|
43
44
|
def custom_windows
|
44
|
-
return {} unless
|
45
|
+
return {} unless custom_config.key?('windows')
|
45
46
|
|
46
|
-
YAML.load_file(
|
47
|
+
YAML.load_file(custom_config_path).dig(name, 'windows') || {}
|
48
|
+
end
|
49
|
+
|
50
|
+
def custom_config
|
51
|
+
return {} unless File.exist?(custom_config_path)
|
52
|
+
|
53
|
+
yaml = YAML.load_file(custom_config_path)
|
54
|
+
return {} unless yaml
|
55
|
+
|
56
|
+
yaml.fetch(name, {})
|
47
57
|
end
|
48
58
|
|
49
59
|
class Windows
|
@@ -56,7 +66,6 @@ module Muxify
|
|
56
66
|
*shell,
|
57
67
|
*editor,
|
58
68
|
*logs,
|
59
|
-
*foreman,
|
60
69
|
*rails,
|
61
70
|
*elixir_non_phoenix,
|
62
71
|
*phoenix,
|
@@ -74,11 +83,9 @@ module Muxify
|
|
74
83
|
end
|
75
84
|
|
76
85
|
def init_shell
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
'echo "Not a git repository."'
|
81
|
-
end
|
86
|
+
return 'echo "Not a git repository."' unless git?
|
87
|
+
|
88
|
+
'git fetch; git status'
|
82
89
|
end
|
83
90
|
|
84
91
|
def git?
|
@@ -91,6 +98,7 @@ module Muxify
|
|
91
98
|
|
92
99
|
def logs
|
93
100
|
return [] if logfiles.empty?
|
101
|
+
|
94
102
|
logfiles.each(&method(:truncate_file))
|
95
103
|
[{'logs' => 'tail -f log/*.log'}]
|
96
104
|
end
|
@@ -103,22 +111,13 @@ module Muxify
|
|
103
111
|
File.truncate(path, 0)
|
104
112
|
end
|
105
113
|
|
106
|
-
def foreman
|
107
|
-
return [] unless foreman?
|
108
|
-
[{'foreman' => <<-SH.strip}]
|
109
|
-
ps aux | grep 'unicorn_rails master' | awk '{print $2}' | xargs kill; foreman start
|
110
|
-
SH
|
111
|
-
end
|
112
|
-
|
113
|
-
def foreman?
|
114
|
-
# TODO?
|
115
|
-
end
|
116
|
-
|
117
114
|
def rails
|
118
115
|
return [] unless rails?
|
116
|
+
|
119
117
|
[
|
120
118
|
{'db' => 'rails db'},
|
121
119
|
{'console' => 'rails console'},
|
120
|
+
{'server' => File.expand_path('../../bin/rails_server_with_puma_dev', __dir__)},
|
122
121
|
]
|
123
122
|
end
|
124
123
|
|
@@ -128,6 +127,7 @@ module Muxify
|
|
128
127
|
|
129
128
|
def elixir_non_phoenix
|
130
129
|
return [] unless elixir_non_phoenix?
|
130
|
+
|
131
131
|
[
|
132
132
|
{'console' => 'iex -S mix'},
|
133
133
|
{'server' => 'mix'},
|
@@ -140,6 +140,7 @@ module Muxify
|
|
140
140
|
|
141
141
|
def phoenix
|
142
142
|
return [] unless phoenix?
|
143
|
+
|
143
144
|
[
|
144
145
|
{'console' => 'iex -S mix phoenix.server'},
|
145
146
|
{'server' => 'mix phoenix.server'},
|
@@ -152,6 +153,7 @@ module Muxify
|
|
152
153
|
|
153
154
|
def nodejs
|
154
155
|
return [] unless nodejs?
|
156
|
+
|
155
157
|
[
|
156
158
|
{'console' => 'node'},
|
157
159
|
]
|
@@ -163,6 +165,7 @@ module Muxify
|
|
163
165
|
|
164
166
|
def django
|
165
167
|
return [] unless django?
|
168
|
+
|
166
169
|
[
|
167
170
|
{'db' => 'python manage.py dbshell'},
|
168
171
|
{'console' => 'python manage.py shell'},
|
@@ -172,7 +175,7 @@ module Muxify
|
|
172
175
|
|
173
176
|
def django?
|
174
177
|
python_requirements = File.join(root, 'requirements.txt')
|
175
|
-
File.
|
178
|
+
File.exist?(python_requirements) && File.read(python_requirements).include?('django')
|
176
179
|
end
|
177
180
|
|
178
181
|
def directory?(relative_path)
|
@@ -180,7 +183,7 @@ module Muxify
|
|
180
183
|
end
|
181
184
|
|
182
185
|
def exists?(relative_path)
|
183
|
-
File.
|
186
|
+
File.exist?(File.join(root, relative_path))
|
184
187
|
end
|
185
188
|
end
|
186
189
|
end
|
data/lib/muxify/cli.rb
CHANGED
@@ -6,19 +6,24 @@ require 'muxify/linker'
|
|
6
6
|
|
7
7
|
module Muxify
|
8
8
|
class CLI < Thor
|
9
|
-
desc
|
9
|
+
desc 'add', 'Adds tmuxinator config for current (or supplied) path'
|
10
10
|
def add(root = Dir.pwd)
|
11
|
-
Muxify::Linker.(root: root)
|
11
|
+
Muxify::Linker.call(root: root)
|
12
12
|
end
|
13
13
|
|
14
|
-
desc
|
14
|
+
desc 'debug', 'Prints tmuxinator config of current (or supplied) path to stdout'
|
15
15
|
def debug(root = Dir.pwd)
|
16
|
-
puts Muxify::Builder.(root)
|
16
|
+
puts Muxify::Builder.call(root)
|
17
17
|
end
|
18
18
|
|
19
|
-
desc
|
19
|
+
desc 'stop', 'Kills tmux session'
|
20
20
|
def stop(name = File.basename(Dir.pwd))
|
21
21
|
Kernel.system("tmux kill-session -t #{name}")
|
22
22
|
end
|
23
|
+
|
24
|
+
desc 'version', 'Print current version'
|
25
|
+
def version
|
26
|
+
puts Muxify::VERSION
|
27
|
+
end
|
23
28
|
end
|
24
29
|
end
|
data/lib/muxify/linker.rb
CHANGED
@@ -7,8 +7,8 @@ module Muxify
|
|
7
7
|
TMUXINATOR_CONFIG_PATH = File.expand_path(File.join(ENV.fetch('HOME'), '.tmuxinator')).freeze
|
8
8
|
private_constant :TMUXINATOR_CONFIG_PATH
|
9
9
|
|
10
|
-
def self.call(
|
11
|
-
new(
|
10
|
+
def self.call(**args)
|
11
|
+
new(**args).call
|
12
12
|
end
|
13
13
|
|
14
14
|
def initialize(root:)
|
data/lib/muxify/version.rb
CHANGED
data/muxify.gemspec
CHANGED
@@ -7,10 +7,10 @@ require 'muxify/version'
|
|
7
7
|
Gem::Specification.new do |spec|
|
8
8
|
spec.name = 'muxify'
|
9
9
|
spec.version = Muxify::VERSION
|
10
|
-
spec.authors = [
|
10
|
+
spec.authors = ['Zubin Henner']
|
11
11
|
spec.email = ['zubin@users.noreply.github.com']
|
12
12
|
|
13
|
-
spec.summary =
|
13
|
+
spec.summary = 'Simple tmux project config'
|
14
14
|
spec.homepage = 'https://github.com/zubin/muxify'
|
15
15
|
|
16
16
|
spec.files = `git ls-files -z`.split("\x0").reject do |f|
|
@@ -19,6 +19,7 @@ Gem::Specification.new do |spec|
|
|
19
19
|
spec.bindir = 'bin'
|
20
20
|
spec.executables = ['muxify']
|
21
21
|
spec.require_paths = ['lib']
|
22
|
+
spec.required_ruby_version = '>= 2.7.0'
|
22
23
|
|
23
24
|
spec.add_dependency 'thor'
|
24
25
|
spec.add_dependency 'tmuxinator'
|
@@ -26,4 +27,5 @@ Gem::Specification.new do |spec|
|
|
26
27
|
spec.add_development_dependency 'bundler'
|
27
28
|
spec.add_development_dependency 'rake'
|
28
29
|
spec.add_development_dependency 'rspec'
|
30
|
+
spec.add_development_dependency 'rubocop'
|
29
31
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: muxify
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.10
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Zubin Henner
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-06-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: thor
|
@@ -80,6 +80,20 @@ dependencies:
|
|
80
80
|
- - ">="
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: '0'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: rubocop
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - ">="
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '0'
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - ">="
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '0'
|
83
97
|
description:
|
84
98
|
email:
|
85
99
|
- zubin@users.noreply.github.com
|
@@ -90,12 +104,17 @@ extra_rdoc_files: []
|
|
90
104
|
files:
|
91
105
|
- ".gitignore"
|
92
106
|
- ".rspec"
|
107
|
+
- ".rubocop.yml"
|
93
108
|
- ".travis.yml"
|
94
109
|
- Gemfile
|
95
110
|
- README.md
|
96
111
|
- Rakefile
|
97
112
|
- bin/console
|
98
113
|
- bin/muxify
|
114
|
+
- bin/rails_server_with_puma_dev
|
115
|
+
- bin/rake
|
116
|
+
- bin/rspec
|
117
|
+
- bin/rubocop
|
99
118
|
- bin/setup
|
100
119
|
- lib/muxify.rb
|
101
120
|
- lib/muxify/builder.rb
|
@@ -114,14 +133,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
114
133
|
requirements:
|
115
134
|
- - ">="
|
116
135
|
- !ruby/object:Gem::Version
|
117
|
-
version:
|
136
|
+
version: 2.7.0
|
118
137
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
119
138
|
requirements:
|
120
139
|
- - ">="
|
121
140
|
- !ruby/object:Gem::Version
|
122
141
|
version: '0'
|
123
142
|
requirements: []
|
124
|
-
rubygems_version: 3.0.
|
143
|
+
rubygems_version: 3.0.8
|
125
144
|
signing_key:
|
126
145
|
specification_version: 4
|
127
146
|
summary: Simple tmux project config
|