rbbt-util 5.14.23 → 5.14.24

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: a0c675bc2b0d013d5b99b303140dc40e1801de71
4
- data.tar.gz: 959d1aa1394cdf4c7089536061db389accffda4c
3
+ metadata.gz: dfd34ace1726633f7431a3929e2c035a192ee874
4
+ data.tar.gz: b2d9f37f496e89c256ce74b5e4b2d543f473dd1d
5
5
  SHA512:
6
- metadata.gz: 1cf549ff51e45c8d71d4f5ae579b291f907c87f5b16a33c738f6873b8588cf2095246d39108ce66b3ddb7f17d3d4c97c555ddfa2391b1a2a13dfea202ab30316
7
- data.tar.gz: f34c95d23afa3ec14524e2698a519086302b72b247b4a9db7ceef896e950f4c9301dddcde750fcd24e3d1aec19d30d43565fcfd3c5646623a4362d9154d395ff
6
+ metadata.gz: b59fcb177f41b692077052ce358c40bedcbb47fd205ab4d6aea4abe498f4eea895e823159aefbc73e28ab652099b73bf15d11a91e0169b8122887ce93caba070
7
+ data.tar.gz: cdad69d36ef4306145ff97f8785dd5716ff2fd19a17d48c0dd18f30f7ce7d9b456fe71bff37741d17ce0289d452adab61986e802c51e797c6de520899404312e
data/etc/app.d/base.rb CHANGED
@@ -1,13 +1,5 @@
1
1
  #{{{ MODULES AND HELPERS
2
2
 
3
- register Sinatra::RbbtRESTWorkflow
4
-
5
- Rbbt.etc.workflows.find.read.split("\n").each do |workflow|
6
- next if workflow.empty?
7
- Workflow.require_workflow workflow
8
- add_workflow Kernel.const_get(workflow), true
9
- end if Rbbt.etc.workflows.find.exists?
10
-
11
3
  register Sinatra::RbbtRESTMain
12
4
  register Sinatra::RbbtRESTEntity
13
5
  register Sinatra::RbbtRESTFileServer # Remove to prevent serving files
@@ -21,7 +13,6 @@ use Rack::Session::Cookie, :key => 'rack.session',
21
13
  :expire_after => 2592000,
22
14
  :secret => "#{self.to_s} secret!!"
23
15
 
24
-
25
16
  #{{{ DIRECTORIES
26
17
  global_var = Rbbt.var.sinatra
27
18
  local_var = Rbbt.var.sinatra.app[$class_name]
@@ -35,9 +26,3 @@ set :favourites_dir , local_var.favourites
35
26
  set :favourite_lists_dir , local_var.favourite_lists
36
27
  set :favourite_maps_dir , local_var.favourite_maps
37
28
 
38
- #set :finder, nil
39
-
40
- #{{{ WORKFLOWS
41
-
42
-
43
-
@@ -0,0 +1,5 @@
1
+ require 'zurb-foundation'
2
+
3
+ #RbbtRESTHelpers.add_sass_load_path "#{Gem.loaded_specs['zurb-foundation'].full_gem_path}/scss/"
4
+ #RbbtRESTHelpers.javascript_resources << Path.setup("#{Gem.loaded_specs['zurb-foundation'].full_gem_path}/js/foundation")
5
+ #RbbtRESTHelpers.javascript_resources << Path.setup("#{Gem.loaded_specs['zurb-foundation'].full_gem_path}/js/vendor")
@@ -0,0 +1 @@
1
+ require 'zen-grids'
data/etc/app.d/init.rb CHANGED
@@ -1,5 +1,3 @@
1
- require 'zurb-foundation'
2
- require 'modular-scale'
3
1
 
4
2
  require 'rbbt'
5
3
  require 'rbbt/rest/main'
@@ -1,9 +1,13 @@
1
- EntityRESTHelpers.entity_resources.unshift Rbbt.www.views.find
2
- RbbtRESTHelpers.template_resources.unshift Rbbt.www.views.find
3
- RbbtRESTHelpers.add_sass_load_path "#{Gem.loaded_specs['compass'].full_gem_path}/frameworks/compass/stylesheets"
4
- RbbtRESTHelpers.add_sass_load_path "#{Gem.loaded_specs['zurb-foundation'].full_gem_path}/scss/"
5
- RbbtRESTHelpers.add_sass_load_path "#{Gem.loaded_specs['modular-scale'].full_gem_path}/stylesheets/"
6
- RbbtRESTHelpers.javascript_resources << Path.setup("#{Gem.loaded_specs['zurb-foundation'].full_gem_path}/js/foundation")
7
- RbbtRESTHelpers.javascript_resources << Path.setup("#{Gem.loaded_specs['zurb-foundation'].full_gem_path}/js/vendor")
8
1
 
2
+ EntityRESTHelpers.entity_resources.unshift Rbbt.www.views.find if Rbbt.www.views.exists?
3
+ RbbtRESTHelpers.template_resources.unshift Rbbt.www.views.find if Rbbt.www.views.exists?
4
+
5
+ #load Rbbt.etc['app.d']['foundation.rb'].find if Rbbt.etc['app.d']['foundation.rb'].exists?
6
+ load Rbbt.etc['app.d']['grid_system.rb'].find if Rbbt.etc['app.d']['grid_system.rb'].exists?
7
+
8
+ Compass::Frameworks::ALL.each do |importer|
9
+ next unless importer.respond_to? :path
10
+ path = importer.stylesheets_directory
11
+ RbbtRESTHelpers.add_sass_load_path path
12
+ end
9
13
 
@@ -0,0 +1,7 @@
1
+ register Sinatra::RbbtRESTWorkflow
2
+
3
+ Rbbt.etc.workflows.find.read.split("\n").each do |workflow|
4
+ next if workflow.empty?
5
+ Workflow.require_workflow workflow
6
+ add_workflow Kernel.const_get(workflow), true
7
+ end if Rbbt.etc.workflows.find.exists?
@@ -192,7 +192,7 @@ class KnowledgeBase
192
192
  file, registered_options = registry[name]
193
193
 
194
194
  options = Misc.add_defaults options, :persist_file => persist_file, :namespace => namespace, :format => format
195
- options = Misc.add_defaults options, registered_options
195
+ options = Misc.add_defaults options, registered_options if registered_options and registered_options.any?
196
196
 
197
197
  persist_options = Misc.pull_keys options, :persist
198
198
 
@@ -26,7 +26,18 @@ module Misc
26
26
  def self.sd(list)
27
27
  return nil if list.length < 3
28
28
  mean = mean(list)
29
- Math.sqrt(list.compact.inject(0.0){|acc,e| d = e - mean; acc += d * d}) / (list.compact.length - 1)
29
+ list = list.compact
30
+ list_length = list.length
31
+
32
+ total_square_distance = 0
33
+ list.each do |value|
34
+ distance = value - mean
35
+ total_square_distance += distance * distance
36
+ end
37
+
38
+ variance = total_square_distance / (list_length - 1)
39
+ Math.sqrt(variance)
40
+ #Math.sqrt(list.compact.inject(0.0){|acc,e| d = e - mean; acc += d * d; acc}) / (list.compact.length - 1)
30
41
  end
31
42
 
32
43
  def self.counts(array)
@@ -461,6 +461,12 @@ module Workflow
461
461
  [taskname].concat(rec_dependencies(taskname)).inject([]){|acc, tn| acc.concat(task_from_dep(tn).inputs) }.uniq
462
462
  end
463
463
 
464
+ def rec_inputs(taskname)
465
+ task = task_from_dep(taskname)
466
+ dep_inputs = task.dep_inputs rec_dependencies(taskname), self
467
+ task.inputs + dep_inputs.values.flatten
468
+ end
469
+
464
470
  def rec_input_defaults(taskname)
465
471
  [taskname].concat(rec_dependencies(taskname)).inject(IndiferentHash.setup({})){|acc, tn|
466
472
  new = (Array === tn ? tn.first.tasks[tn[1].to_sym] : tasks[tn.to_sym]).input_defaults
@@ -70,4 +70,26 @@ module Task
70
70
  exec_in *args
71
71
  end
72
72
  end
73
+
74
+ def self.dep_inputs(deps, workflow = nil)
75
+ seen = []
76
+ task_inputs = {}
77
+ deps.each do |dep|
78
+ wf, task = (Array === dep ? [dep.first, dep.first.tasks[dep[1].to_sym]] : [workflow, workflow.tasks[dep.to_sym]])
79
+ maps = (Array === dep and Hash === dep.last) ? dep.last.keys : []
80
+ next if seen.include? [wf, task.name]
81
+ seen << [wf, task.name]
82
+ new_inputs = task.inputs - maps
83
+ next unless new_inputs.any?
84
+ task_inputs[task] = new_inputs
85
+ end
86
+ task_inputs
87
+ end
88
+
89
+ def dep_inputs(deps, workflow = nil)
90
+ task_inputs = Task.dep_inputs deps, workflow
91
+ task_inputs.each do |task, inputs|
92
+ inputs.replace (inputs - self.inputs)
93
+ end
94
+ end
73
95
  end
@@ -28,13 +28,8 @@ module Task
28
28
  puts Log.color(:magenta, "Inputs from dependencies:")
29
29
  puts
30
30
  seen = []
31
- deps.each do |dep|
32
- task = Array === dep ? dep.first.tasks[dep[1].to_sym] : workflow.tasks[dep.to_sym]
33
- maps = (Array === dep and Hash === dep.last) ? dep.last.keys : []
34
- next if seen.include? task.name
35
- seen << task.name
36
- new_inputs = (task.inputs - self.inputs - maps)
37
- next unless new_inputs.any?
31
+ task_inputs = dep_inputs deps, workflow
32
+ task_inputs.each do |task,new_inputs|
38
33
  puts " #{Log.color :yellow, task.name.to_s}:"
39
34
  puts
40
35
  puts SOPT.input_doc(new_inputs, task.input_types, task.input_descriptions, task.input_defaults, true)
data/share/config.ru CHANGED
@@ -3,14 +3,18 @@ require 'rbbt/resource'
3
3
  $LOAD_PATH.unshift('lib') unless $LOAD_PATH.include?('lib')
4
4
 
5
5
  def load_file(file)
6
- if file.exists?
6
+ if Array === file
7
+ file.each{|f| load_file f }
8
+ elsif file.exists?
7
9
  Log.info("Loading: " << file)
8
10
  load file
9
11
  end
10
12
  end
11
13
 
12
14
  def app_eval(app, file)
13
- if file.exists?
15
+ if Array === file
16
+ file.each{|f| app_eval app, f }
17
+ elsif file.exists?
14
18
  app.class_eval do
15
19
  Log.info("Loading: " << file)
16
20
  eval file.read, nil, file
@@ -27,6 +31,9 @@ $app = app = eval "class #{class_name} < Sinatra::Base; self end"
27
31
  #{{{ PRE
28
32
  load_file Rbbt.etc['app.d/pre.rb'].find
29
33
 
34
+ #{{{ WORKFLOWS
35
+ app_eval app, Rbbt.etc['app.d/workflows.rb'].find_all
36
+
30
37
  #{{{ BASE
31
38
  app_eval app, Rbbt.etc['app.d/base.rb'].find
32
39
 
@@ -37,16 +44,16 @@ load_file Rbbt.etc['app.d/resources.rb'].find
37
44
  load_file Rbbt.etc['app.d/entities.rb'].find
38
45
 
39
46
  #{{{ ROUTES
40
- app_eval app, Rbbt.etc['app.d/routes.rb'].find
47
+ app_eval app, Rbbt.etc['app.d/routes.rb'].find_all
41
48
 
42
49
  #{{{ FINDER
43
50
  app_eval app, Rbbt.etc['app.d/finder.rb'].find
44
51
 
45
52
  #{{{ POST
46
- load_file Rbbt.etc['app.d/post.rb'].find
53
+ load_file Rbbt.etc['app.d/post.rb'].find_all
47
54
 
48
55
  #{{{ PRELOAD
49
- load_file Rbbt.etc['app.d/preload.rb'].find
56
+ load_file Rbbt.etc['app.d/preload.rb'].find_all
50
57
 
51
58
  #{{{ RUN
52
59
  $title = class_name
@@ -18,7 +18,7 @@ Misc.in_dir(app_dir) do
18
18
  ENV["RBBT_FINDER"] = "true" if options.include?(:finder)
19
19
  ENV["RACK_ENV"] = options[:environment] if options.include?(:environment)
20
20
 
21
- config_ru_file = File.exists?('config.ru') ? 'config.ru' : Rbbt.share['config.ru'].find
21
+ config_ru_file = File.exists?('./config.ru') ? './config.ru' : Rbbt.share['config.ru'].find
22
22
 
23
23
  if server == 'unicorn'
24
24
  `unicorn -c #{ Rbbt.share['unicorn.rb'].find } '#{config_ru_file}' -p #{options[:port] || "2887"}`
@@ -17,50 +17,22 @@ options = SOPT.get "-e--environment*:-p--port*:-s--server*:-b--bind*:-e--environ
17
17
 
18
18
  workflow = ARGV.first
19
19
 
20
- YAML::ENGINE.yamler = 'syck' if defined? YAML::ENGINE and YAML::ENGINE.respond_to? :yamler
21
-
22
20
  wf = Workflow.require_workflow workflow
23
21
 
24
- class WorkflowRest < Sinatra::Base
25
- self
26
- end.get '/' do
27
- redirect to(File.join('/', wf.to_s))
28
- end
29
-
30
- ENV["RACK_ENV"] = options[:environment] if options.include?(:environment)
22
+ $title = wf.to_s
31
23
 
32
- class WorkflowRest < Sinatra::Base
33
-
34
- #{{{ MODULES AND HELPERS
35
- register Sinatra::RbbtRESTMain
36
- register Sinatra::RbbtRESTWorkflow
37
- register Sinatra::RbbtRESTEntity
38
- register Sinatra::RbbtRESTKnowledgeBase
39
- helpers Sinatra::RbbtMiscHelpers
24
+ load Rbbt.etc['app.d/init.rb'].find
40
25
 
41
- #{{{ DIRECTORIES
42
- local_var = Rbbt.var.find(:user)
43
- set :cache_dir , local_var.sinatra.cache.find
44
- set :file_dir , local_var.sinatra.files.find
45
- set :favourites_dir , local_var.sinatra.favourites.find
46
- set :favourite_lists_dir , local_var.sinatra.favourite_lists
26
+ app = class WorkflowRest < Sinatra::Base; self end
47
27
 
48
- #{{{ SESSIONS
49
- use Rack::Session::Cookie, :key => 'rack.session',
50
- :path => '/',
51
- :expire_after => 2592000,
52
- :secret => "Workflow #{Workflow.workflows.inspect} secret!!"
53
-
54
- #{{{ FOUNDATION RESOURCES
55
- add_sass_load_path "#{Gem.loaded_specs['compass'].full_gem_path}/frameworks/compass/stylesheets"
56
- add_sass_load_path "#{Gem.loaded_specs['zurb-foundation'].full_gem_path}/scss/"
57
- add_sass_load_path "#{Gem.loaded_specs['modular-scale'].full_gem_path}/stylesheets/"
58
- RbbtRESTHelpers.javascript_resources << Path.setup("#{Gem.loaded_specs['zurb-foundation'].full_gem_path}/js/foundation")
59
- RbbtRESTHelpers.javascript_resources << Path.setup("#{Gem.loaded_specs['zurb-foundation'].full_gem_path}/js/vendor")
60
-
61
- $title = "Workflow Scout"
62
- use Rack::Deflater
28
+ app.register Sinatra::RbbtRESTWorkflow
29
+ app.get '/' do
30
+ redirect to(File.join('/', wf.to_s))
63
31
  end
32
+ app.instance_eval Rbbt.etc['app.d/base.rb'].read
33
+ app.use Rack::Deflater
34
+
35
+ load Rbbt.etc['app.d/resources.rb'].find
64
36
 
65
37
  WorkflowRest.add_workflow wf, true
66
38
 
@@ -382,10 +382,6 @@ eum fugiat quo voluptas nulla pariatur?"
382
382
  assert_equal [[:a,1,"A"], [:b,2,"B"]], current
383
383
  end
384
384
 
385
- def __test_sd
386
- assert_equal Math.sqrt(2), Misc.sd([1,3])
387
- end
388
-
389
385
  def test_divide
390
386
  assert_equal 2, Misc.divide(%w(1 2 3 4 5 6 7 8 9),2).length
391
387
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rbbt-util
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.14.23
4
+ version: 5.14.24
5
5
  platform: ruby
6
6
  authors:
7
7
  - Miguel Vazquez
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-09-02 00:00:00.000000000 Z
11
+ date: 2014-09-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -131,8 +131,11 @@ files:
131
131
  - etc/app.d/base.rb
132
132
  - etc/app.d/entities.rb
133
133
  - etc/app.d/finder.rb
134
+ - etc/app.d/foundation.rb
135
+ - etc/app.d/grid_system.rb
134
136
  - etc/app.d/init.rb
135
137
  - etc/app.d/resources.rb
138
+ - etc/app.d/workflows.rb
136
139
  - lib/rbbt-util.rb
137
140
  - lib/rbbt.rb
138
141
  - lib/rbbt/annotations.rb