ruote-kit 2.1.4.1 → 2.1.7

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.
Files changed (50) hide show
  1. data/.gitignore +1 -2
  2. data/Gemfile +10 -1
  3. data/README.rdoc +53 -10
  4. data/Rakefile +17 -5
  5. data/config.ru +15 -1
  6. data/lib/ruote-kit/application.rb +10 -5
  7. data/lib/ruote-kit/configuration.rb +34 -3
  8. data/lib/ruote-kit/helpers/engine_helpers.rb +3 -3
  9. data/lib/ruote-kit/helpers/render_helpers.rb +10 -1
  10. data/lib/ruote-kit/resources/processes.rb +10 -4
  11. data/lib/ruote-kit/resources/workitems.rb +6 -4
  12. data/lib/ruote-kit/spec/ruote_helpers.rb +3 -3
  13. data/lib/ruote-kit/version.rb +11 -0
  14. data/lib/ruote-kit/views/expression.html.haml +1 -1
  15. data/lib/ruote-kit/views/expressions.html.haml +1 -1
  16. data/lib/ruote-kit/views/process.html.haml +1 -1
  17. data/lib/ruote-kit/views/process_failed_to_launch.html.haml +7 -0
  18. data/lib/ruote-kit/views/process_launched.html.haml +6 -0
  19. data/lib/ruote-kit.rb +21 -9
  20. data/ruote-kit.gemspec +32 -27
  21. data/spec/helpers/render_helpers_spec.rb +5 -2
  22. data/spec/resources/expressions_spec.rb +8 -4
  23. data/spec/resources/index_spec.rb +4 -2
  24. data/spec/resources/processes_spec.rb +37 -11
  25. data/spec/resources/workitems_spec.rb +12 -5
  26. data/spec/ruote-kit_configure_spec.rb +100 -0
  27. data/spec/spec_helper.rb +15 -9
  28. data/spec/views/expressions.html.haml_spec.rb +31 -0
  29. data/spec/views/launch_process.html.haml_spec.rb +2 -1
  30. data/spec/views/process.html.haml_spec.rb +2 -1
  31. data/spec/views/process_launched.html.haml_spec.rb +16 -0
  32. data/spec/views/processes.html.haml_spec.rb +2 -1
  33. data/spec/views/workitems.html.haml_spec.rb +3 -2
  34. metadata +58 -25
  35. data/lib/ruote-kit/vendor/sinatra-respond_to/LICENSE +0 -21
  36. data/lib/ruote-kit/vendor/sinatra-respond_to/README.markdown +0 -102
  37. data/lib/ruote-kit/vendor/sinatra-respond_to/Rakefile +0 -30
  38. data/lib/ruote-kit/vendor/sinatra-respond_to/VERSION.yml +0 -4
  39. data/lib/ruote-kit/vendor/sinatra-respond_to/lib/sinatra/respond_to.rb +0 -206
  40. data/lib/ruote-kit/vendor/sinatra-respond_to/sinatra-respond_to.gemspec +0 -56
  41. data/lib/ruote-kit/vendor/sinatra-respond_to/spec/app/public/static folder/.keep +0 -0
  42. data/lib/ruote-kit/vendor/sinatra-respond_to/spec/app/public/static.txt +0 -1
  43. data/lib/ruote-kit/vendor/sinatra-respond_to/spec/app/test_app.rb +0 -53
  44. data/lib/ruote-kit/vendor/sinatra-respond_to/spec/app/unreachable_static.txt +0 -1
  45. data/lib/ruote-kit/vendor/sinatra-respond_to/spec/app/views/layout.html.haml +0 -2
  46. data/lib/ruote-kit/vendor/sinatra-respond_to/spec/app/views/resource.html.haml +0 -1
  47. data/lib/ruote-kit/vendor/sinatra-respond_to/spec/app/views/resource.js.erb +0 -3
  48. data/lib/ruote-kit/vendor/sinatra-respond_to/spec/app/views/resource.xml.builder +0 -3
  49. data/lib/ruote-kit/vendor/sinatra-respond_to/spec/extension_spec.rb +0 -403
  50. data/lib/ruote-kit/vendor/sinatra-respond_to/spec/spec_helper.rb +0 -18
data/.gitignore CHANGED
@@ -1,8 +1,7 @@
1
1
  *.swp
2
2
  work*/
3
3
  .DS_Store
4
- bin/*
5
- vendor/gems
6
4
  .yardoc
7
5
  doc/*
8
6
  pkg/*
7
+ .bundle/*
data/Gemfile CHANGED
@@ -1,10 +1,19 @@
1
1
  # Dependencies for ruote-kit
2
+ source :gemcutter
2
3
 
3
4
  # ruote-kit itself
5
+ gem 'bundler'
4
6
  gem 'sinatra'
7
+ gem 'sinatra-respond_to'
5
8
  gem 'haml'
6
9
  gem 'json'
7
10
 
8
11
  # ruote
9
12
  #gem 'ruote', :git => "git://github.com/kennethkalmer/ruote", :branch => "ruote-kit"
10
- gem 'ruote', '>= 2.1.4'
13
+ gem 'ruote', '>= 2.1.6'
14
+
15
+ # Testing environment requirements
16
+ group :test do
17
+ gem 'rspec'
18
+ gem 'jeweler'
19
+ end
data/README.rdoc CHANGED
@@ -1,4 +1,4 @@
1
- = ruote-kit (RESTful BPM & middleware)
1
+ = ruote-kit (RESTful ruote & middleware)
2
2
 
3
3
  * http://kit.rubyforge.org/ruote (soon)
4
4
  * http://kit.rubyforge.org/ruote/rdoc (soon)
@@ -20,8 +20,9 @@ coming weeks (albeit for the better).
20
20
 
21
21
  Dependencies you currently need is:
22
22
 
23
- * bundler (gem install bundler)
23
+ * bundler 0.9.5 or later (gem install bundler)
24
24
  * sinatra
25
+ * sinatra-respond_to
25
26
  * haml
26
27
  * json
27
28
  * rspec (only to run the specs)
@@ -29,10 +30,11 @@ Dependencies you currently need is:
29
30
  ruote-kit uses bundler to setup and maintain its environment. Before running
30
31
  ruote-kit for the first time you need to install bundler and then run:
31
32
 
32
- $ gem bundle
33
+ $ bundle install
33
34
 
34
- Bundler will download all the required gems and unpack them in 'vendor/gems'
35
- for you.
35
+ Bundler will download all the required gems and install them for you. To
36
+ bundle the gems you can simply run 'bundle lock' and all the gems will be
37
+ unpacked in .bundle
36
38
 
37
39
  == Getting started quickly
38
40
 
@@ -52,16 +54,25 @@ Example:
52
54
 
53
55
  RuoteKit.configure do |config|
54
56
  # make changes if needed
57
+ # Register participants if needed
58
+ config.register do
59
+ participant :toto do |wi|
60
+ # ...
61
+ end
62
+ # register the catchall participant if needed
63
+ require 'ruote/part/storage_participant'
64
+ catchall Ruote::StorageParticipant
65
+ end
55
66
  end
56
67
 
57
- # Register participants if needed
58
- RuoteKit.engine.register_participant :toto do |wi|
59
- #
60
- end
61
68
 
62
69
  # Slot into the stack
63
70
  use RuoteKit::Application
64
71
 
72
+ === Notes for Rails
73
+
74
+ See http://github.com/tosch/ruote-on-rails for an example Rails app.
75
+
65
76
  == Configuring ruote-kit & ruote
66
77
 
67
78
  ruote-kit can be configured using RuoteKit#configure, after which it will start
@@ -71,6 +82,38 @@ Without any configuration ruote-kit will use file system persistence, and save
71
82
  the work in a sub-folder of the current working directory named +work_<env>+,
72
83
  where +env+ is the RACK_ENV or RAILS_ENV.
73
84
 
85
+ === Registration of participants
86
+
87
+ ruote participants may be registered within the block given to
88
+ RuoteKit#configure by the RuoteKit::Configuration#register method. It expects a
89
+ block containing of +participant+ and one or less +catchall+ calls (see example
90
+ above).
91
+
92
+ Note that all +participant+ calls after a +catchall+ one are pretty useless:
93
+ The catchall will eat all their cookies.
94
+
95
+ == The +workitems+ resource
96
+
97
+ The +workitems+ resource relies on the Ruote::StorageParticipant. You'll have to
98
+ register at least one Storage Participant if you ever want to see a workitem in
99
+ the resource. Example:
100
+
101
+ require 'ruote/part/storage_participant'
102
+ RuoteKit.engine.register_participant :storage, Ruote::StorageParticipant
103
+
104
+ You may also use the catchall participant provided by RuoteKit. It's named '.+',
105
+ so it will catch all workitems for any participant mentioned in your workflow
106
+ definitions which are not already caught by another (previously) registered
107
+ participant. So make sure to register the catchall after your own participants.
108
+ The catchall participant may be registered by calling
109
+
110
+ catchall
111
+
112
+ within the block given to RuoteKit::Configuration#register (this will use
113
+ Ruote::StorageParticipant as participant implementation, you may use any options
114
+ of Ruote::Engine#register_participant to overwrite that default -- see the
115
+ example above).
116
+
74
117
  == Running workers
75
118
 
76
119
  If you're using ruote-kit as part of your rack stack you'll need to start at
@@ -110,7 +153,7 @@ Please do not hesitate to come back with *any* feedback.
110
153
 
111
154
  (The MIT License)
112
155
 
113
- Copyright (c) 2009 Kenneth Kalmer (Internet Exchange CC, Clear Planet Information Solutions Pty Ltd)
156
+ Copyright (c) 2009-2010 Kenneth Kalmer (Internet Exchange CC, Clear Planet Information Solutions Pty Ltd)
114
157
 
115
158
  Permission is hereby granted, free of charge, to any person obtaining
116
159
  a copy of this software and associated documentation files (the
data/Rakefile CHANGED
@@ -1,9 +1,17 @@
1
- require 'rubygems'
2
- require 'rake'
3
1
 
4
- require 'vendor/gems/environment' if File.exist?('vendor/gems/environment.rb')
2
+ require 'rake/tasklib'
5
3
 
6
- require 'lib/ruote-kit'
4
+ begin
5
+ # Try to require the preresolved locked set of gems.
6
+ require ::File.expand_path('.bundle/environment', __FILE__)
7
+ rescue LoadError
8
+ # Fall back on doing an unlocked resolve at runtime.
9
+ require "rubygems"
10
+ require "bundler"
11
+ Bundler.setup
12
+ end
13
+
14
+ require 'lib/ruote-kit/version'
7
15
 
8
16
  begin
9
17
  require 'jeweler'
@@ -20,11 +28,15 @@ begin
20
28
  gemspec.files.include 'lib/ruote-kit/public/**/*'
21
29
  gemspec.executables.clear
22
30
 
31
+ gemspec.add_dependency 'bundler', '>=0.9.5'
23
32
  gemspec.add_dependency 'sinatra', '>=0.9.4'
33
+ gemspec.add_dependency 'sinatra-respond_to', '>=0.4.0'
24
34
  gemspec.add_dependency 'haml', '>= 2.2.5'
25
35
  gemspec.add_dependency 'json'
26
- gemspec.add_dependency 'ruote', '= 2.1.4'
36
+ gemspec.add_dependency 'ruote', '>= 2.1.7'
37
+ gemspec.add_development_dependency 'rake'
27
38
  gemspec.add_development_dependency 'rspec'
39
+ gemspec.add_development_dependency 'jeweler'
28
40
  end
29
41
  Jeweler::GemcutterTasks.new
30
42
  rescue LoadError
data/config.ru CHANGED
@@ -1,4 +1,12 @@
1
- require 'vendor/gems/environment' if ::File.exist?( 'vendor/gems/environment.rb' )
1
+ begin
2
+ # Try to require the preresolved locked set of gems.
3
+ require ::File.expand_path('.bundle/environment', __FILE__)
4
+ rescue LoadError
5
+ # Fall back on doing an unlocked resolve at runtime.
6
+ require "rubygems"
7
+ require "bundler"
8
+ Bundler.setup
9
+ end
2
10
 
3
11
  $:.unshift 'lib'
4
12
 
@@ -12,8 +20,14 @@ RuoteKit.configure do |config|
12
20
 
13
21
  # run a worker
14
22
  config.run_worker = true
23
+
24
+ register do
25
+ # With this rackup I bundle as catchall, making it easy to experiment
26
+ catchall
27
+ end
15
28
  end
16
29
 
30
+
17
31
  use Rack::CommonLogger
18
32
  use Rack::Lint
19
33
  use Rack::ShowExceptions
@@ -1,15 +1,17 @@
1
- require 'ruote-kit/vendor/sinatra-respond_to/lib/sinatra/respond_to'
1
+ require 'sinatra/respond_to'
2
2
  require 'haml'
3
3
 
4
+ Sinatra::Application.register Sinatra::RespondTo
5
+
4
6
  module RuoteKit
5
- class Application < Sinatra::Base
7
+ class Application < Sinatra::Application
6
8
 
7
9
  # Delay these a bit
8
10
  configure do
9
11
  # We want to support Rails
10
12
  if defined?( Rails )
11
13
  set :environment, Rails.env
12
- disable :raise_errors
14
+ disable :raise_errors unless Rails.env == 'development'
13
15
  end
14
16
 
15
17
  RuoteKit.ensure_engine!
@@ -33,8 +35,11 @@ module RuoteKit
33
35
  format :json if env["HTTP_ACCEPT"] && env["HTTP_ACCEPT"] == "application/json"
34
36
  end
35
37
 
36
- not_found do
37
- resource_not_found
38
+ unless defined?( Rails )
39
+ # Handle 404's ourselves when not in Rails
40
+ not_found do
41
+ resource_not_found
42
+ end
38
43
  end
39
44
 
40
45
  get '/_ruote' do
@@ -2,6 +2,21 @@ module RuoteKit
2
2
  # RuoteKit configuration handling
3
3
  class Configuration
4
4
 
5
+ class ParticipantRegistrationProxy
6
+ def self.participant(*args, &block)
7
+ RuoteKit.engine.register_participant(*args, &block)
8
+ end
9
+
10
+ def self.catchall(*args, &block)
11
+ if(args.empty? and not block_given?)
12
+ require 'ruote/part/storage_participant'
13
+ participant('.+', Ruote::StorageParticipant)
14
+ else
15
+ participant('.+', *args, &block)
16
+ end
17
+ end
18
+ end
19
+
5
20
  # Working directory for the engine (if using file system persistence)
6
21
  attr_accessor :work_directory
7
22
 
@@ -31,8 +46,20 @@ module RuoteKit
31
46
  @mode = mode
32
47
  end
33
48
 
49
+ # Sets a custom storage
50
+ def set_storage( klass, *args )
51
+ @storage = [ klass, args ]
52
+ @mode = :custom
53
+ end
54
+
34
55
  # Return the best suited storage class for the current mode
35
56
  def storage_instance
57
+
58
+ if @storage
59
+ klass, args = @storage
60
+ return klass.new( *args )
61
+ end
62
+
36
63
  case mode
37
64
  when :transient
38
65
  require 'ruote/storage/hash_storage'
@@ -43,10 +70,14 @@ module RuoteKit
43
70
  end
44
71
  end
45
72
 
46
- def catchall_participant
47
- require 'ruote/part/storage_participant'
48
- Ruote::StorageParticipant
73
+ def register &block
74
+ @participant_registration_block = block
75
+ do_participant_registration
49
76
  end
50
77
 
78
+ def do_participant_registration
79
+ return nil unless @participant_registration_block && RuoteKit.engine
80
+ ParticipantRegistrationProxy.instance_eval(&@participant_registration_block)
81
+ end
51
82
  end
52
83
  end
@@ -6,12 +6,12 @@ module RuoteKit
6
6
  RuoteKit.engine
7
7
  end
8
8
 
9
- def store_participant
10
- RuoteKit.engine.context.plist.lookup('.*')
9
+ def storage_participant
10
+ RuoteKit.storage_participant
11
11
  end
12
12
 
13
13
  def find_workitems( wfid )
14
- store_participant.by_wfid( wfid )
14
+ storage_participant.by_wfid( wfid )
15
15
  end
16
16
 
17
17
  def find_workitem( wfid, expid )
@@ -83,7 +83,16 @@ module RuoteKit
83
83
  status 404
84
84
  respond_to do |format|
85
85
  format.html { haml :resource_not_found }
86
- format.json { { "error" => { "code" => "404", "message" => "Resource not found" } }.to_json }
86
+ format.json { { "error" => { "code" => 404, "message" => "Resource not found" } }.to_json }
87
+ end
88
+ end
89
+
90
+ # Easy 503
91
+ def workitems_not_available
92
+ status 503
93
+ respond_to do |format|
94
+ format.html { haml :workitems_not_available }
95
+ format.json { { "error" => { "code" => 503, "messages" => "Workitems not available" } }.to_json }
87
96
  end
88
97
  end
89
98
 
@@ -29,11 +29,17 @@ class RuoteKit::Application
29
29
  post "/_ruote/processes" do
30
30
  launch_item = launch_item_from_post
31
31
 
32
- @wfid = engine.launch( launch_item['pdef'], launch_item['fields'], launch_item['variables'] )
33
-
34
32
  respond_to do |format|
35
- format.html { redirect "/_ruote/processes/#{@wfid}" }
36
- format.json { json( :launched, @wfid ) }
33
+ begin
34
+ @wfid = engine.launch( launch_item['pdef'], launch_item['fields'], launch_item['variables'] )
35
+ rescue ArgumentError => @error
36
+ status 422
37
+ format.html { haml :process_failed_to_launch }
38
+ format.json { { "error" => { "code" => 422, "message" => @error.message } }.to_json }
39
+ else
40
+ format.html { haml :process_launched }
41
+ format.json { json( :launched, @wfid ) }
42
+ end
37
43
  end
38
44
  end
39
45
 
@@ -4,10 +4,10 @@ class RuoteKit::Application
4
4
  if params[:participant]
5
5
  @participants = params[:participant].split(',')
6
6
  @workitems = @participants.inject([]) do |memo, part|
7
- memo.concat store_participant.by_participant( part )
7
+ memo.concat storage_participant.by_participant( part )
8
8
  end
9
9
  else
10
- @workitems = store_participant.all
10
+ @workitems = storage_participant.all
11
11
  end
12
12
 
13
13
  respond_to do |format|
@@ -42,15 +42,17 @@ class RuoteKit::Application
42
42
  put "/_ruote/workitems/:wfid/:expid" do
43
43
  workitem = find_workitem( params[:wfid], params[:expid] )
44
44
 
45
+ (resource_not_found and return) if workitem.nil?
46
+
45
47
  options = field_updates_and_proceed_from_put
46
48
 
47
49
  unless options[:fields].empty?
48
50
  workitem.fields = options[:fields]
49
- store_participant.update( workitem )
51
+ storage_participant.update( workitem )
50
52
  end
51
53
 
52
54
  if options[:proceed]
53
- store_participant.reply( workitem )
55
+ storage_participant.reply( workitem )
54
56
  end
55
57
 
56
58
  respond_to do |format|
@@ -30,12 +30,12 @@ module RuoteKit
30
30
  RuoteKit.engine.context[:noisy] = on
31
31
  end
32
32
 
33
- def store_participant
34
- RuoteKit.engine.context.plist.lookup('.*')
33
+ def storage_participant
34
+ RuoteKit.storage_participant
35
35
  end
36
36
 
37
37
  def find_workitem( wfid, expid )
38
- store_participant.by_wfid( wfid ).detect { |wi| wi.fei.expid == expid }
38
+ storage_participant.by_wfid( wfid ).detect { |wi| wi.fei.expid == expid }
39
39
  end
40
40
 
41
41
  def wait_for( wfid )
@@ -0,0 +1,11 @@
1
+
2
+ # lib/ruote-kit/version.rb
3
+ #
4
+ # so that the Rakefile doesn't have to load all the deps
5
+ # when running "rake gemspec"
6
+
7
+ module RuoteKit
8
+
9
+ VERSION = '2.1.7'
10
+ end
11
+
@@ -17,7 +17,7 @@
17
17
  %span.description DELETE /_ruote/expressions/#{@expression.fei.wfid}/#{@expression.fei.expid}?_kill=1
18
18
 
19
19
  %ul.nolist
20
- %li fei: #{@expression.fei.to_s}
20
+ %li id: #{@expression.fei.expid}
21
21
  %li class: #{@expression.class.name}
22
22
  %li name: #{@expression.respond_to?(:participant_name) ? @expression.participant_name : @expression.name}
23
23
  %li process: #{link_to @process}
@@ -16,7 +16,7 @@
16
16
  %li
17
17
  = link_to_expression expression
18
18
  %ul.nested_details
19
- %li fei: #{expression.fei.to_s}
19
+ %li id: #{expression.fei.expid}
20
20
  %li class: #{expression.class.name}
21
21
  %li name: #{expression.respond_to?(:participant_name) ? expression.participant_name : expression.name}
22
22
 
@@ -27,7 +27,7 @@
27
27
  %ul.nolist
28
28
  %li wfid: #{@process.wfid}
29
29
  %li launch: #{@process.launched_time}
30
- %li paused:
30
+ /%li paused:
31
31
  %li: tags: #{@process.all_tags.keys.join(', ')}
32
32
  %li
33
33
  expressions:
@@ -0,0 +1,7 @@
1
+ %h2 Process failed to launch
2
+
3
+ .flash
4
+ .message.error
5
+ %p
6
+ &= @error.message
7
+ %a{ :href => "javascript:history.go(-1)" } Go back to the previous page
@@ -0,0 +1,6 @@
1
+ %h2 Process launched
2
+
3
+ .flash
4
+ .message
5
+ .notice
6
+ %p Your process has been launched. #{ link_to "GET /_ruote/processes/#{@wfid}", "/_ruote/processes/#{@wfid}" }
data/lib/ruote-kit.rb CHANGED
@@ -1,9 +1,10 @@
1
1
  require 'json'
2
2
  require 'ruote'
3
+ require 'ruote/part/storage_participant'
3
4
 
4
5
  module RuoteKit
5
6
 
6
- VERSION = "2.1.4.1"
7
+ VERSION = '2.1.7'
7
8
 
8
9
  autoload :Configuration, "ruote-kit/configuration"
9
10
  autoload :Application, "ruote-kit/application"
@@ -31,11 +32,11 @@ module RuoteKit
31
32
  def configure( &block )
32
33
  yield configuration
33
34
 
34
- run_engine! if configuration.run_engine
35
+ run_engine!
35
36
  end
36
37
 
37
38
  # Configure and run the engine in a RESTful container
38
- def run!(&block)
39
+ def run!( &block )
39
40
  yield if block_given?
40
41
 
41
42
  run_engine!
@@ -46,14 +47,9 @@ module RuoteKit
46
47
  end
47
48
 
48
49
  def configuration
49
-
50
50
  @configuration ||= Configuration.new
51
51
  end
52
52
 
53
- def configure_participants
54
- self.engine.register_participant('.*', configuration.catchall_participant)
55
- end
56
-
57
53
  # Ensure the engine is running
58
54
  def ensure_engine!
59
55
  run_engine! if self.engine.nil?
@@ -63,10 +59,14 @@ module RuoteKit
63
59
  # it
64
60
  def run_engine!
65
61
 
62
+ return unless configuration.run_engine
63
+
66
64
  storage = configuration.storage_instance
67
65
  self.engine = Ruote::Engine.new( storage )
68
66
 
69
- configure_participants
67
+ configuration.do_participant_registration
68
+
69
+ @storage_participant = nil
70
70
 
71
71
  run_worker!( true ) if configuration.run_worker
72
72
  end
@@ -101,5 +101,17 @@ module RuoteKit
101
101
  self.worker = nil
102
102
  end
103
103
 
104
+ def storage_participant
105
+ return nil if self.engine.nil?
106
+ @storage_participant ||= Ruote::StorageParticipant.new(self.engine)
107
+ end
108
+
109
+ # resets the configuration
110
+ #
111
+ # mainly used in tests
112
+ def reset_configuration!
113
+ @configuration = nil
114
+ end
115
+
104
116
  end
105
117
  end
data/ruote-kit.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{ruote-kit}
8
- s.version = "2.1.4.1"
8
+ s.version = "2.1.7"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["kenneth.kalmer@gmail.com"]
12
- s.date = %q{2010-01-12}
12
+ s.date = %q{2010-03-10}
13
13
  s.description = %q{ruote-kit is a RESTful Rack app for the ruote workflow engine}
14
14
  s.email = %q{kenneth.kalmer@gmail.com}
15
15
  s.extra_rdoc_files = [
@@ -49,28 +49,15 @@ Gem::Specification.new do |s|
49
49
  "lib/ruote-kit/resources/processes.rb",
50
50
  "lib/ruote-kit/resources/workitems.rb",
51
51
  "lib/ruote-kit/spec/ruote_helpers.rb",
52
- "lib/ruote-kit/vendor/sinatra-respond_to/LICENSE",
53
- "lib/ruote-kit/vendor/sinatra-respond_to/README.markdown",
54
- "lib/ruote-kit/vendor/sinatra-respond_to/Rakefile",
55
- "lib/ruote-kit/vendor/sinatra-respond_to/VERSION.yml",
56
- "lib/ruote-kit/vendor/sinatra-respond_to/lib/sinatra/respond_to.rb",
57
- "lib/ruote-kit/vendor/sinatra-respond_to/sinatra-respond_to.gemspec",
58
- "lib/ruote-kit/vendor/sinatra-respond_to/spec/app/public/static folder/.keep",
59
- "lib/ruote-kit/vendor/sinatra-respond_to/spec/app/public/static.txt",
60
- "lib/ruote-kit/vendor/sinatra-respond_to/spec/app/test_app.rb",
61
- "lib/ruote-kit/vendor/sinatra-respond_to/spec/app/unreachable_static.txt",
62
- "lib/ruote-kit/vendor/sinatra-respond_to/spec/app/views/layout.html.haml",
63
- "lib/ruote-kit/vendor/sinatra-respond_to/spec/app/views/resource.html.haml",
64
- "lib/ruote-kit/vendor/sinatra-respond_to/spec/app/views/resource.js.erb",
65
- "lib/ruote-kit/vendor/sinatra-respond_to/spec/app/views/resource.xml.builder",
66
- "lib/ruote-kit/vendor/sinatra-respond_to/spec/extension_spec.rb",
67
- "lib/ruote-kit/vendor/sinatra-respond_to/spec/spec_helper.rb",
52
+ "lib/ruote-kit/version.rb",
68
53
  "lib/ruote-kit/views/expression.html.haml",
69
54
  "lib/ruote-kit/views/expressions.html.haml",
70
55
  "lib/ruote-kit/views/index.html.haml",
71
56
  "lib/ruote-kit/views/launch_process.html.haml",
72
57
  "lib/ruote-kit/views/layout.html.haml",
73
58
  "lib/ruote-kit/views/process.html.haml",
59
+ "lib/ruote-kit/views/process_failed_to_launch.html.haml",
60
+ "lib/ruote-kit/views/process_launched.html.haml",
74
61
  "lib/ruote-kit/views/processes.html.haml",
75
62
  "lib/ruote-kit/views/resource_not_found.html.haml",
76
63
  "lib/ruote-kit/views/workitem.html.haml",
@@ -81,11 +68,14 @@ Gem::Specification.new do |s|
81
68
  "spec/resources/index_spec.rb",
82
69
  "spec/resources/processes_spec.rb",
83
70
  "spec/resources/workitems_spec.rb",
71
+ "spec/ruote-kit_configure_spec.rb",
84
72
  "spec/ruote-kit_spec.rb",
85
73
  "spec/spec.opts",
86
74
  "spec/spec_helper.rb",
75
+ "spec/views/expressions.html.haml_spec.rb",
87
76
  "spec/views/launch_process.html.haml_spec.rb",
88
77
  "spec/views/process.html.haml_spec.rb",
78
+ "spec/views/process_launched.html.haml_spec.rb",
89
79
  "spec/views/processes.html.haml_spec.rb",
90
80
  "spec/views/workitems.html.haml_spec.rb"
91
81
  ]
@@ -95,17 +85,20 @@ Gem::Specification.new do |s|
95
85
  s.rubygems_version = %q{1.3.5}
96
86
  s.summary = %q{ruote workflow engine, wrapped in a loving rack embrace}
97
87
  s.test_files = [
98
- "spec/helpers/render_helpers_spec.rb",
99
- "spec/resources/expressions_spec.rb",
88
+ "spec/resources/expressions_spec.rb",
89
+ "spec/resources/workitems_spec.rb",
100
90
  "spec/resources/index_spec.rb",
101
91
  "spec/resources/processes_spec.rb",
102
- "spec/resources/workitems_spec.rb",
92
+ "spec/ruote-kit_configure_spec.rb",
103
93
  "spec/ruote-kit_spec.rb",
104
- "spec/spec_helper.rb",
94
+ "spec/helpers/render_helpers_spec.rb",
95
+ "spec/views/workitems.html.haml_spec.rb",
96
+ "spec/views/process_launched.html.haml_spec.rb",
105
97
  "spec/views/launch_process.html.haml_spec.rb",
106
- "spec/views/process.html.haml_spec.rb",
98
+ "spec/views/expressions.html.haml_spec.rb",
107
99
  "spec/views/processes.html.haml_spec.rb",
108
- "spec/views/workitems.html.haml_spec.rb"
100
+ "spec/views/process.html.haml_spec.rb",
101
+ "spec/spec_helper.rb"
109
102
  ]
110
103
 
111
104
  if s.respond_to? :specification_version then
@@ -113,24 +106,36 @@ Gem::Specification.new do |s|
113
106
  s.specification_version = 3
114
107
 
115
108
  if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
109
+ s.add_runtime_dependency(%q<bundler>, [">= 0.9.5"])
116
110
  s.add_runtime_dependency(%q<sinatra>, [">= 0.9.4"])
111
+ s.add_runtime_dependency(%q<sinatra-respond_to>, [">= 0.4.0"])
117
112
  s.add_runtime_dependency(%q<haml>, [">= 2.2.5"])
118
113
  s.add_runtime_dependency(%q<json>, [">= 0"])
119
- s.add_runtime_dependency(%q<ruote>, ["= 2.1.4"])
114
+ s.add_runtime_dependency(%q<ruote>, [">= 2.1.7"])
115
+ s.add_development_dependency(%q<rake>, [">= 0"])
120
116
  s.add_development_dependency(%q<rspec>, [">= 0"])
117
+ s.add_development_dependency(%q<jeweler>, [">= 0"])
121
118
  else
119
+ s.add_dependency(%q<bundler>, [">= 0.9.5"])
122
120
  s.add_dependency(%q<sinatra>, [">= 0.9.4"])
121
+ s.add_dependency(%q<sinatra-respond_to>, [">= 0.4.0"])
123
122
  s.add_dependency(%q<haml>, [">= 2.2.5"])
124
123
  s.add_dependency(%q<json>, [">= 0"])
125
- s.add_dependency(%q<ruote>, ["= 2.1.4"])
124
+ s.add_dependency(%q<ruote>, [">= 2.1.7"])
125
+ s.add_dependency(%q<rake>, [">= 0"])
126
126
  s.add_dependency(%q<rspec>, [">= 0"])
127
+ s.add_dependency(%q<jeweler>, [">= 0"])
127
128
  end
128
129
  else
130
+ s.add_dependency(%q<bundler>, [">= 0.9.5"])
129
131
  s.add_dependency(%q<sinatra>, [">= 0.9.4"])
132
+ s.add_dependency(%q<sinatra-respond_to>, [">= 0.4.0"])
130
133
  s.add_dependency(%q<haml>, [">= 2.2.5"])
131
134
  s.add_dependency(%q<json>, [">= 0"])
132
- s.add_dependency(%q<ruote>, ["= 2.1.4"])
135
+ s.add_dependency(%q<ruote>, [">= 2.1.7"])
136
+ s.add_dependency(%q<rake>, [">= 0"])
133
137
  s.add_dependency(%q<rspec>, [">= 0"])
138
+ s.add_dependency(%q<jeweler>, [">= 0"])
134
139
  end
135
140
  end
136
141