zeus 0.15.15.pre → 0.16.0
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 +5 -5
- data/Gemfile.lock +22 -24
- data/bin/zeus +4 -3
- data/build/zeus-darwin-amd64 +0 -0
- data/build/zeus-darwin-arm64 +0 -0
- data/build/zeus-linux-386 +0 -0
- data/build/zeus-linux-amd64 +0 -0
- data/examples/custom_plan/zeus.json +1 -1
- data/examples/zeus.json +1 -1
- data/lib/zeus/pry.rb +6 -7
- data/lib/zeus/rails.rb +8 -7
- data/lib/zeus/version.rb +1 -1
- data/lib/zeus.rb +0 -1
- data/man/build/zeus +1 -1
- data/man/build/zeus-init +1 -1
- data/man/build/zeus-init.txt +0 -16
- data/man/build/zeus-start +1 -1
- data/man/build/zeus-start.txt +0 -17
- data/man/build/zeus.txt +0 -77
- data/spec/load_tracking_spec.rb +1 -5
- data/spec/zeus_spec.rb +1 -1
- data/zeus.gemspec +1 -1
- metadata +11 -12
- data/.bundle/config +0 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: b6763099ec0acd75e736c7dac93c0b085096cc62ef64716be3c8503eab4f489e
|
4
|
+
data.tar.gz: 54f4f6d0316bcedebecdb02e45e1d4c6a953db52ef63d776c2d6c581e83cada7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
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.
|
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.
|
11
|
-
diff-lcs (1.
|
12
|
-
method_source (0.
|
13
|
-
pry (0.
|
14
|
-
coderay (~> 1.1
|
15
|
-
method_source (~> 0
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
rspec-
|
20
|
-
rspec-
|
21
|
-
|
22
|
-
|
23
|
-
|
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.
|
27
|
-
rspec-mocks (3.5
|
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.
|
30
|
-
rspec-support (3.
|
31
|
-
slop (3.6.0)
|
28
|
+
rspec-support (~> 3.12.0)
|
29
|
+
rspec-support (3.12.1)
|
32
30
|
|
33
31
|
PLATFORMS
|
34
|
-
|
32
|
+
x86_64-darwin-22
|
35
33
|
|
36
34
|
DEPENDENCIES
|
37
|
-
bundler (~>
|
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
|
-
|
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
|
6
|
-
when /^
|
7
|
-
when /^Linux
|
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."
|
data/build/zeus-darwin-amd64
CHANGED
Binary file
|
Binary file
|
data/build/zeus-linux-386
CHANGED
Binary file
|
data/build/zeus-linux-amd64
CHANGED
Binary file
|
data/examples/zeus.json
CHANGED
data/lib/zeus/pry.rb
CHANGED
@@ -1,13 +1,12 @@
|
|
1
|
-
|
2
|
-
|
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(
|
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
|
-
|
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
|
-
|
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
|
-
|
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
|
-
|
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
|
-
|
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
|
-
|
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
|
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
data/lib/zeus.rb
CHANGED
data/man/build/zeus
CHANGED
data/man/build/zeus-init
CHANGED
data/man/build/zeus-init.txt
CHANGED
@@ -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
data/man/build/zeus-start.txt
CHANGED
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)
|
data/spec/load_tracking_spec.rb
CHANGED
@@ -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
data/zeus.gemspec
CHANGED
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.
|
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:
|
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: '
|
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: '
|
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:
|
112
|
+
version: '0'
|
113
113
|
requirements: []
|
114
|
-
|
115
|
-
|
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