muxify 0.1.4 → 0.1.9

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7a6e6f97b36dc14f43538a9f0dccf799fa491bd2bcd93a02f7b91dae66f8658e
4
- data.tar.gz: 1d5c6318d531b81298e1b614afe4bac91e8934f08561cbc7d07f9bc2c342cbc4
3
+ metadata.gz: 364357540e766dbc1377febee98052f4c0cfebce953bbb388d68c3e6fbac79b7
4
+ data.tar.gz: be79765ed65d4f32db46eb83ef68c2e491fb63f07a7d15c78de662119e56fe97
5
5
  SHA512:
6
- metadata.gz: 4391690e58c6dbcb96e0609a28424e091d4567842f4911115a8ca5b6b7026debe0cff2782a08ddc3cd24aaaea444b745c6d81838ebb5a55264d198761510e721
7
- data.tar.gz: ea8fabcfa1c5b8e84c84945e1041fa8ebd5ccb761acbc01884512d1021bf8d2d699fb31109dfb18c66c8664a027ac49e48e3fd490b40b1caf19a3142efbfa27e
6
+ metadata.gz: eb77c3e0ad0d372471cd3291a99079497e2da1c6b35cc52f80e62b00fedac77ada2d7db2cf1ac685752111d6f926dd13f3d1356216874de4c5ccc4097cb3855c
7
+ data.tar.gz: 101b579693df736e9a2f34a121321092f95eb1f5a5ab4b5853ebac6c350bf2fbfa24358ad1776202262bbeb11a9188b073d71c8b97f151a0af2ff1c96aff6f16
data/.rspec CHANGED
@@ -1,2 +1,3 @@
1
- --format documentation
2
1
  --color
2
+ --format documentation
3
+ --require spec_helper
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
@@ -1,5 +1,10 @@
1
- sudo: false
1
+ ---
2
2
  language: ruby
3
3
  rvm:
4
- - 2.4.1
5
- before_install: gem install bundler -v 1.15.1
4
+ - 2.7
5
+ - 3.0
6
+ deploy:
7
+ provider: rubygems
8
+ on:
9
+ branch: main
10
+ edge: true # opt in to dpl v2
data/Gemfile CHANGED
@@ -1,4 +1,6 @@
1
- source "https://rubygems.org"
1
+ # frozen_string_literal: true
2
+
3
+ source 'https://rubygems.org'
2
4
 
3
5
  # Specify your gem's dependencies in muxify.gemspec
4
6
  gemspec
data/README.md CHANGED
@@ -1,24 +1,83 @@
1
1
  # Muxify
2
2
 
3
- Simple tmux project config.
3
+ Sets up consistent tmux development environment for projects.
4
+
5
+ Why?
6
+
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
+
11
+ ## Dependencies
12
+
13
+ - MacOS (may work on Linux)
14
+ - Ruby
15
+ - Tmux (`which tmux || brew install tmux`)
4
16
 
5
17
  ## Installation
6
18
 
7
19
  ```sh
8
- which tmux || brew install tmux
9
- sudo gem install muxify
20
+ $ gem install muxify
10
21
  ```
11
22
 
12
23
  ## Usage
13
24
 
14
25
  ```sh
15
- muxify add /path/to/my_app
16
- mux my_app
26
+ $ muxify -h
27
+
28
+ Commands:
29
+ muxify add # Adds tmuxinator config for current (or supplied) path
30
+ muxify debug # Prints tmuxinator config of current (or supplied) path to stdout
31
+ muxify help [COMMAND] # Describe available commands or one specific command
32
+ muxify stop # Kills tmux session
33
+ ```
34
+
35
+ For example, add a project like so:
36
+
37
+ ```sh
38
+ $ muxify add /path/to/my_app
39
+ $ mux my_app
40
+ ```
41
+
42
+ Depending on its type, this will create the following tmux windows for a project:
43
+
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`)
64
+
65
+ ## Customising projects
66
+
67
+ To add a custom tmux window for a project:
68
+
69
+ 1. Create a file called `~/.muxifyrc`.
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
+
72
+ ```yaml
73
+ my_app:
74
+ windows:
75
+ server: yarn dev
17
76
  ```
18
77
 
19
78
  ## Thanks
20
79
 
21
- * https://github.com/tmuxinator/tmuxinator
80
+ - https://github.com/tmuxinator/tmuxinator
22
81
 
23
82
  ## Contributing
24
83
 
data/Rakefile CHANGED
@@ -1,6 +1,10 @@
1
- require "bundler/gem_tasks"
2
- require "rspec/core/rake_task"
1
+ # frozen_string_literal: true
3
2
 
3
+ require 'bundler/gem_tasks'
4
+ require 'rubocop/rake_task'
5
+ require 'rspec/core/rake_task'
6
+
7
+ RuboCop::RakeTask.new
4
8
  RSpec::Core::RakeTask.new(:spec)
5
9
 
6
- task :default => :spec
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 "bundler/setup"
4
- require "muxify"
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 "irb"
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('../../.git', __FILE__)
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.rb CHANGED
@@ -1,2 +1,4 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'muxify/cli'
2
4
  require 'muxify/version'
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'yaml'
2
4
 
3
5
  module Muxify
@@ -9,9 +11,10 @@ module Muxify
9
11
  new(*args).to_yaml
10
12
  end
11
13
 
12
- def initialize(root, name: nil)
14
+ def initialize(root, name: nil, custom_config_path: CUSTOM_CONFIG_PATH)
13
15
  @root = File.expand_path(root)
14
16
  @name = name || File.basename(@root)
17
+ @custom_config_path = custom_config_path
15
18
  end
16
19
 
17
20
  def to_yaml
@@ -20,7 +23,7 @@ module Muxify
20
23
 
21
24
  private
22
25
 
23
- attr_reader :root, :name
26
+ attr_reader :root, :name, :custom_config_path
24
27
 
25
28
  def config
26
29
  {
@@ -39,7 +42,18 @@ module Muxify
39
42
  end
40
43
 
41
44
  def custom_windows
42
- YAML.load_file(CUSTOM_CONFIG_PATH).dig(name, 'windows') || {}
45
+ return {} unless custom_config.key?('windows')
46
+
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, {})
43
57
  end
44
58
 
45
59
  class Windows
@@ -52,7 +66,6 @@ module Muxify
52
66
  *shell,
53
67
  *editor,
54
68
  *logs,
55
- *foreman,
56
69
  *rails,
57
70
  *elixir_non_phoenix,
58
71
  *phoenix,
@@ -70,11 +83,9 @@ module Muxify
70
83
  end
71
84
 
72
85
  def init_shell
73
- if git?
74
- 'git fetch; git status'
75
- else
76
- 'echo "Not a git repository."'
77
- end
86
+ return 'echo "Not a git repository."' unless git?
87
+
88
+ 'git fetch; git status'
78
89
  end
79
90
 
80
91
  def git?
@@ -86,26 +97,27 @@ module Muxify
86
97
  end
87
98
 
88
99
  def logs
89
- return [] if Dir["#{root}/log/*.log"].empty?
100
+ return [] if logfiles.empty?
101
+
102
+ logfiles.each(&method(:truncate_file))
90
103
  [{'logs' => 'tail -f log/*.log'}]
91
104
  end
92
105
 
93
- def foreman
94
- return [] unless foreman?
95
- [{'foreman' => <<-SH.strip}]
96
- ps aux | grep 'unicorn_rails master' | awk '{print $2}' | xargs kill; foreman start
97
- SH
106
+ def logfiles
107
+ @logfiles ||= Dir["#{root}/log/*.log"]
98
108
  end
99
109
 
100
- def foreman?
101
- # TODO?
110
+ def truncate_file(path)
111
+ File.truncate(path, 0)
102
112
  end
103
113
 
104
114
  def rails
105
115
  return [] unless rails?
116
+
106
117
  [
107
118
  {'db' => 'rails db'},
108
119
  {'console' => 'rails console'},
120
+ {'server' => File.expand_path('../../bin/rails_server_with_puma_dev', __dir__)},
109
121
  ]
110
122
  end
111
123
 
@@ -115,6 +127,7 @@ module Muxify
115
127
 
116
128
  def elixir_non_phoenix
117
129
  return [] unless elixir_non_phoenix?
130
+
118
131
  [
119
132
  {'console' => 'iex -S mix'},
120
133
  {'server' => 'mix'},
@@ -127,6 +140,7 @@ module Muxify
127
140
 
128
141
  def phoenix
129
142
  return [] unless phoenix?
143
+
130
144
  [
131
145
  {'console' => 'iex -S mix phoenix.server'},
132
146
  {'server' => 'mix phoenix.server'},
@@ -139,6 +153,7 @@ module Muxify
139
153
 
140
154
  def nodejs
141
155
  return [] unless nodejs?
156
+
142
157
  [
143
158
  {'console' => 'node'},
144
159
  ]
@@ -150,6 +165,7 @@ module Muxify
150
165
 
151
166
  def django
152
167
  return [] unless django?
168
+
153
169
  [
154
170
  {'db' => 'python manage.py dbshell'},
155
171
  {'console' => 'python manage.py shell'},
@@ -159,7 +175,7 @@ module Muxify
159
175
 
160
176
  def django?
161
177
  python_requirements = File.join(root, 'requirements.txt')
162
- File.exists?(python_requirements) && File.read(python_requirements).include?('django')
178
+ File.exist?(python_requirements) && File.read(python_requirements).include?('django')
163
179
  end
164
180
 
165
181
  def directory?(relative_path)
@@ -167,7 +183,7 @@ module Muxify
167
183
  end
168
184
 
169
185
  def exists?(relative_path)
170
- File.exists?(File.join(root, relative_path))
186
+ File.exist?(File.join(root, relative_path))
171
187
  end
172
188
  end
173
189
  end
data/lib/muxify/cli.rb CHANGED
@@ -1,20 +1,22 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'thor'
2
4
  require 'muxify/builder'
3
5
  require 'muxify/linker'
4
6
 
5
7
  module Muxify
6
8
  class CLI < Thor
7
- desc "add", "Adds tmuxinator config for current (or supplied) path"
9
+ desc 'add', 'Adds tmuxinator config for current (or supplied) path'
8
10
  def add(root = Dir.pwd)
9
- Muxify::Linker.(root: root)
11
+ Muxify::Linker.call(root: root)
10
12
  end
11
13
 
12
- desc "debug", "Prints tmuxinator config of current (or supplied) path to stdout"
14
+ desc 'debug', 'Prints tmuxinator config of current (or supplied) path to stdout'
13
15
  def debug(root = Dir.pwd)
14
- puts Muxify::Builder.(root)
16
+ puts Muxify::Builder.call(root)
15
17
  end
16
18
 
17
- desc "stop", "Kills tmux session"
19
+ desc 'stop', 'Kills tmux session'
18
20
  def stop(name = File.basename(Dir.pwd))
19
21
  Kernel.system("tmux kill-session -t #{name}")
20
22
  end
data/lib/muxify/linker.rb CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'fileutils'
2
4
 
3
5
  module Muxify
@@ -5,8 +7,8 @@ module Muxify
5
7
  TMUXINATOR_CONFIG_PATH = File.expand_path(File.join(ENV.fetch('HOME'), '.tmuxinator')).freeze
6
8
  private_constant :TMUXINATOR_CONFIG_PATH
7
9
 
8
- def self.call(*args)
9
- new(*args).call
10
+ def self.call(**args)
11
+ new(**args).call
10
12
  end
11
13
 
12
14
  def initialize(root:)
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Muxify
2
- VERSION = '0.1.4'
4
+ VERSION = '0.1.9'
3
5
  end
data/muxify.gemspec CHANGED
@@ -1,15 +1,16 @@
1
- # coding: utf-8
2
- lib = File.expand_path('../lib', __FILE__)
1
+ # frozen_string_literal: true
2
+
3
+ lib = File.expand_path('lib', __dir__)
3
4
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
5
  require 'muxify/version'
5
6
 
6
7
  Gem::Specification.new do |spec|
7
8
  spec.name = 'muxify'
8
9
  spec.version = Muxify::VERSION
9
- spec.authors = ["Zubin Henner"]
10
+ spec.authors = ['Zubin Henner']
10
11
  spec.email = ['zubin@users.noreply.github.com']
11
12
 
12
- spec.summary = %q{Simple tmux project config}
13
+ spec.summary = 'Simple tmux project config'
13
14
  spec.homepage = 'https://github.com/zubin/muxify'
14
15
 
15
16
  spec.files = `git ls-files -z`.split("\x0").reject do |f|
@@ -18,11 +19,13 @@ Gem::Specification.new do |spec|
18
19
  spec.bindir = 'bin'
19
20
  spec.executables = ['muxify']
20
21
  spec.require_paths = ['lib']
22
+ spec.required_ruby_version = '>= 2.7.0'
21
23
 
22
24
  spec.add_dependency 'thor'
23
25
  spec.add_dependency 'tmuxinator'
24
26
 
25
- spec.add_development_dependency 'bundler', '~> 1.15'
26
- spec.add_development_dependency 'rake', '~> 10.0'
27
- spec.add_development_dependency 'rspec', '~> 3.0'
27
+ spec.add_development_dependency 'bundler'
28
+ spec.add_development_dependency 'rake'
29
+ spec.add_development_dependency 'rspec'
30
+ spec.add_development_dependency 'rubocop'
28
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
4
+ version: 0.1.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Zubin Henner
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-02-21 00:00:00.000000000 Z
11
+ date: 2021-06-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: thor
@@ -42,44 +42,58 @@ dependencies:
42
42
  name: bundler
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - "~>"
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
- version: '1.15'
47
+ version: '0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - "~>"
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
- version: '1.15'
54
+ version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rake
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - "~>"
59
+ - - ">="
60
60
  - !ruby/object:Gem::Version
61
- version: '10.0'
61
+ version: '0'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - "~>"
66
+ - - ">="
67
67
  - !ruby/object:Gem::Version
68
- version: '10.0'
68
+ version: '0'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: rspec
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - "~>"
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: rubocop
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
74
88
  - !ruby/object:Gem::Version
75
- version: '3.0'
89
+ version: '0'
76
90
  type: :development
77
91
  prerelease: false
78
92
  version_requirements: !ruby/object:Gem::Requirement
79
93
  requirements:
80
- - - "~>"
94
+ - - ">="
81
95
  - !ruby/object:Gem::Version
82
- version: '3.0'
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,15 +133,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
114
133
  requirements:
115
134
  - - ">="
116
135
  - !ruby/object:Gem::Version
117
- version: '0'
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
- rubyforge_project:
125
- rubygems_version: 2.7.3
143
+ rubygems_version: 3.0.8
126
144
  signing_key:
127
145
  specification_version: 4
128
146
  summary: Simple tmux project config