alki-console 0.6.0 → 0.7.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
2
  SHA1:
3
- metadata.gz: 2b03ea6e833c0590a8322188ca7290ca96357db6
4
- data.tar.gz: e750686eedf19dc4445d9338891730845748782f
3
+ metadata.gz: 0d9eabe5119553aecf3850b96338916969e246f3
4
+ data.tar.gz: c687692abdfd509d8a30f9739f25bef487d7d6fb
5
5
  SHA512:
6
- metadata.gz: a098c4be370693d856816fad6b33d489ca8d6a25868c9cb04640618992e70759210680c12a820bac55be504a902ff20a15a156294100537a1063f0dc65715af9
7
- data.tar.gz: e0597cf5c40e3f491368c524c71eb730f4818809830d146875f30886807c81f9e4474295c317c2de440bd8ccc3c6f3a053cc74e0533ff7119c70459e0f733266
6
+ metadata.gz: b03fb366ad6ef826f975f33005395c10289f13a3aefa8569c4756db5f1b06befeb93fdef95e83951c37d43e067217d65b6b26841ff6c2c4229d3cddc10951e7c
7
+ data.tar.gz: c1d0c4116c86d85a7c372857c769f58b213d676552f966d9f856c0b17a707e687b7fd1bc6f1430aa6332fde25991d768c6dc80deb55dff35fae02fbec15fe61f
data/README.adoc ADDED
@@ -0,0 +1,72 @@
1
+ = Alki::Console
2
+
3
+ Provides a console to work with https://github.com/alki-project/alki[Alki] assemblies.
4
+ Built on https://github.com/pry/pry[Pry].
5
+
6
+ == Installation
7
+
8
+ Add this line to your application's Gemfile:
9
+
10
+ [source,ruby]
11
+ ----
12
+ gem 'alki-console'
13
+ ----
14
+
15
+ And then execute:
16
+
17
+ [source]
18
+ ----
19
+ $ bundle --binstubs
20
+ ----
21
+
22
+ == Running
23
+
24
+ In an Alki project, run `bin/alki-console`. Once run a prompt will be displayed
25
+ and assembly elements will be directly accessible.
26
+
27
+ .config/assembly.rb
28
+ ```ruby
29
+ Alki do
30
+ group :settings do
31
+ set :message, 'Hello World'
32
+ end
33
+ end
34
+ ```
35
+
36
+ ```
37
+ $ bin/alki-console
38
+ my-app> settings.message
39
+ => 'Hello World'
40
+ my-app>
41
+ ```
42
+
43
+ == Mounting in Assembly
44
+
45
+ Alki::Console can be mounted into an Alki Assembly.
46
+ By default it will use the name of the parent assembly
47
+ (or "app" if it doesn't have a name) as the prompt,
48
+ and the parent assembly as the context.
49
+
50
+ .test.rb
51
+ ```ruby
52
+ require 'alki'
53
+
54
+ assembly = Alki.create_assembly do
55
+ mount :console, 'alki/console'
56
+
57
+ service :http_client do
58
+ require 'net/http'
59
+ Net::HTTP
60
+ end
61
+ end
62
+
63
+ assembly.new.console.run
64
+ ```
65
+
66
+ ```
67
+ $ ruby test.rb
68
+ app> http_client.get URI('http://httpbin.org/uuid')
69
+ => "{\n \"uuid\": \"0b6f27a1-bb98-46f5-970d-f5b4fe94f5a7\"\n}\n"
70
+ ```
71
+
72
+
data/alki-console.gemspec CHANGED
@@ -18,8 +18,6 @@ Gem::Specification.new do |spec|
18
18
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
19
  spec.require_paths = ["lib"]
20
20
 
21
- spec.add_development_dependency "bundler", "~> 1.6"
22
- spec.add_development_dependency "rake", '~> 10.0'
23
- spec.add_dependency "alki", "~> 0.12.1"
24
- spec.add_dependency "pry", "~> 0.10"
21
+ spec.add_dependency "alki", "~> 0.13.0"
22
+ spec.add_dependency "pry", "~> 0.11"
25
23
  end
data/config/assembly.rb CHANGED
@@ -1,16 +1,19 @@
1
1
  Alki do
2
- set :name, 'app'
2
+ set :prompt do
3
+ assembly_name&.gsub('/','-') || 'app'
4
+ end
5
+
3
6
  func :run do
4
7
  console.start
5
8
  end
6
9
 
7
- set :root_group do
10
+ set :context do
8
11
  parent
9
12
  end
10
13
 
11
14
  tag :main_loop
12
15
  service :console do
13
16
  require 'alki/console/pry_console'
14
- Alki::Console::PryConsole.new name, root_group
17
+ Alki::Console::PryConsole.new prompt, context
15
18
  end
16
19
  end
@@ -3,9 +3,9 @@ require 'pry'
3
3
  module Alki
4
4
  module Console
5
5
  class PryConsole
6
- def initialize(name, root)
6
+ def initialize(name, context)
7
7
  @name = name
8
- @context = root
8
+ @context = context
9
9
  end
10
10
 
11
11
  def start
@@ -1,5 +1,5 @@
1
1
  module Alki
2
2
  module Console
3
- VERSION = '0.6.0'
3
+ VERSION = '0.7.0'
4
4
  end
5
5
  end
@@ -19,11 +19,13 @@ module Alki
19
19
  end
20
20
 
21
21
  def self.wrap(dir=Dir.pwd,assembly_name=find_assembly(dir))
22
+ lib_dir = File.join(dir,'lib')
23
+ $LOAD_PATH << lib_dir unless $LOAD_PATH.include? lib_dir
22
24
  assembly = Alki.load(assembly_name)
23
25
  assembly.new do
24
26
  mount :_console, 'alki/console' do
25
- set :name, assembly_name.gsub('/','-')
26
- set :root_group do
27
+ set :prompt, assembly_name.gsub('/','-')
28
+ set :context do
27
29
  root
28
30
  end
29
31
  end
metadata CHANGED
@@ -1,71 +1,43 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: alki-console
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.0
4
+ version: 0.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matt Edlefsen
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-08-31 00:00:00.000000000 Z
11
+ date: 2017-11-11 00:00:00.000000000 Z
12
12
  dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: bundler
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - "~>"
18
- - !ruby/object:Gem::Version
19
- version: '1.6'
20
- type: :development
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - "~>"
25
- - !ruby/object:Gem::Version
26
- version: '1.6'
27
- - !ruby/object:Gem::Dependency
28
- name: rake
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - "~>"
32
- - !ruby/object:Gem::Version
33
- version: '10.0'
34
- type: :development
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - "~>"
39
- - !ruby/object:Gem::Version
40
- version: '10.0'
41
13
  - !ruby/object:Gem::Dependency
42
14
  name: alki
43
15
  requirement: !ruby/object:Gem::Requirement
44
16
  requirements:
45
17
  - - "~>"
46
18
  - !ruby/object:Gem::Version
47
- version: 0.12.1
19
+ version: 0.13.0
48
20
  type: :runtime
49
21
  prerelease: false
50
22
  version_requirements: !ruby/object:Gem::Requirement
51
23
  requirements:
52
24
  - - "~>"
53
25
  - !ruby/object:Gem::Version
54
- version: 0.12.1
26
+ version: 0.13.0
55
27
  - !ruby/object:Gem::Dependency
56
28
  name: pry
57
29
  requirement: !ruby/object:Gem::Requirement
58
30
  requirements:
59
31
  - - "~>"
60
32
  - !ruby/object:Gem::Version
61
- version: '0.10'
33
+ version: '0.11'
62
34
  type: :runtime
63
35
  prerelease: false
64
36
  version_requirements: !ruby/object:Gem::Requirement
65
37
  requirements:
66
38
  - - "~>"
67
39
  - !ruby/object:Gem::Version
68
- version: '0.10'
40
+ version: '0.11'
69
41
  description:
70
42
  email:
71
43
  - matt.edlefsen@gmail.com
@@ -76,6 +48,7 @@ extra_rdoc_files: []
76
48
  files:
77
49
  - ".gitignore"
78
50
  - Gemfile
51
+ - README.adoc
79
52
  - Rakefile
80
53
  - alki-console.gemspec
81
54
  - config/assembly.rb
@@ -104,7 +77,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
104
77
  version: '0'
105
78
  requirements: []
106
79
  rubyforge_project:
107
- rubygems_version: 2.5.2
80
+ rubygems_version: 2.6.12
108
81
  signing_key:
109
82
  specification_version: 4
110
83
  summary: Developer console for Alki applications