zeus 0.15.15.pre → 0.16.0

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
- SHA1:
3
- metadata.gz: 078593c5a5572592002b4305e2ef07acb53660ab
4
- data.tar.gz: e67d7b55bfa163abeb629233ebf83c6f6589cfe1
2
+ SHA256:
3
+ metadata.gz: b6763099ec0acd75e736c7dac93c0b085096cc62ef64716be3c8503eab4f489e
4
+ data.tar.gz: 54f4f6d0316bcedebecdb02e45e1d4c6a953db52ef63d776c2d6c581e83cada7
5
5
  SHA512:
6
- metadata.gz: 3bdfc81544cc5ead552370bd04a07c44834e10129ac1e1901c9f812db550e9cd649def0aa3913235080e3a85b0f5da7946ed9f2bcf3fd035c7a138f5a637b6ed
7
- data.tar.gz: 07d011fae3e0723970f4a8b85aac08dd1e46ab81a0dbfedca79f8bb8eccdbec698f57d7f405095be0a59449f0b39f16c6401210fbdf54e8bd029f14afc734843
6
+ metadata.gz: 4e0cdbd5348ab0dbb3bbf3154a2b9743266d7001ec4688df0516eb48593d7a0366686f6df6bbe2d945d7b7eb0c604985f62a8d5d96622e513a56806cba6890f5
7
+ data.tar.gz: 98d7c5c3c7f2095238c77ae049a5c94f9bd525cb8e58fb3a2238018a5ac832954a5e32a2b4fa65687feccf8f00b78f1c4ea39592746b7b6646e286014cacf2cd
data/Gemfile.lock CHANGED
@@ -1,44 +1,42 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- zeus (0.15.15.pre)
4
+ zeus (0.16.0)
5
5
  method_source (>= 0.6.7)
6
6
 
7
7
  GEM
8
8
  remote: https://rubygems.org/
9
9
  specs:
10
- coderay (1.1.1)
11
- diff-lcs (1.2.5)
12
- method_source (0.8.2)
13
- pry (0.10.4)
14
- coderay (~> 1.1.0)
15
- method_source (~> 0.8.1)
16
- slop (~> 3.4)
17
- rake (12.0.0)
18
- rspec (3.5.0)
19
- rspec-core (~> 3.5.0)
20
- rspec-expectations (~> 3.5.0)
21
- rspec-mocks (~> 3.5.0)
22
- rspec-core (3.5.4)
23
- rspec-support (~> 3.5.0)
24
- rspec-expectations (3.5.0)
10
+ coderay (1.1.3)
11
+ diff-lcs (1.5.0)
12
+ method_source (1.0.0)
13
+ pry (0.14.2)
14
+ coderay (~> 1.1)
15
+ method_source (~> 1.0)
16
+ rake (13.0.6)
17
+ rspec (3.12.0)
18
+ rspec-core (~> 3.12.0)
19
+ rspec-expectations (~> 3.12.0)
20
+ rspec-mocks (~> 3.12.0)
21
+ rspec-core (3.12.2)
22
+ rspec-support (~> 3.12.0)
23
+ rspec-expectations (3.12.3)
25
24
  diff-lcs (>= 1.2.0, < 2.0)
26
- rspec-support (~> 3.5.0)
27
- rspec-mocks (3.5.0)
25
+ rspec-support (~> 3.12.0)
26
+ rspec-mocks (3.12.5)
28
27
  diff-lcs (>= 1.2.0, < 2.0)
29
- rspec-support (~> 3.5.0)
30
- rspec-support (3.5.0)
31
- slop (3.6.0)
28
+ rspec-support (~> 3.12.0)
29
+ rspec-support (3.12.1)
32
30
 
33
31
  PLATFORMS
34
- ruby
32
+ x86_64-darwin-22
35
33
 
36
34
  DEPENDENCIES
37
- bundler (~> 1.6)
35
+ bundler (~> 2.3)
38
36
  pry (~> 0.10)
39
37
  rake
40
38
  rspec (~> 3.1)
41
39
  zeus!
42
40
 
43
41
  BUNDLED WITH
44
- 1.13.7
42
+ 2.4.12
data/bin/zeus CHANGED
@@ -2,9 +2,10 @@
2
2
  platform = `uname -sm`
3
3
 
4
4
  exe = case platform
5
- when /^Darwin/ ; "zeus-darwin-amd64"
6
- when /^Linux.*64/ ; "zeus-linux-amd64"
7
- when /^Linux.*/ ; "zeus-linux-386"
5
+ when /^Darwin.*arm64/; "zeus-darwin-arm64"
6
+ when /^Darwin/ ; "zeus-darwin-amd64"
7
+ when /^Linux.*64/ ; "zeus-linux-amd64"
8
+ when /^Linux.*/ ; "zeus-linux-386"
8
9
  else
9
10
  puts "Zeus is not supported on your platform."
10
11
  puts "It's not likely to ever be possible on Windows."
Binary file
Binary file
data/build/zeus-linux-386 CHANGED
Binary file
Binary file
@@ -1,5 +1,5 @@
1
1
  {
2
- "command": "ruby -rubygems -r./custom_plan -eZeus.go",
2
+ "command": "ruby -rrubygems -r./custom_plan -eZeus.go",
3
3
 
4
4
  "plan": {
5
5
  "boot": {
data/examples/zeus.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "command": "ruby -rubygems -rzeus/rails -eZeus.go",
2
+ "command": "ruby -rrubygems -rzeus/rails -eZeus.go",
3
3
 
4
4
  "plan": {
5
5
  "boot": {
data/lib/zeus/pry.rb CHANGED
@@ -1,13 +1,12 @@
1
- begin
2
- require "pry"
3
-
1
+ # Only patch Pry if it is loaded by the app.
2
+ if defined?(Pry::Pager)
4
3
  class Pry::Pager
5
4
  def best_available
5
+ # Versions of Pry prior to 0.13 define `Pry::Pager#_pry_`
6
+ # while versions after that define `Pry::Pager#pry_instance`
7
+ pry = defined?(pry_instance) ? pry_instance : _pry_
6
8
  # paging does not work in zeus so disable it
7
- NullPager.new(_pry_.output)
9
+ NullPager.new(pry.output)
8
10
  end
9
11
  end
10
-
11
- rescue LoadError => e
12
- # pry is not available, so no need to patch it
13
12
  end
data/lib/zeus/rails.rb CHANGED
@@ -95,6 +95,7 @@ module Zeus
95
95
 
96
96
  def default_bundle
97
97
  Bundler.require(:default)
98
+ require 'zeus/pry' if defined?(Pry)
98
99
  Zeus::LoadTracking.add_feature('./Gemfile.lock')
99
100
  end
100
101
 
@@ -117,7 +118,7 @@ module Zeus
117
118
  load_rails_generators
118
119
 
119
120
  if rails_5_1_or_higher?
120
- run_rails_5_1_or_higer_command('generate')
121
+ run_rails_5_1_or_higher_command('generate')
121
122
  else
122
123
  require 'rails/commands/generate'
123
124
  end
@@ -127,7 +128,7 @@ module Zeus
127
128
  def destroy
128
129
  load_rails_generators
129
130
  if rails_5_1_or_higher?
130
- run_rails_5_1_or_higer_command('destroy')
131
+ run_rails_5_1_or_higher_command('destroy')
131
132
  else
132
133
  require 'rails/commands/destroy'
133
134
  end
@@ -135,7 +136,7 @@ module Zeus
135
136
 
136
137
  def runner
137
138
  if rails_5_1_or_higher?
138
- run_rails_5_1_or_higer_command('runner')
139
+ run_rails_5_1_or_higher_command('runner')
139
140
  else
140
141
  require 'rails/commands/runner'
141
142
  end
@@ -143,7 +144,7 @@ module Zeus
143
144
 
144
145
  def console
145
146
  if rails_5_1_or_higher?
146
- run_rails_5_1_or_higer_command('console')
147
+ run_rails_5_1_or_higher_command('console')
147
148
  else
148
149
  require 'rails/commands/console'
149
150
  if defined?(Pry)
@@ -163,7 +164,7 @@ module Zeus
163
164
 
164
165
  def dbconsole
165
166
  if rails_5_1_or_higher?
166
- run_rails_5_1_or_higer_command('dbconsole')
167
+ run_rails_5_1_or_higher_command('dbconsole')
167
168
  else
168
169
  require 'rails/commands/dbconsole'
169
170
 
@@ -183,7 +184,7 @@ module Zeus
183
184
 
184
185
  def server
185
186
  if rails_5_1_or_higher?
186
- run_rails_5_1_or_higer_command('server')
187
+ run_rails_5_1_or_higher_command('server')
187
188
  else
188
189
  require 'rails/commands/server'
189
190
  server = ::Rails::Server.new
@@ -296,7 +297,7 @@ module Zeus
296
297
  rescue LoadError # Rails 3.0 doesn't require this block to be run, but 3.2+ does
297
298
  end
298
299
 
299
- def run_rails_5_1_or_higer_command(command)
300
+ def run_rails_5_1_or_higher_command(command)
300
301
  require 'rails/command'
301
302
  ::Rails::Command.invoke(command, ARGV)
302
303
  end
data/lib/zeus/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Zeus
2
- VERSION = "0.15.15.pre"
2
+ VERSION = "0.16.0"
3
3
  end
data/lib/zeus.rb CHANGED
@@ -13,7 +13,6 @@ require 'set'
13
13
  require 'zeus/load_tracking'
14
14
  require 'zeus/plan'
15
15
  require 'zeus/version'
16
- require 'zeus/pry'
17
16
 
18
17
  module Zeus
19
18
  class << self
data/man/build/zeus CHANGED
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "ZEUS" "1" "January 2017" "" ""
4
+ .TH "ZEUS" "1" "October 2023" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBzeus\fR \- boot rails in under a second
data/man/build/zeus-init CHANGED
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "ZEUS\-INIT" "1" "January 2017" "" ""
4
+ .TH "ZEUS\-INIT" "1" "October 2023" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBzeus\-init\fR \- Generate a template zeus\.json
@@ -1,17 +1 @@
1
- ZEUS-INIT(1) ZEUS-INIT(1)
2
1
 
3
-
4
-
5
- NAME
6
- zeus-init - Generate a template zeus.json
7
-
8
- SYNOPSIS
9
- zeus init
10
-
11
- DESCRIPTION
12
- Creates a zeus.json file in the current directory. This example file is
13
- useful for rails applications, but can be modified to suit your needs.
14
-
15
-
16
-
17
- January 2017 ZEUS-INIT(1)
data/man/build/zeus-start CHANGED
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "ZEUS\-START" "1" "January 2017" "" ""
4
+ .TH "ZEUS\-START" "1" "October 2023" "" ""
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBzeus\-start\fR \- Start a zeus server
@@ -1,18 +1 @@
1
- ZEUS-START(1) ZEUS-START(1)
2
1
 
3
-
4
-
5
- NAME
6
- zeus-start - Start a zeus server
7
-
8
- SYNOPSIS
9
- zeus start
10
-
11
- DESCRIPTION
12
- Start a server.
13
-
14
- TODO: Better docs.
15
-
16
-
17
-
18
- January 2017 ZEUS-START(1)
data/man/build/zeus.txt CHANGED
@@ -1,78 +1 @@
1
- ZEUS(1) ZEUS(1)
2
1
 
3
-
4
-
5
- NAME
6
- zeus - boot rails in under a second
7
-
8
- SYNOPSIS
9
- zeus [--no-color] [--log FILE] [--file-change-delay TIME] [--config
10
- PATH] COMMAND [ARGS]
11
-
12
- DESCRIPTION
13
- Zeus makes working with large codebases much less painful.
14
-
15
- To use Zeus with Ruby on Rails 3.0+, Just run zeus start in your
16
- project directory. It will output a list of available commands, includ-
17
- ing tasks to spawn consoles, servers, tests, and rake tasks.
18
-
19
- See https://github.com/burke/zeus/blob/master/docs/ruby/modifying.md
20
- for information on modifying the boot process that Zeus uses by default
21
- and adding custom tasks.
22
-
23
- SLIGHTLY MORE TECHNICAL DESCRIPTION
24
- Zeus is a language-agnostic application checkpointer for non-multi-
25
- threaded applications.
26
-
27
- It is primarily targeted at ruby and other dynamic languages, where
28
- application boot time can be tens of seconds, but it can be made to
29
- work for nearly any language. However, zeus does not work well with
30
- multithreaded applications. It relies heavily on fork(2), which is
31
- largely incompatible with multithreaded systems.
32
-
33
- Currently only ruby is targeted, but support for other languages is
34
- planned.
35
-
36
- Zeus lets you define common tasks, and preloads all of them in the
37
- background. When you ask to run them, zeus transparently connects your
38
- terminal to the already-running process in milliseconds.
39
-
40
- This lets you, for example, run unit tests in dozens of milliseconds,
41
- rather than dozens of seconds.
42
-
43
- Zeus also monitors all files loaded by your application, and restarts
44
- parts of it when dependencies change, to keep everything up-to-date.
45
-
46
- WAY MORE TECHNICAL DESCRIPTION
47
- See https://github.com/burke/zeus/blob/master/docs/overview.md
48
-
49
- OPTIONS
50
- --no-color
51
- Prints all output without color
52
-
53
- --log trace-log-name
54
- Prints process tree state details to the log file specified.
55
-
56
- --file-change-delay delay
57
- Collect all file changes that happen within the specified delay
58
- time and restart processes only after this deadline expires. The
59
- argument must be parseable by time.ParseDuration. The default
60
- delay is 300ms.
61
-
62
- --config path
63
- Read from the given JSON config file. Defaults to zeus.json.
64
-
65
- BUILTIN COMMANDS
66
- zeus start(1) zeus-start.1.html
67
- Start a zeus server in the current directory using zeus.json
68
-
69
- zeus init(1) zeus-init.1.html
70
- Generate a template zeus.json
71
-
72
- zeus commands(1)
73
- List the commands defined by zeus.json
74
-
75
-
76
-
77
-
78
- January 2017 ZEUS(1)
@@ -69,11 +69,7 @@ describe "Zeus::LoadTracking" do
69
69
 
70
70
  context 'loading invalid code' do
71
71
  it 'tracks requires that raise a SyntaxError' do
72
- files = [expand_asset_path('invalid_syntax.rb')]
73
- # SyntaxError does not have a backtrace in 2.3+ (https://bugs.ruby-lang.org/issues/12811)
74
- if Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.3.0')
75
- files << test_filename
76
- end
72
+ files = [test_filename, expand_asset_path('invalid_syntax.rb')]
77
73
 
78
74
  expect_to_load(files, SyntaxError) do
79
75
  require expand_asset_path('invalid_syntax')
data/spec/zeus_spec.rb CHANGED
@@ -40,7 +40,7 @@ describe Zeus do
40
40
  begin
41
41
  Zeus.go
42
42
  rescue Interrupt
43
- return
43
+ next
44
44
  rescue => e
45
45
  STDERR.puts "Zeus terminated with exception: #{e.message}"
46
46
  STDERR.puts e.backtrace.map {|line| " #{line}"}
data/zeus.gemspec CHANGED
@@ -29,5 +29,5 @@ Gem::Specification.new do |gem|
29
29
 
30
30
  gem.add_runtime_dependency "method_source", ">= 0.6.7"
31
31
 
32
- gem.add_development_dependency "bundler", '~> 1.6'
32
+ gem.add_development_dependency "bundler", '~> 2.3'
33
33
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: zeus
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.15.15.pre
4
+ version: 0.16.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Burke Libbey
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-06-14 00:00:00.000000000 Z
11
+ date: 2023-10-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: method_source
@@ -30,14 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '1.6'
33
+ version: '2.3'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '1.6'
40
+ version: '2.3'
41
41
  description: Boot any rails app in under a second
42
42
  email:
43
43
  - burke@libbey.me
@@ -46,7 +46,6 @@ executables:
46
46
  extensions: []
47
47
  extra_rdoc_files: []
48
48
  files:
49
- - ".bundle/config"
50
49
  - Gemfile
51
50
  - Gemfile.lock
52
51
  - MIT-LICENSE
@@ -56,6 +55,7 @@ files:
56
55
  - bin/rspec
57
56
  - bin/zeus
58
57
  - build/zeus-darwin-amd64
58
+ - build/zeus-darwin-arm64
59
59
  - build/zeus-linux-386
60
60
  - build/zeus-linux-amd64
61
61
  - examples/custom_plan/cucumber_plan.rb
@@ -96,7 +96,7 @@ homepage: https://github.com/burke/zeus
96
96
  licenses:
97
97
  - MIT
98
98
  metadata: {}
99
- post_install_message:
99
+ post_install_message:
100
100
  rdoc_options: []
101
101
  require_paths:
102
102
  - lib
@@ -107,13 +107,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
107
107
  version: '0'
108
108
  required_rubygems_version: !ruby/object:Gem::Requirement
109
109
  requirements:
110
- - - ">"
110
+ - - ">="
111
111
  - !ruby/object:Gem::Version
112
- version: 1.3.1
112
+ version: '0'
113
113
  requirements: []
114
- rubyforge_project:
115
- rubygems_version: 2.4.8
116
- signing_key:
114
+ rubygems_version: 3.1.6
115
+ signing_key:
117
116
  specification_version: 4
118
117
  summary: Zeus is an intelligent preloader for ruby applications. It allows normal
119
118
  development tasks to be run in a fraction of a second.
data/.bundle/config DELETED
@@ -1,2 +0,0 @@
1
- ---
2
- BUNDLE_DISABLE_SHARED_GEMS: "true"