roby 0.8.0 → 3.0.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.
Files changed (644) hide show
  1. checksums.yaml +7 -0
  2. data/.deep-cover.rb +3 -0
  3. data/.gitattributes +1 -0
  4. data/.gitignore +24 -0
  5. data/.simplecov +10 -0
  6. data/.travis.yml +17 -0
  7. data/.yardopts +4 -0
  8. data/Gemfile +15 -0
  9. data/README.md +11 -0
  10. data/Rakefile +47 -177
  11. data/benchmark/{alloc_misc.rb → attic/alloc_misc.rb} +2 -2
  12. data/benchmark/{discovery_latency.rb → attic/discovery_latency.rb} +19 -19
  13. data/benchmark/{garbage_collection.rb → attic/garbage_collection.rb} +9 -9
  14. data/benchmark/{genom.rb → attic/genom.rb} +0 -0
  15. data/benchmark/attic/transactions.rb +62 -0
  16. data/benchmark/plan_basic_operations.rb +28 -0
  17. data/benchmark/relations/graph.rb +63 -0
  18. data/benchmark/ruby/identity.rb +18 -0
  19. data/benchmark/ruby/set_intersect_vs_hash_merge.rb +39 -0
  20. data/benchmark/ruby/yield_vs_block.rb +35 -0
  21. data/benchmark/run +5 -0
  22. data/benchmark/synthetic_plan_modifications_with_transactions.rb +79 -0
  23. data/benchmark/transactions.rb +99 -51
  24. data/bin/roby +38 -197
  25. data/bin/roby-display +14 -0
  26. data/bin/roby-log +3 -176
  27. data/doc/guide/{src → attic}/abstraction/achieve_with.page +1 -1
  28. data/doc/guide/{src → attic}/abstraction/forwarding.page +1 -1
  29. data/doc/guide/{src → attic}/abstraction/hierarchy.page +1 -1
  30. data/doc/guide/{src → attic}/abstraction/index.page +1 -1
  31. data/doc/guide/{src → attic}/abstraction/task_models.page +1 -1
  32. data/doc/guide/{overview.rdoc → attic/cycle/api_overview.rdoc} +6 -1
  33. data/doc/guide/{src → attic}/cycle/cycle-overview.png +0 -0
  34. data/doc/guide/{src → attic}/cycle/cycle-overview.svg +0 -0
  35. data/doc/guide/attic/cycle/error_handling.page +98 -0
  36. data/doc/guide/{src → attic}/cycle/error_instantaneous_repair.png +0 -0
  37. data/doc/guide/{src → attic}/cycle/error_instantaneous_repair.svg +0 -0
  38. data/doc/guide/{src/cycle/error_handling.page → attic/cycle/error_sources.page} +46 -89
  39. data/doc/guide/{src → attic}/cycle/garbage_collection.page +1 -1
  40. data/doc/guide/{src → attic}/cycle/index.page +1 -1
  41. data/doc/guide/{src → attic}/cycle/propagation.page +11 -1
  42. data/doc/guide/{src → attic}/cycle/propagation_diamond.png +0 -0
  43. data/doc/guide/{src → attic}/cycle/propagation_diamond.svg +0 -0
  44. data/doc/guide/attic/plans/building_plans.page +89 -0
  45. data/doc/guide/attic/plans/code.page +192 -0
  46. data/doc/guide/{src/basics → attic/plans}/events.page +3 -4
  47. data/doc/guide/attic/plans/index.page +7 -0
  48. data/doc/guide/{plan_modifications.rdoc → attic/plans/plan_modifications.rdoc} +5 -3
  49. data/doc/guide/{src/basics → attic/plans}/plan_objects.page +2 -1
  50. data/doc/guide/attic/plans/querying_plans.page +5 -0
  51. data/doc/guide/{src/basics → attic/plans}/tasks.page +20 -20
  52. data/doc/guide/config.yaml +7 -4
  53. data/doc/guide/ext/extended_menu.rb +29 -0
  54. data/doc/guide/ext/init.rb +6 -0
  55. data/doc/guide/ext/rdoc_links.rb +7 -6
  56. data/doc/guide/src/advanced_concepts/history.page +5 -0
  57. data/doc/guide/src/advanced_concepts/index.page +11 -0
  58. data/doc/guide/src/advanced_concepts/recognizing_patterns.page +83 -0
  59. data/doc/guide/src/advanced_concepts/scheduling.page +87 -0
  60. data/doc/guide/src/advanced_concepts/transactions.page +5 -0
  61. data/doc/guide/src/advanced_concepts/unreachability.page +42 -0
  62. data/doc/guide/src/base.template +96 -0
  63. data/doc/guide/src/basics_shell_header.txt +5 -7
  64. data/doc/guide/src/building/action_coordination.page +96 -0
  65. data/doc/guide/src/building/actions.page +124 -0
  66. data/doc/guide/src/building/file_layout.page +71 -0
  67. data/doc/guide/src/building/index.page +50 -0
  68. data/doc/guide/src/building/patterns.page +86 -0
  69. data/doc/guide/src/building/patterns_forwarding.png +0 -0
  70. data/doc/guide/src/building/patterns_forwarding.svg +277 -0
  71. data/doc/guide/src/building/runtime.page +95 -0
  72. data/doc/guide/src/building/task_models.page +94 -0
  73. data/doc/guide/src/building/tasks.page +284 -0
  74. data/doc/guide/src/concepts/error_handling.page +100 -0
  75. data/doc/guide/src/concepts/exception_propagation.png +0 -0
  76. data/doc/guide/src/concepts/exception_propagation.svg +445 -0
  77. data/doc/guide/src/concepts/execution.page +85 -0
  78. data/doc/guide/src/concepts/execution.png +0 -0
  79. data/doc/guide/src/concepts/execution.svg +573 -0
  80. data/doc/guide/src/concepts/execution_cycle.png +0 -0
  81. data/doc/guide/src/concepts/garbage_collection.page +57 -0
  82. data/doc/guide/src/concepts/index.page +27 -0
  83. data/doc/guide/src/concepts/plans.page +101 -0
  84. data/doc/guide/src/concepts/policy.page +31 -0
  85. data/doc/guide/src/concepts/reactor.page +61 -0
  86. data/doc/guide/src/concepts/simple_plan_example.png +0 -0
  87. data/doc/guide/src/concepts/simple_plan_example.svg +376 -0
  88. data/doc/guide/src/default.template +9 -74
  89. data/doc/guide/src/event_relations/forward.page +71 -0
  90. data/doc/guide/src/event_relations/index.page +12 -0
  91. data/doc/guide/src/event_relations/scheduling_constraints.page +43 -0
  92. data/doc/guide/src/event_relations/signal.page +55 -0
  93. data/doc/guide/src/event_relations/temporal_constraints.page +77 -0
  94. data/doc/guide/src/htmldoc.metainfo +21 -8
  95. data/doc/guide/src/index.page +8 -3
  96. data/doc/guide/src/{introduction/install.page → installation/index.page} +37 -25
  97. data/doc/guide/src/installation/publications.page +14 -0
  98. data/doc/guide/src/{introduction → installation}/videos.page +14 -7
  99. data/doc/guide/src/interacting/index.page +16 -0
  100. data/doc/guide/src/interacting/run.page +33 -0
  101. data/doc/guide/src/interacting/shell.page +95 -0
  102. data/doc/guide/src/plugins/creating_plugins.page +72 -0
  103. data/doc/guide/src/plugins/index.page +27 -5
  104. data/doc/guide/src/plugins/{fault_tolerance.page → standard_plugins/fault_tolerance.page} +2 -2
  105. data/doc/guide/src/plugins/standard_plugins/index.page +11 -0
  106. data/doc/guide/src/plugins/{subsystems.page → standard_plugins/subsystems.page} +2 -2
  107. data/doc/guide/src/style_screen.css +687 -0
  108. data/doc/guide/src/task_relations/dependency.page +107 -0
  109. data/doc/guide/src/task_relations/executed_by.page +77 -0
  110. data/doc/guide/src/task_relations/index.page +12 -0
  111. data/doc/guide/src/task_relations/new_relations.page +119 -0
  112. data/doc/guide/src/task_relations/planned_by.page +46 -0
  113. data/doc/guide/src/tutorial/app.page +117 -0
  114. data/doc/guide/src/{basics → tutorial}/code_examples.page +6 -5
  115. data/doc/guide/src/{basics → tutorial}/dry.page +15 -15
  116. data/doc/guide/src/{basics → tutorial}/errors.page +43 -68
  117. data/doc/guide/src/tutorial/events.page +195 -0
  118. data/doc/guide/src/{basics → tutorial}/hierarchy.page +53 -52
  119. data/doc/guide/src/tutorial/index.page +13 -0
  120. data/doc/guide/src/tutorial/log_replay/goForward_1.png +0 -0
  121. data/doc/guide/src/tutorial/log_replay/goForward_2.png +0 -0
  122. data/doc/guide/src/tutorial/log_replay/goForward_3.png +0 -0
  123. data/doc/guide/src/{basics → tutorial}/log_replay/goForward_4.png +0 -0
  124. data/doc/guide/src/tutorial/log_replay/goForward_5.png +0 -0
  125. data/doc/guide/src/{basics → tutorial}/log_replay/hierarchy_error_1.png +0 -0
  126. data/doc/guide/src/{basics → tutorial}/log_replay/hierarchy_error_2.png +0 -0
  127. data/doc/guide/src/{basics → tutorial}/log_replay/hierarchy_error_3.png +0 -0
  128. data/doc/guide/src/tutorial/log_replay/moveto_code_error.png +0 -0
  129. data/doc/guide/src/{basics → tutorial}/log_replay/plan_repair_1.png +0 -0
  130. data/doc/guide/src/{basics → tutorial}/log_replay/plan_repair_2.png +0 -0
  131. data/doc/guide/src/{basics → tutorial}/log_replay/plan_repair_3.png +0 -0
  132. data/doc/guide/src/tutorial/log_replay/plan_repair_4.png +0 -0
  133. data/doc/guide/src/tutorial/log_replay/roby_log_main_window.png +0 -0
  134. data/doc/guide/src/{basics → tutorial}/log_replay/roby_log_relation_window.png +0 -0
  135. data/doc/guide/src/{basics → tutorial}/log_replay/roby_replay_event_representation.png +0 -0
  136. data/doc/guide/src/tutorial/relations_display.page +153 -0
  137. data/doc/guide/src/{basics → tutorial}/roby_cycle_overview.png +0 -0
  138. data/doc/guide/src/tutorial/shell.page +121 -0
  139. data/doc/guide/src/{basics → tutorial}/summary.page +1 -1
  140. data/doc/guide/src/tutorial/tasks.page +374 -0
  141. data/lib/roby.rb +102 -47
  142. data/lib/roby/actions.rb +17 -0
  143. data/lib/roby/actions/action.rb +80 -0
  144. data/lib/roby/actions/interface.rb +45 -0
  145. data/lib/roby/actions/library.rb +23 -0
  146. data/lib/roby/actions/models/action.rb +224 -0
  147. data/lib/roby/actions/models/coordination_action.rb +58 -0
  148. data/lib/roby/actions/models/interface.rb +22 -0
  149. data/lib/roby/actions/models/interface_base.rb +294 -0
  150. data/lib/roby/actions/models/library.rb +12 -0
  151. data/lib/roby/actions/models/method_action.rb +90 -0
  152. data/lib/roby/actions/task.rb +114 -0
  153. data/lib/roby/and_generator.rb +125 -0
  154. data/lib/roby/app.rb +2795 -829
  155. data/lib/roby/app/autotest_console_reporter.rb +138 -0
  156. data/lib/roby/app/base.rb +21 -0
  157. data/lib/roby/app/cucumber.rb +2 -0
  158. data/lib/roby/app/cucumber/controller.rb +439 -0
  159. data/lib/roby/app/cucumber/helpers.rb +280 -0
  160. data/lib/roby/app/cucumber/world.rb +32 -0
  161. data/lib/roby/app/debug.rb +136 -0
  162. data/lib/roby/app/gen.rb +2 -0
  163. data/lib/roby/app/rake.rb +178 -38
  164. data/lib/roby/app/robot_config.rb +9 -0
  165. data/lib/roby/app/robot_names.rb +115 -0
  166. data/lib/roby/app/run.rb +3 -2
  167. data/lib/roby/app/scripts.rb +72 -0
  168. data/lib/roby/app/scripts/autotest.rb +173 -0
  169. data/lib/roby/app/scripts/display.rb +2 -0
  170. data/lib/roby/app/scripts/restart.rb +52 -0
  171. data/lib/roby/app/scripts/results.rb +17 -8
  172. data/lib/roby/app/scripts/run.rb +155 -24
  173. data/lib/roby/app/scripts/shell.rb +147 -62
  174. data/lib/roby/app/scripts/test.rb +107 -22
  175. data/lib/roby/app/test_reporter.rb +74 -0
  176. data/lib/roby/app/test_server.rb +159 -0
  177. data/lib/roby/app/vagrant.rb +47 -0
  178. data/lib/roby/backports.rb +16 -0
  179. data/lib/roby/cli/display.rb +190 -0
  180. data/lib/roby/cli/exceptions.rb +17 -0
  181. data/lib/roby/cli/gen/actions/class.rb +5 -0
  182. data/lib/roby/cli/gen/actions/test.rb +6 -0
  183. data/lib/roby/cli/gen/app/.yardopts +6 -0
  184. data/lib/roby/cli/gen/app/README.md +28 -0
  185. data/lib/roby/cli/gen/app/Rakefile +15 -0
  186. data/{app → lib/roby/cli/gen/app}/config/app.yml +29 -39
  187. data/lib/roby/cli/gen/app/models/.gitattributes +1 -0
  188. data/{app → lib/roby/cli/gen/app/scripts}/controllers/.gitattributes +0 -0
  189. data/{app/data/.gitattributes → lib/roby/cli/gen/app/test/.gitignore} +0 -0
  190. data/lib/roby/cli/gen/class/class.rb +6 -0
  191. data/lib/roby/cli/gen/class/test.rb +7 -0
  192. data/lib/roby/cli/gen/helpers.rb +203 -0
  193. data/lib/roby/cli/gen/module/module.rb +5 -0
  194. data/lib/roby/cli/gen/module/test.rb +6 -0
  195. data/lib/roby/cli/gen/roby_app/config/init.rb +17 -0
  196. data/lib/roby/cli/gen/roby_app/config/robots/robot.rb +40 -0
  197. data/lib/roby/cli/gen/task/class.rb +44 -0
  198. data/lib/roby/cli/gen/task/test.rb +6 -0
  199. data/lib/roby/cli/gen_main.rb +120 -0
  200. data/lib/roby/cli/log.rb +276 -0
  201. data/lib/roby/cli/log/flamegraph.html +499 -0
  202. data/lib/roby/cli/log/flamegraph_renderer.rb +88 -0
  203. data/lib/roby/cli/main.rb +153 -0
  204. data/lib/roby/coordination.rb +60 -0
  205. data/lib/roby/coordination/action_script.rb +25 -0
  206. data/lib/roby/coordination/action_state_machine.rb +125 -0
  207. data/lib/roby/coordination/actions.rb +106 -0
  208. data/lib/roby/coordination/base.rb +145 -0
  209. data/lib/roby/coordination/calculus.rb +40 -0
  210. data/lib/roby/coordination/child.rb +28 -0
  211. data/lib/roby/coordination/event.rb +29 -0
  212. data/lib/roby/coordination/fault_handler.rb +25 -0
  213. data/lib/roby/coordination/fault_handling_task.rb +13 -0
  214. data/lib/roby/coordination/fault_response_table.rb +110 -0
  215. data/lib/roby/coordination/models/action_script.rb +64 -0
  216. data/lib/roby/coordination/models/action_state_machine.rb +224 -0
  217. data/lib/roby/coordination/models/actions.rb +191 -0
  218. data/lib/roby/coordination/models/arguments.rb +55 -0
  219. data/lib/roby/coordination/models/base.rb +176 -0
  220. data/lib/roby/coordination/models/capture.rb +86 -0
  221. data/lib/roby/coordination/models/child.rb +35 -0
  222. data/lib/roby/coordination/models/event.rb +41 -0
  223. data/lib/roby/coordination/models/exceptions.rb +42 -0
  224. data/lib/roby/coordination/models/fault_handler.rb +219 -0
  225. data/lib/roby/coordination/models/fault_response_table.rb +77 -0
  226. data/lib/roby/coordination/models/root.rb +22 -0
  227. data/lib/roby/coordination/models/script.rb +283 -0
  228. data/lib/roby/coordination/models/task.rb +184 -0
  229. data/lib/roby/coordination/models/task_from_action.rb +50 -0
  230. data/lib/roby/coordination/models/task_from_as_plan.rb +33 -0
  231. data/lib/roby/coordination/models/task_from_instanciation_object.rb +31 -0
  232. data/lib/roby/coordination/models/task_from_variable.rb +27 -0
  233. data/lib/roby/coordination/models/task_with_dependencies.rb +48 -0
  234. data/lib/roby/coordination/models/variable.rb +32 -0
  235. data/lib/roby/coordination/script.rb +200 -0
  236. data/lib/roby/coordination/script_instruction.rb +12 -0
  237. data/lib/roby/coordination/task.rb +45 -0
  238. data/lib/roby/coordination/task_base.rb +69 -0
  239. data/lib/roby/coordination/task_script.rb +293 -0
  240. data/lib/roby/coordination/task_state_machine.rb +308 -0
  241. data/lib/roby/decision_control.rb +33 -21
  242. data/lib/roby/distributed_object.rb +76 -0
  243. data/lib/roby/droby.rb +17 -0
  244. data/lib/roby/droby/droby_id.rb +6 -0
  245. data/lib/roby/droby/enable.rb +153 -0
  246. data/lib/roby/droby/event_logger.rb +189 -0
  247. data/lib/roby/droby/event_logging.rb +57 -0
  248. data/lib/roby/droby/exceptions.rb +14 -0
  249. data/lib/roby/droby/identifiable.rb +22 -0
  250. data/lib/roby/droby/logfile.rb +141 -0
  251. data/lib/roby/droby/logfile/client.rb +176 -0
  252. data/lib/roby/droby/logfile/file_format.md +97 -0
  253. data/lib/roby/droby/logfile/index.rb +117 -0
  254. data/lib/roby/droby/logfile/reader.rb +139 -0
  255. data/lib/roby/droby/logfile/server.rb +199 -0
  256. data/lib/roby/droby/logfile/writer.rb +114 -0
  257. data/lib/roby/droby/marshal.rb +264 -0
  258. data/lib/roby/droby/marshallable.rb +12 -0
  259. data/lib/roby/droby/null_event_logger.rb +25 -0
  260. data/lib/roby/droby/object_manager.rb +205 -0
  261. data/lib/roby/droby/peer_id.rb +6 -0
  262. data/lib/roby/droby/plan_rebuilder.rb +373 -0
  263. data/lib/roby/droby/rebuilt_plan.rb +160 -0
  264. data/lib/roby/droby/remote_droby_id.rb +6 -0
  265. data/lib/roby/droby/timepoints.rb +205 -0
  266. data/lib/roby/droby/timepoints_ctf.metadata.erb +101 -0
  267. data/lib/roby/droby/timepoints_ctf.rb +125 -0
  268. data/lib/roby/droby/v5.rb +14 -0
  269. data/lib/roby/droby/v5/builtin.rb +120 -0
  270. data/lib/roby/droby/v5/droby_class.rb +45 -0
  271. data/lib/roby/droby/v5/droby_constant.rb +81 -0
  272. data/lib/roby/droby/v5/droby_dump.rb +1026 -0
  273. data/lib/roby/droby/v5/droby_id.rb +44 -0
  274. data/lib/roby/droby/v5/droby_model.rb +82 -0
  275. data/lib/roby/droby/v5/peer_id.rb +10 -0
  276. data/lib/roby/droby/v5/remote_droby_id.rb +42 -0
  277. data/lib/roby/event.rb +79 -957
  278. data/lib/roby/event_constraints.rb +835 -0
  279. data/lib/roby/event_generator.rb +1047 -0
  280. data/lib/roby/event_structure/causal_link.rb +6 -0
  281. data/lib/roby/event_structure/forwarding.rb +6 -0
  282. data/lib/roby/event_structure/precedence.rb +7 -0
  283. data/lib/roby/event_structure/signal.rb +8 -0
  284. data/lib/roby/event_structure/temporal_constraints.rb +640 -0
  285. data/lib/roby/exceptions.rb +446 -152
  286. data/lib/roby/executable_plan.rb +549 -0
  287. data/lib/roby/execution_engine.rb +1997 -950
  288. data/lib/roby/filter_generator.rb +26 -0
  289. data/lib/roby/gui/chronicle_view.rb +225 -0
  290. data/lib/roby/gui/chronicle_widget.rb +925 -0
  291. data/lib/roby/gui/dot_id.rb +11 -0
  292. data/lib/roby/gui/exception_view.rb +44 -0
  293. data/lib/roby/gui/log_display.rb +273 -0
  294. data/lib/roby/gui/model_views.rb +2 -0
  295. data/lib/roby/gui/model_views/action_interface.rb +53 -0
  296. data/lib/roby/gui/model_views/task.rb +47 -0
  297. data/lib/roby/gui/model_views/task.rhtml +41 -0
  298. data/lib/roby/gui/object_info_view.rb +89 -0
  299. data/lib/roby/gui/plan_dot_layout.rb +427 -0
  300. data/lib/roby/gui/plan_rebuilder_widget.rb +357 -0
  301. data/lib/roby/gui/qt4_toMSecsSinceEpoch.rb +8 -0
  302. data/lib/roby/gui/relations_view.rb +278 -0
  303. data/lib/roby/gui/relations_view/relations.ui +139 -0
  304. data/lib/roby/gui/relations_view/relations_canvas.rb +1088 -0
  305. data/lib/roby/gui/relations_view/relations_config.rb +292 -0
  306. data/lib/roby/gui/relations_view/relations_view.ui +53 -0
  307. data/lib/roby/gui/scheduler_view.css +24 -0
  308. data/lib/roby/gui/scheduler_view.rb +46 -0
  309. data/lib/roby/gui/scheduler_view.rhtml +53 -0
  310. data/lib/roby/gui/stepping.rb +93 -0
  311. data/lib/roby/gui/stepping.ui +181 -0
  312. data/lib/roby/gui/styles.rb +81 -0
  313. data/lib/roby/gui/task_display_configuration.rb +42 -0
  314. data/lib/roby/gui/task_state_at.rb +38 -0
  315. data/lib/roby/hooks.rb +26 -0
  316. data/lib/roby/interface.rb +136 -469
  317. data/lib/roby/interface/async.rb +20 -0
  318. data/lib/roby/interface/async/action_monitor.rb +188 -0
  319. data/lib/roby/interface/async/interface.rb +498 -0
  320. data/lib/roby/interface/async/job_monitor.rb +213 -0
  321. data/lib/roby/interface/async/log.rb +238 -0
  322. data/lib/roby/interface/async/new_job_listener.rb +79 -0
  323. data/lib/roby/interface/async/ui_connector.rb +183 -0
  324. data/lib/roby/interface/client.rb +553 -0
  325. data/lib/roby/interface/command.rb +24 -0
  326. data/lib/roby/interface/command_argument.rb +16 -0
  327. data/lib/roby/interface/command_library.rb +92 -0
  328. data/lib/roby/interface/droby_channel.rb +174 -0
  329. data/lib/roby/interface/exceptions.rb +22 -0
  330. data/lib/roby/interface/interface.rb +655 -0
  331. data/lib/roby/interface/job.rb +47 -0
  332. data/lib/roby/interface/rest.rb +10 -0
  333. data/lib/roby/interface/rest/api.rb +29 -0
  334. data/lib/roby/interface/rest/helpers.rb +24 -0
  335. data/lib/roby/interface/rest/server.rb +212 -0
  336. data/lib/roby/interface/server.rb +154 -0
  337. data/lib/roby/interface/shell_client.rb +468 -0
  338. data/lib/roby/interface/shell_subcommand.rb +24 -0
  339. data/lib/roby/interface/subcommand_client.rb +35 -0
  340. data/lib/roby/interface/tcp.rb +168 -0
  341. data/lib/roby/models/arguments.rb +112 -0
  342. data/lib/roby/models/plan_object.rb +83 -0
  343. data/lib/roby/models/task.rb +835 -0
  344. data/lib/roby/models/task_event.rb +62 -0
  345. data/lib/roby/models/task_service.rb +78 -0
  346. data/lib/roby/or_generator.rb +88 -0
  347. data/lib/roby/plan.rb +1751 -864
  348. data/lib/roby/plan_object.rb +611 -0
  349. data/lib/roby/plan_service.rb +200 -0
  350. data/lib/roby/promise.rb +332 -0
  351. data/lib/roby/queries.rb +23 -0
  352. data/lib/roby/queries/and_matcher.rb +32 -0
  353. data/lib/roby/queries/any.rb +27 -0
  354. data/lib/roby/queries/code_error_matcher.rb +58 -0
  355. data/lib/roby/queries/event_generator_matcher.rb +9 -0
  356. data/lib/roby/queries/execution_exception_matcher.rb +165 -0
  357. data/lib/roby/queries/index.rb +165 -0
  358. data/lib/roby/queries/localized_error_matcher.rb +149 -0
  359. data/lib/roby/queries/matcher_base.rb +107 -0
  360. data/lib/roby/queries/none.rb +27 -0
  361. data/lib/roby/queries/not_matcher.rb +30 -0
  362. data/lib/roby/queries/op_matcher.rb +8 -0
  363. data/lib/roby/queries/or_matcher.rb +30 -0
  364. data/lib/roby/queries/plan_object_matcher.rb +363 -0
  365. data/lib/roby/queries/query.rb +188 -0
  366. data/lib/roby/queries/task_event_generator_matcher.rb +86 -0
  367. data/lib/roby/queries/task_matcher.rb +344 -0
  368. data/lib/roby/relations.rb +42 -678
  369. data/lib/roby/relations/bidirectional_directed_adjacency_graph.rb +492 -0
  370. data/lib/roby/relations/directed_relation_support.rb +268 -0
  371. data/lib/roby/relations/event_relation_graph.rb +19 -0
  372. data/lib/roby/relations/fork_merge_visitor.rb +154 -0
  373. data/lib/roby/relations/graph.rb +533 -0
  374. data/lib/roby/relations/models/directed_relation_support.rb +11 -0
  375. data/lib/roby/relations/models/graph.rb +75 -0
  376. data/lib/roby/relations/models/task_relation_graph.rb +18 -0
  377. data/lib/roby/relations/space.rb +380 -0
  378. data/lib/roby/relations/task_relation_graph.rb +20 -0
  379. data/lib/roby/robot.rb +85 -38
  380. data/lib/roby/schedulers/basic.rb +155 -25
  381. data/lib/roby/schedulers/null.rb +20 -0
  382. data/lib/roby/schedulers/reporting.rb +31 -0
  383. data/lib/roby/schedulers/state.rb +129 -0
  384. data/lib/roby/schedulers/temporal.rb +91 -0
  385. data/lib/roby/singletons.rb +87 -0
  386. data/lib/roby/standalone.rb +4 -2
  387. data/lib/roby/standard_errors.rb +405 -82
  388. data/lib/roby/state.rb +6 -3
  389. data/lib/roby/state/conf_model.rb +5 -0
  390. data/lib/roby/state/events.rb +181 -95
  391. data/lib/roby/state/goal_model.rb +77 -0
  392. data/lib/roby/state/open_struct.rb +591 -0
  393. data/lib/roby/state/open_struct_model.rb +68 -0
  394. data/lib/roby/state/pos.rb +45 -45
  395. data/lib/roby/state/shapes.rb +11 -11
  396. data/lib/roby/state/state_model.rb +303 -0
  397. data/lib/roby/state/task.rb +43 -0
  398. data/lib/roby/support.rb +88 -148
  399. data/lib/roby/task.rb +1361 -1750
  400. data/lib/roby/task_arguments.rb +428 -0
  401. data/lib/roby/task_event.rb +127 -0
  402. data/lib/roby/task_event_generator.rb +337 -0
  403. data/lib/roby/task_service.rb +6 -0
  404. data/lib/roby/task_structure/conflicts.rb +104 -0
  405. data/lib/roby/task_structure/dependency.rb +932 -0
  406. data/lib/roby/task_structure/error_handling.rb +118 -0
  407. data/lib/roby/task_structure/executed_by.rb +234 -0
  408. data/lib/roby/task_structure/planned_by.rb +90 -0
  409. data/lib/roby/tasks/aggregator.rb +37 -0
  410. data/lib/roby/tasks/external_process.rb +275 -0
  411. data/lib/roby/tasks/group.rb +27 -0
  412. data/lib/roby/tasks/null.rb +19 -0
  413. data/lib/roby/tasks/parallel.rb +43 -0
  414. data/lib/roby/tasks/sequence.rb +88 -0
  415. data/lib/roby/tasks/simple.rb +21 -0
  416. data/lib/roby/{thread_task.rb → tasks/thread.rb} +50 -24
  417. data/lib/roby/tasks/timeout.rb +17 -0
  418. data/lib/roby/tasks/virtual.rb +55 -0
  419. data/lib/roby/template_plan.rb +7 -0
  420. data/lib/roby/test/aruba_minitest.rb +74 -0
  421. data/lib/roby/test/assertion.rb +16 -0
  422. data/lib/roby/test/assertions.rb +490 -0
  423. data/lib/roby/test/common.rb +368 -591
  424. data/lib/roby/test/dsl.rb +149 -0
  425. data/lib/roby/test/error.rb +18 -0
  426. data/lib/roby/test/event_reporter.rb +83 -0
  427. data/lib/roby/test/execution_expectations.rb +1134 -0
  428. data/lib/roby/test/expect_execution.rb +151 -0
  429. data/lib/roby/test/minitest_helpers.rb +166 -0
  430. data/lib/roby/test/roby_app_helpers.rb +200 -0
  431. data/lib/roby/test/run_planners.rb +155 -0
  432. data/lib/roby/test/self.rb +112 -0
  433. data/lib/roby/test/spec.rb +198 -0
  434. data/lib/roby/test/tasks/empty_task.rb +4 -4
  435. data/lib/roby/test/tasks/goto.rb +28 -27
  436. data/lib/roby/test/teardown_plans.rb +100 -0
  437. data/lib/roby/test/testcase.rb +239 -307
  438. data/lib/roby/test/tools.rb +159 -155
  439. data/lib/roby/test/validate_state_machine.rb +75 -0
  440. data/lib/roby/transaction.rb +1125 -0
  441. data/lib/roby/transaction/event_generator_proxy.rb +63 -0
  442. data/lib/roby/transaction/plan_object_proxy.rb +99 -0
  443. data/lib/roby/transaction/plan_service_proxy.rb +43 -0
  444. data/lib/roby/transaction/proxying.rb +120 -0
  445. data/lib/roby/transaction/task_event_generator_proxy.rb +19 -0
  446. data/lib/roby/transaction/task_proxy.rb +135 -0
  447. data/lib/roby/until_generator.rb +30 -0
  448. data/lib/roby/version.rb +5 -0
  449. data/lib/roby/yard.rb +169 -0
  450. data/lib/yard-roby.rb +1 -0
  451. data/manifest.xml +32 -6
  452. data/roby.gemspec +59 -0
  453. metadata +788 -587
  454. data/Manifest.txt +0 -321
  455. data/NOTES +0 -4
  456. data/README.txt +0 -166
  457. data/TODO.txt +0 -146
  458. data/app/README.txt +0 -24
  459. data/app/Rakefile +0 -8
  460. data/app/config/ROBOT.rb +0 -5
  461. data/app/config/init.rb +0 -33
  462. data/app/config/roby.yml +0 -3
  463. data/app/controllers/ROBOT.rb +0 -2
  464. data/app/planners/ROBOT/main.rb +0 -6
  465. data/app/planners/main.rb +0 -5
  466. data/app/scripts/distributed +0 -3
  467. data/app/scripts/generate/bookmarks +0 -3
  468. data/app/scripts/replay +0 -3
  469. data/app/scripts/results +0 -3
  470. data/app/scripts/run +0 -3
  471. data/app/scripts/server +0 -3
  472. data/app/scripts/shell +0 -3
  473. data/app/scripts/test +0 -3
  474. data/app/tasks/.gitattributes +0 -0
  475. data/app/tasks/ROBOT/.gitattributes +0 -0
  476. data/bin/roby-shell +0 -25
  477. data/doc/guide/src/basics/app.page +0 -139
  478. data/doc/guide/src/basics/index.page +0 -11
  479. data/doc/guide/src/basics/log_replay/goForward_1.png +0 -0
  480. data/doc/guide/src/basics/log_replay/goForward_2.png +0 -0
  481. data/doc/guide/src/basics/log_replay/goForward_3.png +0 -0
  482. data/doc/guide/src/basics/log_replay/goForward_5.png +0 -0
  483. data/doc/guide/src/basics/log_replay/plan_repair_4.png +0 -0
  484. data/doc/guide/src/basics/log_replay/roby_log_main_window.png +0 -0
  485. data/doc/guide/src/basics/relations_display.page +0 -203
  486. data/doc/guide/src/basics/shell.page +0 -102
  487. data/doc/guide/src/default.css +0 -319
  488. data/doc/guide/src/introduction/index.page +0 -29
  489. data/doc/guide/src/introduction/publications.page +0 -14
  490. data/doc/guide/src/relations/dependency.page +0 -89
  491. data/doc/guide/src/relations/index.page +0 -12
  492. data/ext/droby/dump.cc +0 -175
  493. data/ext/droby/extconf.rb +0 -3
  494. data/ext/graph/algorithm.cc +0 -746
  495. data/ext/graph/extconf.rb +0 -7
  496. data/ext/graph/graph.cc +0 -575
  497. data/ext/graph/graph.hh +0 -183
  498. data/ext/graph/iterator_sequence.hh +0 -102
  499. data/ext/graph/undirected_dfs.hh +0 -226
  500. data/ext/graph/undirected_graph.hh +0 -421
  501. data/lib/roby/app/scripts/generate/bookmarks.rb +0 -162
  502. data/lib/roby/app/scripts/replay.rb +0 -31
  503. data/lib/roby/app/scripts/server.rb +0 -18
  504. data/lib/roby/basic_object.rb +0 -151
  505. data/lib/roby/config.rb +0 -14
  506. data/lib/roby/distributed.rb +0 -36
  507. data/lib/roby/distributed/base.rb +0 -448
  508. data/lib/roby/distributed/communication.rb +0 -875
  509. data/lib/roby/distributed/connection_space.rb +0 -616
  510. data/lib/roby/distributed/distributed_object.rb +0 -206
  511. data/lib/roby/distributed/drb.rb +0 -62
  512. data/lib/roby/distributed/notifications.rb +0 -531
  513. data/lib/roby/distributed/peer.rb +0 -555
  514. data/lib/roby/distributed/protocol.rb +0 -529
  515. data/lib/roby/distributed/proxy.rb +0 -343
  516. data/lib/roby/distributed/subscription.rb +0 -311
  517. data/lib/roby/distributed/transaction.rb +0 -498
  518. data/lib/roby/external_process_task.rb +0 -225
  519. data/lib/roby/graph.rb +0 -160
  520. data/lib/roby/log.rb +0 -3
  521. data/lib/roby/log/chronicle.rb +0 -303
  522. data/lib/roby/log/console.rb +0 -74
  523. data/lib/roby/log/data_stream.rb +0 -275
  524. data/lib/roby/log/dot.rb +0 -279
  525. data/lib/roby/log/event_stream.rb +0 -161
  526. data/lib/roby/log/file.rb +0 -396
  527. data/lib/roby/log/gui/basic_display.ui +0 -83
  528. data/lib/roby/log/gui/basic_display_ui.rb +0 -89
  529. data/lib/roby/log/gui/chronicle.rb +0 -26
  530. data/lib/roby/log/gui/chronicle_view.rb +0 -40
  531. data/lib/roby/log/gui/chronicle_view.ui +0 -70
  532. data/lib/roby/log/gui/chronicle_view_ui.rb +0 -90
  533. data/lib/roby/log/gui/data_displays.rb +0 -171
  534. data/lib/roby/log/gui/data_displays.ui +0 -155
  535. data/lib/roby/log/gui/data_displays_ui.rb +0 -146
  536. data/lib/roby/log/gui/notifications.rb +0 -26
  537. data/lib/roby/log/gui/relations.rb +0 -269
  538. data/lib/roby/log/gui/relations.ui +0 -123
  539. data/lib/roby/log/gui/relations_ui.rb +0 -120
  540. data/lib/roby/log/gui/relations_view.rb +0 -185
  541. data/lib/roby/log/gui/relations_view.ui +0 -149
  542. data/lib/roby/log/gui/relations_view_ui.rb +0 -144
  543. data/lib/roby/log/gui/replay.rb +0 -366
  544. data/lib/roby/log/gui/replay_controls.rb +0 -206
  545. data/lib/roby/log/gui/replay_controls.ui +0 -282
  546. data/lib/roby/log/gui/replay_controls_ui.rb +0 -249
  547. data/lib/roby/log/gui/runtime.rb +0 -130
  548. data/lib/roby/log/hooks.rb +0 -186
  549. data/lib/roby/log/logger.rb +0 -203
  550. data/lib/roby/log/notifications.rb +0 -244
  551. data/lib/roby/log/plan_rebuilder.rb +0 -468
  552. data/lib/roby/log/relations.rb +0 -1084
  553. data/lib/roby/log/server.rb +0 -547
  554. data/lib/roby/log/sqlite.rb +0 -47
  555. data/lib/roby/log/timings.rb +0 -233
  556. data/lib/roby/plan-object.rb +0 -371
  557. data/lib/roby/planning.rb +0 -13
  558. data/lib/roby/planning/loops.rb +0 -309
  559. data/lib/roby/planning/model.rb +0 -1012
  560. data/lib/roby/planning/task.rb +0 -180
  561. data/lib/roby/query.rb +0 -655
  562. data/lib/roby/relations/conflicts.rb +0 -67
  563. data/lib/roby/relations/dependency.rb +0 -358
  564. data/lib/roby/relations/ensured.rb +0 -19
  565. data/lib/roby/relations/error_handling.rb +0 -22
  566. data/lib/roby/relations/events.rb +0 -7
  567. data/lib/roby/relations/executed_by.rb +0 -208
  568. data/lib/roby/relations/influence.rb +0 -10
  569. data/lib/roby/relations/planned_by.rb +0 -63
  570. data/lib/roby/state/information.rb +0 -55
  571. data/lib/roby/state/state.rb +0 -367
  572. data/lib/roby/task-operations.rb +0 -186
  573. data/lib/roby/task_index.rb +0 -80
  574. data/lib/roby/test/distributed.rb +0 -230
  575. data/lib/roby/test/tasks/simple_task.rb +0 -23
  576. data/lib/roby/transactions.rb +0 -507
  577. data/lib/roby/transactions/proxy.rb +0 -325
  578. data/plugins/fault_injection/History.txt +0 -4
  579. data/plugins/fault_injection/README.txt +0 -34
  580. data/plugins/fault_injection/Rakefile +0 -12
  581. data/plugins/fault_injection/TODO.txt +0 -0
  582. data/plugins/fault_injection/app.rb +0 -52
  583. data/plugins/fault_injection/fault_injection.rb +0 -89
  584. data/plugins/fault_injection/test/test_fault_injection.rb +0 -78
  585. data/plugins/subsystems/README.txt +0 -37
  586. data/plugins/subsystems/Rakefile +0 -13
  587. data/plugins/subsystems/app.rb +0 -182
  588. data/plugins/subsystems/test/app/README +0 -24
  589. data/plugins/subsystems/test/app/Rakefile +0 -8
  590. data/plugins/subsystems/test/app/config/app.yml +0 -71
  591. data/plugins/subsystems/test/app/config/init.rb +0 -12
  592. data/plugins/subsystems/test/app/config/roby.yml +0 -3
  593. data/plugins/subsystems/test/app/planners/main.rb +0 -20
  594. data/plugins/subsystems/test/app/scripts/distributed +0 -3
  595. data/plugins/subsystems/test/app/scripts/replay +0 -3
  596. data/plugins/subsystems/test/app/scripts/results +0 -3
  597. data/plugins/subsystems/test/app/scripts/run +0 -3
  598. data/plugins/subsystems/test/app/scripts/server +0 -3
  599. data/plugins/subsystems/test/app/scripts/shell +0 -3
  600. data/plugins/subsystems/test/app/scripts/test +0 -3
  601. data/plugins/subsystems/test/app/tasks/services.rb +0 -15
  602. data/plugins/subsystems/test/test_subsystems.rb +0 -78
  603. data/test/distributed/test_communication.rb +0 -195
  604. data/test/distributed/test_connection.rb +0 -284
  605. data/test/distributed/test_execution.rb +0 -378
  606. data/test/distributed/test_mixed_plan.rb +0 -341
  607. data/test/distributed/test_plan_notifications.rb +0 -238
  608. data/test/distributed/test_protocol.rb +0 -525
  609. data/test/distributed/test_query.rb +0 -106
  610. data/test/distributed/test_remote_plan.rb +0 -491
  611. data/test/distributed/test_transaction.rb +0 -466
  612. data/test/mockups/external_process +0 -28
  613. data/test/mockups/tasks.rb +0 -27
  614. data/test/planning/test_loops.rb +0 -432
  615. data/test/planning/test_model.rb +0 -427
  616. data/test/planning/test_task.rb +0 -126
  617. data/test/relations/test_conflicts.rb +0 -42
  618. data/test/relations/test_dependency.rb +0 -324
  619. data/test/relations/test_ensured.rb +0 -38
  620. data/test/relations/test_executed_by.rb +0 -224
  621. data/test/relations/test_planned_by.rb +0 -56
  622. data/test/suite_core.rb +0 -29
  623. data/test/suite_distributed.rb +0 -10
  624. data/test/suite_planning.rb +0 -4
  625. data/test/suite_relations.rb +0 -8
  626. data/test/tasks/test_external_process.rb +0 -126
  627. data/test/tasks/test_thread_task.rb +0 -70
  628. data/test/test_bgl.rb +0 -528
  629. data/test/test_event.rb +0 -969
  630. data/test/test_exceptions.rb +0 -591
  631. data/test/test_execution_engine.rb +0 -987
  632. data/test/test_gui.rb +0 -20
  633. data/test/test_interface.rb +0 -43
  634. data/test/test_log.rb +0 -125
  635. data/test/test_log_server.rb +0 -133
  636. data/test/test_plan.rb +0 -418
  637. data/test/test_query.rb +0 -424
  638. data/test/test_relations.rb +0 -260
  639. data/test/test_state.rb +0 -432
  640. data/test/test_support.rb +0 -16
  641. data/test/test_task.rb +0 -1181
  642. data/test/test_testcase.rb +0 -138
  643. data/test/test_transactions.rb +0 -610
  644. data/test/test_transactions_proxy.rb +0 -216
@@ -0,0 +1,30 @@
1
+ module Roby
2
+ # This event generator combines a source and a limit in a temporal pattern.
3
+ # The generator acts as a pass-through for the source, until the limit is
4
+ # itself emitted. It means that:
5
+ #
6
+ # * before the limit is emitted, the generator will emit each time its
7
+ # source emits
8
+ # * since the point where the limit is emitted, the generator
9
+ # does not emit anymore
10
+ #
11
+ # See also EventGenerator#until
12
+ class UntilGenerator < Roby::EventGenerator
13
+ # Creates a until generator for the given source and limit event
14
+ # generators
15
+ def initialize(source = nil, limit = nil)
16
+ super() do |context|
17
+ forwarded_generators = each_parent_object(EventStructure::Forwarding).to_a
18
+ forwarded_generators.each do |g|
19
+ g.remove_forwarding self
20
+ end
21
+ end
22
+
23
+ if source && limit
24
+ source.forward_to(self)
25
+ limit.signals(self)
26
+ end
27
+ end
28
+ end
29
+ end
30
+
@@ -0,0 +1,5 @@
1
+ module Roby
2
+ VERSION = "3.0.0"
3
+ ROBY_LIB_DIR = File.expand_path( File.join(File.dirname(__FILE__), '..') )
4
+ ROBY_ROOT_DIR = File.expand_path( File.join(ROBY_LIB_DIR, '..') )
5
+ end
@@ -0,0 +1,169 @@
1
+ require 'facets/string/camelcase'
2
+ module Roby
3
+ module YARD
4
+ include ::YARD
5
+
6
+ class ModelRelationHandler < YARD::Handlers::Ruby::Base
7
+ handles method_call(:model_relation)
8
+ namespace_only
9
+
10
+ def register(object)
11
+ super
12
+ register_group(object, "Event Relations")
13
+ end
14
+
15
+ def process
16
+ name = statement.parameters[0].jump(:tstring_content, :ident).source
17
+
18
+ push_state(scope: :class) do
19
+ object = YARD::CodeObjects::MethodObject.new(namespace, "#{name}_sets", scope)
20
+ object.dynamic = true
21
+ register(object)
22
+ object.docstring.replace(
23
+ YARD::Docstring.new("The set of #{name}s defined at this level of the model hierarchy") +
24
+ object.docstring)
25
+ object.docstring.add_tag(
26
+ *YARD::Docstring.parser.create_tag("return", "[Hash<Symbol,Set<Symbol>>]"))
27
+
28
+ object = YARD::CodeObjects::MethodObject.new(namespace, "each_#{name}_set", scope)
29
+ object.dynamic = true
30
+ register(object)
31
+ object.docstring.add_tag(
32
+ *YARD::Docstring.parser.create_tag("yieldparam", "[Symbol] source_name"),
33
+ *YARD::Docstring.parser.create_tag("yieldparam", "[Set<Symbol>] target_names"))
34
+
35
+ object = YARD::CodeObjects::MethodObject.new(namespace, "#{name}s", scope)
36
+ object.dynamic = true
37
+ register(object)
38
+ object.parameters << ["model", nil]
39
+ object.docstring.add_tag(
40
+ *YARD::Docstring.parser.create_tag("param", "[Symbol] event_name"),
41
+ *YARD::Docstring.parser.create_tag("return", "[Set<Symbol>] target #{name}s"))
42
+
43
+ object = YARD::CodeObjects::MethodObject.new(namespace, "each_#{name}", scope)
44
+ object.dynamic = true
45
+ register(object)
46
+ object.parameters << ["model", nil]
47
+ object.docstring.add_tag(
48
+ *YARD::Docstring.parser.create_tag("param", "[Symbol] event_name"),
49
+ *YARD::Docstring.parser.create_tag("yieldparam", "[Symbol] target_name"))
50
+
51
+ object = YARD::CodeObjects::MethodObject.new(namespace, "all_#{name}s", scope)
52
+ object.dynamic = true
53
+ register(object)
54
+ object.parameters << ["model", nil]
55
+ object.docstring.replace(
56
+ YARD::Docstring.new("The set of #{name}s that will be applied on all instances of this model") +
57
+ object.docstring)
58
+ object.docstring.add_tag(
59
+ *YARD::Docstring.parser.create_tag("return", "[Hash<Symbol,Set<Symbol>>]"))
60
+ end
61
+ end
62
+ end
63
+
64
+ class RelationHandler < YARD::Handlers::Ruby::AttributeHandler
65
+ handles method_call(:relation)
66
+ namespace_only
67
+
68
+ def process
69
+ name = statement.parameters[0].jump(:tstring_content, :ident).source
70
+
71
+
72
+ graph_class = YARD::CodeObjects::ClassObject.new(namespace, "#{name}")
73
+ register(graph_class)
74
+ instance_module = YARD::CodeObjects::ModuleObject.new(graph_class, "Extension")
75
+ register(instance_module)
76
+ class_module = YARD::CodeObjects::ModuleObject.new(graph_class, "ClassExtension")
77
+ register(class_module)
78
+
79
+ end
80
+ end
81
+
82
+ class TaskServiceHandler < YARD::Handlers::Ruby::Base
83
+ handles method_call(:task_service)
84
+ namespace_only
85
+
86
+ def process
87
+ name = statement.parameters[0].jump(:tstring_content, :ident).source
88
+
89
+ service_module = YARD::CodeObjects::ModuleObject.new(namespace, name)
90
+ register(service_module)
91
+ parse_block(statement.last.last, namespace: service_module)
92
+ service_module.dynamic = true
93
+ end
94
+ end
95
+
96
+ class ArgumentHandler < YARD::Handlers::Ruby::Base
97
+ handles method_call(:argument)
98
+ namespace_only
99
+
100
+ def process
101
+ name = statement.parameters[0].jump(:tstring_content, :ident).source
102
+
103
+ default = nil
104
+ if statement.parameters[1]
105
+ statement.parameters[1].jump(:assoc).to_a.each_slice(2) do |key, value|
106
+ if key.source == 'default:'
107
+ default = value.source
108
+ end
109
+ end
110
+ end
111
+
112
+ writer = YARD::CodeObjects::MethodObject.new(namespace, "#{name}=")
113
+ register(writer)
114
+ register_group(writer, "Task Arguments")
115
+
116
+ reader = YARD::CodeObjects::MethodObject.new(namespace, name)
117
+ register(reader)
118
+ register_group(reader, "Task Arguments")
119
+ reader.docstring = "Default: #{default}" if default && reader.docstring.blank?(false)
120
+ end
121
+ end
122
+
123
+ class EventHandler < YARD::Handlers::Ruby::Base
124
+ handles method_call(:event)
125
+ namespace_only
126
+
127
+ def process
128
+ name = statement.parameters[0].jump(:tstring_content, :ident).source
129
+
130
+ controlable = false
131
+ if statement.parameters[1]
132
+ statement.parameters[1].jump(:assoc).to_a.each_slice(2) do |key, value|
133
+ if key.source == 'controlable:' || key.source == "command:"
134
+ controlable = true
135
+ end
136
+ end
137
+ end
138
+
139
+ accessor = YARD::CodeObjects::MethodObject.new(namespace, "#{name}_event")
140
+ register(accessor)
141
+ register_group(accessor, "Task Events")
142
+ accessor.docstring.add_tag(
143
+ *YARD::Docstring.parser.create_tag("return", "[EventGenerator]"))
144
+
145
+ happened = YARD::CodeObjects::MethodObject.new(namespace, "#{name}?")
146
+ register(happened)
147
+ register_group(happened, "Task Events")
148
+ happened.docstring.add_tag(
149
+ *YARD::Docstring.parser.create_tag("return", "[Boolean]"))
150
+
151
+ if controlable
152
+ command = YARD::CodeObjects::MethodObject.new(namespace, "#{name}!")
153
+ register(command)
154
+ register_group(command, "Task Events")
155
+ command.parameters << ['context', 'nil']
156
+ end
157
+
158
+ push_state(scope: :class) do
159
+ event_class = YARD::CodeObjects::ClassObject.new(namespace, "#{name.camelcase(true)}")
160
+ register(event_class)
161
+ event_class.docstring.replace(
162
+ YARD::Docstring.new("Event class used to represent the events emitted by #{namespace}##{name}_event\n\n") +
163
+ event_class.docstring)
164
+ end
165
+ end
166
+ end
167
+ end
168
+ end
169
+
@@ -0,0 +1 @@
1
+ require 'roby/yard'
@@ -1,6 +1,7 @@
1
1
  <package>
2
2
  <description brief="advanced supervision framework">
3
3
  </description>
4
+ <maintainer>Sylvain Joyeux/sylvain.joyeux@m4x.org</maintainer>
4
5
  <author>Sylvain Joyeux/sylvain.joyeux@m4x.org</author>
5
6
  <copyright>
6
7
  LAAS-CNRS/openrobots@laas.fr
@@ -9,12 +10,37 @@
9
10
  </copyright>
10
11
  <license>CeCILL-B (BSD-like)</license>
11
12
 
12
- <depend package="utilmm" />
13
13
  <depend package="utilrb" />
14
- <rosdep name="flexmock" />
15
- <rosdep name="activesupport" />
16
- <rosdep name="qtruby" />
17
- <rosdep name="boost" />
18
- <rosdep name="graphviz" />
14
+ <depend package="facets" />
15
+ <depend package="state_machine" />
16
+ <depend package="tools/metaruby" />
17
+ <depend package="websocket-gem" />
18
+ <depend package="binding_of_caller" />
19
+ <depend package="rb-readline" />
20
+ <depend package="concurrent-ruby" />
21
+ <depend package="ruby-backports" />
22
+ <depend package="pastel" />
23
+ <depend package="hooks" />
24
+ <depend package="rgl" />
25
+ <depend package="thor" />
26
+ <depend package="autorespawn" optional="1" />
27
+
28
+ <depend package="qtruby" optional='1' />
29
+ <depend package="graphviz" optional='1' />
30
+
31
+ <depend_optional package="rest-client" />
32
+ <depend_optional package="grape" />
33
+ <depend_optional package="thin" />
34
+
35
+ <depend_optional package="autorespawn" />
36
+
37
+ <depend_optional package="minitest" />
38
+ <depend_optional package="flexmock" />
39
+ <depend_optional package="fakefs" />
40
+ <depend_optional package="timecop" />
41
+ <depend_optional package="stackprof" />
42
+ <depend_optional package="rbtrace" />
43
+
44
+ <test_depend package="aruba" />
19
45
  </package>
20
46
 
@@ -0,0 +1,59 @@
1
+ # coding: utf-8
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'roby/version'
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = "roby"
8
+ s.version = Roby::VERSION
9
+ s.authors = ["Sylvain Joyeux"]
10
+ s.email = "sylvain.joyeux@m4x.org"
11
+ s.summary = "A plan-based control framework for autonomous systems"
12
+ s.description = <<-EOD
13
+ The Roby plan manager is currently developped from within the Robot Construction
14
+ Kit (http://rock-robotics.org). Have a look there. Additionally, the [Roby User
15
+ Guide](http://rock-robotics.org/api/tools/roby) is a good place to start with
16
+ Roby.
17
+ EOD
18
+ s.homepage = "http://rock-robotics.org"
19
+ s.licenses = ["BSD"]
20
+
21
+ s.bindir = 'bin'
22
+ s.require_paths = ["lib"]
23
+ s.executables << "roby"
24
+ s.extra_rdoc_files = ["README.md"]
25
+ s.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
26
+
27
+ s.add_runtime_dependency "utilrb", ">= 3.0.0"
28
+ s.add_runtime_dependency "facets", ">= 2.4.0"
29
+ s.add_runtime_dependency "state_machine", "= 1.0.3"
30
+ s.add_runtime_dependency "metaruby", '>= 1.0.0.a'
31
+ s.add_runtime_dependency "websocket", '~> 1.2'
32
+ s.add_runtime_dependency "binding_of_caller", '~> 0.8.0'
33
+ s.add_runtime_dependency "rb-readline", '~> 0.5.3'
34
+ s.add_runtime_dependency "concurrent-ruby", '~> 1.0'
35
+ s.add_runtime_dependency "backports", '~> 3.0'
36
+ s.add_runtime_dependency "pastel", '~> 0.7.2'
37
+ s.add_runtime_dependency "hooks", '~> 0.4.0', '>= 0.4.1'
38
+ s.add_runtime_dependency "rgl", '~> 0.5.1'
39
+ s.add_runtime_dependency "thor", '~> 0.20.0'
40
+
41
+ s.add_runtime_dependency "rest-client", '~> 2.0'
42
+ s.add_runtime_dependency "grape", '~> 1.0'
43
+ s.add_runtime_dependency "thin", '~> 1.7'
44
+
45
+ s.add_runtime_dependency "autorespawn"
46
+ s.add_runtime_dependency "yard"
47
+
48
+ s.add_runtime_dependency "minitest"
49
+ s.add_runtime_dependency "flexmock"
50
+ s.add_runtime_dependency "fakefs"
51
+ s.add_runtime_dependency "timecop"
52
+ s.add_runtime_dependency "simplecov"
53
+
54
+ s.add_development_dependency "aruba"
55
+ s.add_development_dependency "cucumber"
56
+
57
+ # NOTE: stackprof and rbtrace are linux- and MRI-specific
58
+ # Only in Gemfile !
59
+ end
metadata CHANGED
@@ -1,387 +1,482 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: roby
3
- version: !ruby/object:Gem::Version
4
- version: 0.8.0
3
+ version: !ruby/object:Gem::Version
4
+ version: 3.0.0
5
5
  platform: ruby
6
- authors:
6
+ authors:
7
7
  - Sylvain Joyeux
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
-
12
- date: 2010-01-25 00:00:00 +01:00
13
- default_executable:
14
- dependencies:
15
- - !ruby/object:Gem::Dependency
11
+ date: 2018-03-28 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: utilrb
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: 3.0.0
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: 3.0.0
27
+ - !ruby/object:Gem::Dependency
16
28
  name: facets
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: 2.4.0
17
34
  type: :runtime
18
- version_requirement:
19
- version_requirements: !ruby/object:Gem::Requirement
20
- requirements:
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
21
38
  - - ">="
22
- - !ruby/object:Gem::Version
23
- version: "2.0"
24
- version:
25
- - !ruby/object:Gem::Dependency
26
- name: utilrb
39
+ - !ruby/object:Gem::Version
40
+ version: 2.4.0
41
+ - !ruby/object:Gem::Dependency
42
+ name: state_machine
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - '='
46
+ - !ruby/object:Gem::Version
47
+ version: 1.0.3
27
48
  type: :runtime
28
- version_requirement:
29
- version_requirements: !ruby/object:Gem::Requirement
30
- requirements:
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - '='
53
+ - !ruby/object:Gem::Version
54
+ version: 1.0.3
55
+ - !ruby/object:Gem::Dependency
56
+ name: metaruby
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
31
59
  - - ">="
32
- - !ruby/object:Gem::Version
33
- version: 1.3.1
34
- version:
35
- - !ruby/object:Gem::Dependency
36
- name: rubyforge
37
- type: :development
38
- version_requirement:
39
- version_requirements: !ruby/object:Gem::Requirement
40
- requirements:
60
+ - !ruby/object:Gem::Version
61
+ version: 1.0.0.a
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
41
66
  - - ">="
42
- - !ruby/object:Gem::Version
43
- version: 2.0.3
44
- version:
45
- - !ruby/object:Gem::Dependency
46
- name: gemcutter
47
- type: :development
48
- version_requirement:
49
- version_requirements: !ruby/object:Gem::Requirement
50
- requirements:
67
+ - !ruby/object:Gem::Version
68
+ version: 1.0.0.a
69
+ - !ruby/object:Gem::Dependency
70
+ name: websocket
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '1.2'
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '1.2'
83
+ - !ruby/object:Gem::Dependency
84
+ name: binding_of_caller
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: 0.8.0
90
+ type: :runtime
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: 0.8.0
97
+ - !ruby/object:Gem::Dependency
98
+ name: rb-readline
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: 0.5.3
104
+ type: :runtime
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: 0.5.3
111
+ - !ruby/object:Gem::Dependency
112
+ name: concurrent-ruby
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - "~>"
116
+ - !ruby/object:Gem::Version
117
+ version: '1.0'
118
+ type: :runtime
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - "~>"
123
+ - !ruby/object:Gem::Version
124
+ version: '1.0'
125
+ - !ruby/object:Gem::Dependency
126
+ name: backports
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - "~>"
130
+ - !ruby/object:Gem::Version
131
+ version: '3.0'
132
+ type: :runtime
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - "~>"
137
+ - !ruby/object:Gem::Version
138
+ version: '3.0'
139
+ - !ruby/object:Gem::Dependency
140
+ name: pastel
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - "~>"
144
+ - !ruby/object:Gem::Version
145
+ version: 0.7.2
146
+ type: :runtime
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - "~>"
151
+ - !ruby/object:Gem::Version
152
+ version: 0.7.2
153
+ - !ruby/object:Gem::Dependency
154
+ name: hooks
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - "~>"
158
+ - !ruby/object:Gem::Version
159
+ version: 0.4.0
51
160
  - - ">="
52
- - !ruby/object:Gem::Version
53
- version: 0.3.0
54
- version:
55
- - !ruby/object:Gem::Dependency
56
- name: rdoc
57
- type: :development
58
- version_requirement:
59
- version_requirements: !ruby/object:Gem::Requirement
60
- requirements:
161
+ - !ruby/object:Gem::Version
162
+ version: 0.4.1
163
+ type: :runtime
164
+ prerelease: false
165
+ version_requirements: !ruby/object:Gem::Requirement
166
+ requirements:
167
+ - - "~>"
168
+ - !ruby/object:Gem::Version
169
+ version: 0.4.0
170
+ - - ">="
171
+ - !ruby/object:Gem::Version
172
+ version: 0.4.1
173
+ - !ruby/object:Gem::Dependency
174
+ name: rgl
175
+ requirement: !ruby/object:Gem::Requirement
176
+ requirements:
177
+ - - "~>"
178
+ - !ruby/object:Gem::Version
179
+ version: 0.5.1
180
+ type: :runtime
181
+ prerelease: false
182
+ version_requirements: !ruby/object:Gem::Requirement
183
+ requirements:
184
+ - - "~>"
185
+ - !ruby/object:Gem::Version
186
+ version: 0.5.1
187
+ - !ruby/object:Gem::Dependency
188
+ name: thor
189
+ requirement: !ruby/object:Gem::Requirement
190
+ requirements:
191
+ - - "~>"
192
+ - !ruby/object:Gem::Version
193
+ version: 0.20.0
194
+ type: :runtime
195
+ prerelease: false
196
+ version_requirements: !ruby/object:Gem::Requirement
197
+ requirements:
198
+ - - "~>"
199
+ - !ruby/object:Gem::Version
200
+ version: 0.20.0
201
+ - !ruby/object:Gem::Dependency
202
+ name: rest-client
203
+ requirement: !ruby/object:Gem::Requirement
204
+ requirements:
205
+ - - "~>"
206
+ - !ruby/object:Gem::Version
207
+ version: '2.0'
208
+ type: :runtime
209
+ prerelease: false
210
+ version_requirements: !ruby/object:Gem::Requirement
211
+ requirements:
212
+ - - "~>"
213
+ - !ruby/object:Gem::Version
214
+ version: '2.0'
215
+ - !ruby/object:Gem::Dependency
216
+ name: grape
217
+ requirement: !ruby/object:Gem::Requirement
218
+ requirements:
219
+ - - "~>"
220
+ - !ruby/object:Gem::Version
221
+ version: '1.0'
222
+ type: :runtime
223
+ prerelease: false
224
+ version_requirements: !ruby/object:Gem::Requirement
225
+ requirements:
226
+ - - "~>"
227
+ - !ruby/object:Gem::Version
228
+ version: '1.0'
229
+ - !ruby/object:Gem::Dependency
230
+ name: thin
231
+ requirement: !ruby/object:Gem::Requirement
232
+ requirements:
233
+ - - "~>"
234
+ - !ruby/object:Gem::Version
235
+ version: '1.7'
236
+ type: :runtime
237
+ prerelease: false
238
+ version_requirements: !ruby/object:Gem::Requirement
239
+ requirements:
240
+ - - "~>"
241
+ - !ruby/object:Gem::Version
242
+ version: '1.7'
243
+ - !ruby/object:Gem::Dependency
244
+ name: autorespawn
245
+ requirement: !ruby/object:Gem::Requirement
246
+ requirements:
61
247
  - - ">="
62
- - !ruby/object:Gem::Version
63
- version: "2.4"
64
- version:
65
- - !ruby/object:Gem::Dependency
66
- name: webgen
248
+ - !ruby/object:Gem::Version
249
+ version: '0'
250
+ type: :runtime
251
+ prerelease: false
252
+ version_requirements: !ruby/object:Gem::Requirement
253
+ requirements:
254
+ - - ">="
255
+ - !ruby/object:Gem::Version
256
+ version: '0'
257
+ - !ruby/object:Gem::Dependency
258
+ name: yard
259
+ requirement: !ruby/object:Gem::Requirement
260
+ requirements:
261
+ - - ">="
262
+ - !ruby/object:Gem::Version
263
+ version: '0'
264
+ type: :runtime
265
+ prerelease: false
266
+ version_requirements: !ruby/object:Gem::Requirement
267
+ requirements:
268
+ - - ">="
269
+ - !ruby/object:Gem::Version
270
+ version: '0'
271
+ - !ruby/object:Gem::Dependency
272
+ name: minitest
273
+ requirement: !ruby/object:Gem::Requirement
274
+ requirements:
275
+ - - ">="
276
+ - !ruby/object:Gem::Version
277
+ version: '0'
278
+ type: :runtime
279
+ prerelease: false
280
+ version_requirements: !ruby/object:Gem::Requirement
281
+ requirements:
282
+ - - ">="
283
+ - !ruby/object:Gem::Version
284
+ version: '0'
285
+ - !ruby/object:Gem::Dependency
286
+ name: flexmock
287
+ requirement: !ruby/object:Gem::Requirement
288
+ requirements:
289
+ - - ">="
290
+ - !ruby/object:Gem::Version
291
+ version: '0'
292
+ type: :runtime
293
+ prerelease: false
294
+ version_requirements: !ruby/object:Gem::Requirement
295
+ requirements:
296
+ - - ">="
297
+ - !ruby/object:Gem::Version
298
+ version: '0'
299
+ - !ruby/object:Gem::Dependency
300
+ name: fakefs
301
+ requirement: !ruby/object:Gem::Requirement
302
+ requirements:
303
+ - - ">="
304
+ - !ruby/object:Gem::Version
305
+ version: '0'
306
+ type: :runtime
307
+ prerelease: false
308
+ version_requirements: !ruby/object:Gem::Requirement
309
+ requirements:
310
+ - - ">="
311
+ - !ruby/object:Gem::Version
312
+ version: '0'
313
+ - !ruby/object:Gem::Dependency
314
+ name: timecop
315
+ requirement: !ruby/object:Gem::Requirement
316
+ requirements:
317
+ - - ">="
318
+ - !ruby/object:Gem::Version
319
+ version: '0'
320
+ type: :runtime
321
+ prerelease: false
322
+ version_requirements: !ruby/object:Gem::Requirement
323
+ requirements:
324
+ - - ">="
325
+ - !ruby/object:Gem::Version
326
+ version: '0'
327
+ - !ruby/object:Gem::Dependency
328
+ name: simplecov
329
+ requirement: !ruby/object:Gem::Requirement
330
+ requirements:
331
+ - - ">="
332
+ - !ruby/object:Gem::Version
333
+ version: '0'
334
+ type: :runtime
335
+ prerelease: false
336
+ version_requirements: !ruby/object:Gem::Requirement
337
+ requirements:
338
+ - - ">="
339
+ - !ruby/object:Gem::Version
340
+ version: '0'
341
+ - !ruby/object:Gem::Dependency
342
+ name: aruba
343
+ requirement: !ruby/object:Gem::Requirement
344
+ requirements:
345
+ - - ">="
346
+ - !ruby/object:Gem::Version
347
+ version: '0'
67
348
  type: :development
68
- version_requirement:
69
- version_requirements: !ruby/object:Gem::Requirement
70
- requirements:
349
+ prerelease: false
350
+ version_requirements: !ruby/object:Gem::Requirement
351
+ requirements:
71
352
  - - ">="
72
- - !ruby/object:Gem::Version
73
- version: "0.5"
74
- version:
75
- - !ruby/object:Gem::Dependency
76
- name: hoe
353
+ - !ruby/object:Gem::Version
354
+ version: '0'
355
+ - !ruby/object:Gem::Dependency
356
+ name: cucumber
357
+ requirement: !ruby/object:Gem::Requirement
358
+ requirements:
359
+ - - ">="
360
+ - !ruby/object:Gem::Version
361
+ version: '0'
77
362
  type: :development
78
- version_requirement:
79
- version_requirements: !ruby/object:Gem::Requirement
80
- requirements:
363
+ prerelease: false
364
+ version_requirements: !ruby/object:Gem::Requirement
365
+ requirements:
81
366
  - - ">="
82
- - !ruby/object:Gem::Version
83
- version: 2.5.0
84
- version:
85
- description: A plan-based control framework for autonomous systems
86
- email:
87
- - sylvain.joyeux@m4x.org
88
- executables:
367
+ - !ruby/object:Gem::Version
368
+ version: '0'
369
+ description: |
370
+ The Roby plan manager is currently developped from within the Robot Construction
371
+ Kit (http://rock-robotics.org). Have a look there. Additionally, the [Roby User
372
+ Guide](http://rock-robotics.org/api/tools/roby) is a good place to start with
373
+ Roby.
374
+ email: sylvain.joyeux@m4x.org
375
+ executables:
89
376
  - roby
90
- - roby-log
91
- - roby-shell
92
- extensions:
93
- - ext/droby/extconf.rb
94
- - ext/graph/extconf.rb
95
- extra_rdoc_files:
96
- - History.txt
97
- - License-fr.txt
98
- - License.txt
99
- - Manifest.txt
100
- - README.txt
101
- - TODO.txt
102
- - app/README.txt
103
- - app/config/ROBOT.rb
104
- - app/config/init.rb
105
- - app/controllers/ROBOT.rb
106
- - app/planners/ROBOT/main.rb
107
- - app/planners/main.rb
108
- - benchmark/alloc_misc.rb
109
- - benchmark/discovery_latency.rb
110
- - benchmark/garbage_collection.rb
111
- - benchmark/genom.rb
112
- - benchmark/transactions.rb
113
- - doc/guide/ext/init.rb
114
- - doc/guide/ext/previous_next.rb
115
- - doc/guide/ext/rdoc_links.rb
116
- - doc/guide/index.rdoc
117
- - doc/guide/overview.rdoc
118
- - doc/guide/plan_modifications.rdoc
119
- - doc/guide/src/basics_shell_header.txt
120
- - doc/tutorials/01-GettingStarted.rdoc
121
- - doc/tutorials/02-GoForward.rdoc
122
- - doc/tutorials/03-PlannedPath.rdoc
123
- - doc/tutorials/04-EventPropagation.rdoc
124
- - doc/tutorials/05-ErrorHandling.rdoc
125
- - doc/tutorials/06-Overview.rdoc
126
- - ext/droby/dump.cc
127
- - ext/droby/extconf.rb
128
- - ext/graph/algorithm.cc
129
- - ext/graph/extconf.rb
130
- - ext/graph/graph.cc
131
- - ext/graph/graph.hh
132
- - ext/graph/iterator_sequence.hh
133
- - ext/graph/undirected_dfs.hh
134
- - ext/graph/undirected_graph.hh
135
- - lib/roby.rb
136
- - lib/roby/app.rb
137
- - lib/roby/app/plugins/rake.rb
138
- - lib/roby/app/rake.rb
139
- - lib/roby/app/run.rb
140
- - lib/roby/app/scripts/distributed.rb
141
- - lib/roby/app/scripts/generate/bookmarks.rb
142
- - lib/roby/app/scripts/replay.rb
143
- - lib/roby/app/scripts/results.rb
144
- - lib/roby/app/scripts/run.rb
145
- - lib/roby/app/scripts/server.rb
146
- - lib/roby/app/scripts/shell.rb
147
- - lib/roby/app/scripts/test.rb
148
- - lib/roby/basic_object.rb
149
- - lib/roby/config.rb
150
- - lib/roby/decision_control.rb
151
- - lib/roby/distributed.rb
152
- - lib/roby/distributed/base.rb
153
- - lib/roby/distributed/communication.rb
154
- - lib/roby/distributed/connection_space.rb
155
- - lib/roby/distributed/distributed_object.rb
156
- - lib/roby/distributed/drb.rb
157
- - lib/roby/distributed/notifications.rb
158
- - lib/roby/distributed/peer.rb
159
- - lib/roby/distributed/protocol.rb
160
- - lib/roby/distributed/proxy.rb
161
- - lib/roby/distributed/subscription.rb
162
- - lib/roby/distributed/transaction.rb
163
- - lib/roby/event.rb
164
- - lib/roby/exceptions.rb
165
- - lib/roby/execution_engine.rb
166
- - lib/roby/external_process_task.rb
167
- - lib/roby/graph.rb
168
- - lib/roby/interface.rb
169
- - lib/roby/log.rb
170
- - lib/roby/log/chronicle.rb
171
- - lib/roby/log/console.rb
172
- - lib/roby/log/data_stream.rb
173
- - lib/roby/log/dot.rb
174
- - lib/roby/log/event_stream.rb
175
- - lib/roby/log/file.rb
176
- - lib/roby/log/gui/basic_display_ui.rb
177
- - lib/roby/log/gui/chronicle.rb
178
- - lib/roby/log/gui/chronicle_view.rb
179
- - lib/roby/log/gui/chronicle_view_ui.rb
180
- - lib/roby/log/gui/data_displays.rb
181
- - lib/roby/log/gui/data_displays_ui.rb
182
- - lib/roby/log/gui/notifications.rb
183
- - lib/roby/log/gui/relations.rb
184
- - lib/roby/log/gui/relations_ui.rb
185
- - lib/roby/log/gui/relations_view.rb
186
- - lib/roby/log/gui/relations_view_ui.rb
187
- - lib/roby/log/gui/replay.rb
188
- - lib/roby/log/gui/replay_controls.rb
189
- - lib/roby/log/gui/replay_controls_ui.rb
190
- - lib/roby/log/gui/runtime.rb
191
- - lib/roby/log/hooks.rb
192
- - lib/roby/log/logger.rb
193
- - lib/roby/log/notifications.rb
194
- - lib/roby/log/plan_rebuilder.rb
195
- - lib/roby/log/relations.rb
196
- - lib/roby/log/server.rb
197
- - lib/roby/log/sqlite.rb
198
- - lib/roby/log/timings.rb
199
- - lib/roby/plan-object.rb
200
- - lib/roby/plan.rb
201
- - lib/roby/planning.rb
202
- - lib/roby/planning/loops.rb
203
- - lib/roby/planning/model.rb
204
- - lib/roby/planning/task.rb
205
- - lib/roby/query.rb
206
- - lib/roby/relations.rb
207
- - lib/roby/relations/conflicts.rb
208
- - lib/roby/relations/dependency.rb
209
- - lib/roby/relations/ensured.rb
210
- - lib/roby/relations/error_handling.rb
211
- - lib/roby/relations/events.rb
212
- - lib/roby/relations/executed_by.rb
213
- - lib/roby/relations/influence.rb
214
- - lib/roby/relations/planned_by.rb
215
- - lib/roby/robot.rb
216
- - lib/roby/schedulers/basic.rb
217
- - lib/roby/standalone.rb
218
- - lib/roby/standard_errors.rb
219
- - lib/roby/state.rb
220
- - lib/roby/state/events.rb
221
- - lib/roby/state/information.rb
222
- - lib/roby/state/pos.rb
223
- - lib/roby/state/shapes.rb
224
- - lib/roby/state/state.rb
225
- - lib/roby/support.rb
226
- - lib/roby/task-operations.rb
227
- - lib/roby/task.rb
228
- - lib/roby/task_index.rb
229
- - lib/roby/test/common.rb
230
- - lib/roby/test/distributed.rb
231
- - lib/roby/test/tasks/empty_task.rb
232
- - lib/roby/test/tasks/goto.rb
233
- - lib/roby/test/tasks/simple_task.rb
234
- - lib/roby/test/testcase.rb
235
- - lib/roby/test/tools.rb
236
- - lib/roby/thread_task.rb
237
- - lib/roby/transactions.rb
238
- - lib/roby/transactions/proxy.rb
239
- - plugins/fault_injection/History.txt
240
- - plugins/fault_injection/README.txt
241
- - plugins/fault_injection/TODO.txt
242
- - plugins/fault_injection/app.rb
243
- - plugins/fault_injection/fault_injection.rb
244
- - plugins/fault_injection/test/test_fault_injection.rb
245
- - plugins/subsystems/README.txt
246
- - plugins/subsystems/app.rb
247
- - plugins/subsystems/test/app/config/init.rb
248
- - plugins/subsystems/test/app/planners/main.rb
249
- - plugins/subsystems/test/app/tasks/services.rb
250
- - plugins/subsystems/test/test_subsystems.rb
251
- - test/distributed/test_communication.rb
252
- - test/distributed/test_connection.rb
253
- - test/distributed/test_execution.rb
254
- - test/distributed/test_mixed_plan.rb
255
- - test/distributed/test_plan_notifications.rb
256
- - test/distributed/test_protocol.rb
257
- - test/distributed/test_query.rb
258
- - test/distributed/test_remote_plan.rb
259
- - test/distributed/test_transaction.rb
260
- - test/mockups/tasks.rb
261
- - test/planning/test_loops.rb
262
- - test/planning/test_model.rb
263
- - test/planning/test_task.rb
264
- - test/relations/test_conflicts.rb
265
- - test/relations/test_dependency.rb
266
- - test/relations/test_ensured.rb
267
- - test/relations/test_executed_by.rb
268
- - test/relations/test_planned_by.rb
269
- - test/suite_core.rb
270
- - test/suite_distributed.rb
271
- - test/suite_planning.rb
272
- - test/suite_relations.rb
273
- - test/tasks/test_external_process.rb
274
- - test/tasks/test_thread_task.rb
275
- - test/test_bgl.rb
276
- - test/test_event.rb
277
- - test/test_exceptions.rb
278
- - test/test_execution_engine.rb
279
- - test/test_gui.rb
280
- - test/test_interface.rb
281
- - test/test_log.rb
282
- - test/test_log_server.rb
283
- - test/test_plan.rb
284
- - test/test_query.rb
285
- - test/test_relations.rb
286
- - test/test_state.rb
287
- - test/test_support.rb
288
- - test/test_task.rb
289
- - test/test_testcase.rb
290
- - test/test_transactions.rb
291
- - test/test_transactions_proxy.rb
292
- files:
377
+ extensions: []
378
+ extra_rdoc_files:
379
+ - README.md
380
+ files:
381
+ - ".deep-cover.rb"
382
+ - ".gitattributes"
383
+ - ".gitignore"
384
+ - ".simplecov"
385
+ - ".travis.yml"
386
+ - ".yardopts"
387
+ - Gemfile
293
388
  - History.txt
294
389
  - License-fr.txt
295
390
  - License.txt
296
- - Manifest.txt
297
- - NOTES
298
- - README.txt
391
+ - README.md
299
392
  - Rakefile
300
- - TODO.txt
301
- - app/README.txt
302
- - app/Rakefile
303
- - app/config/ROBOT.rb
304
- - app/config/app.yml
305
- - app/config/init.rb
306
- - app/config/roby.yml
307
- - app/controllers/.gitattributes
308
- - app/controllers/ROBOT.rb
309
- - app/data/.gitattributes
310
- - app/planners/ROBOT/main.rb
311
- - app/planners/main.rb
312
- - app/scripts/distributed
313
- - app/scripts/generate/bookmarks
314
- - app/scripts/replay
315
- - app/scripts/results
316
- - app/scripts/run
317
- - app/scripts/server
318
- - app/scripts/shell
319
- - app/scripts/test
320
- - app/tasks/.gitattributes
321
- - app/tasks/ROBOT/.gitattributes
322
- - benchmark/alloc_misc.rb
323
- - benchmark/discovery_latency.rb
324
- - benchmark/garbage_collection.rb
325
- - benchmark/genom.rb
393
+ - benchmark/attic/alloc_misc.rb
394
+ - benchmark/attic/discovery_latency.rb
395
+ - benchmark/attic/garbage_collection.rb
396
+ - benchmark/attic/genom.rb
397
+ - benchmark/attic/transactions.rb
398
+ - benchmark/plan_basic_operations.rb
399
+ - benchmark/relations/graph.rb
400
+ - benchmark/ruby/identity.rb
401
+ - benchmark/ruby/set_intersect_vs_hash_merge.rb
402
+ - benchmark/ruby/yield_vs_block.rb
403
+ - benchmark/run
404
+ - benchmark/synthetic_plan_modifications_with_transactions.rb
326
405
  - benchmark/transactions.rb
327
406
  - bin/roby
407
+ - bin/roby-display
328
408
  - bin/roby-log
329
- - bin/roby-shell
330
409
  - doc/guide/.gitignore
410
+ - doc/guide/attic/abstraction/achieve_with.page
411
+ - doc/guide/attic/abstraction/forwarding.page
412
+ - doc/guide/attic/abstraction/hierarchy.page
413
+ - doc/guide/attic/abstraction/index.page
414
+ - doc/guide/attic/abstraction/task_models.page
415
+ - doc/guide/attic/cycle/api_overview.rdoc
416
+ - doc/guide/attic/cycle/cycle-overview.png
417
+ - doc/guide/attic/cycle/cycle-overview.svg
418
+ - doc/guide/attic/cycle/error_handling.page
419
+ - doc/guide/attic/cycle/error_instantaneous_repair.png
420
+ - doc/guide/attic/cycle/error_instantaneous_repair.svg
421
+ - doc/guide/attic/cycle/error_sources.page
422
+ - doc/guide/attic/cycle/garbage_collection.page
423
+ - doc/guide/attic/cycle/index.page
424
+ - doc/guide/attic/cycle/propagation.page
425
+ - doc/guide/attic/cycle/propagation_diamond.png
426
+ - doc/guide/attic/cycle/propagation_diamond.svg
427
+ - doc/guide/attic/plans/building_plans.page
428
+ - doc/guide/attic/plans/code.page
429
+ - doc/guide/attic/plans/events.page
430
+ - doc/guide/attic/plans/index.page
431
+ - doc/guide/attic/plans/plan_modifications.rdoc
432
+ - doc/guide/attic/plans/plan_objects.page
433
+ - doc/guide/attic/plans/querying_plans.page
434
+ - doc/guide/attic/plans/tasks.page
331
435
  - doc/guide/config.yaml
436
+ - doc/guide/ext/extended_menu.rb
332
437
  - doc/guide/ext/init.rb
333
438
  - doc/guide/ext/previous_next.rb
334
439
  - doc/guide/ext/rdoc_links.rb
335
440
  - doc/guide/index.rdoc
336
- - doc/guide/overview.rdoc
337
- - doc/guide/plan_modifications.rdoc
338
- - doc/guide/src/abstraction/achieve_with.page
339
- - doc/guide/src/abstraction/forwarding.page
340
- - doc/guide/src/abstraction/hierarchy.page
341
- - doc/guide/src/abstraction/index.page
342
- - doc/guide/src/abstraction/task_models.page
441
+ - doc/guide/src/advanced_concepts/history.page
442
+ - doc/guide/src/advanced_concepts/index.page
443
+ - doc/guide/src/advanced_concepts/recognizing_patterns.page
444
+ - doc/guide/src/advanced_concepts/scheduling.page
445
+ - doc/guide/src/advanced_concepts/transactions.page
446
+ - doc/guide/src/advanced_concepts/unreachability.page
447
+ - doc/guide/src/base.template
343
448
  - doc/guide/src/basics.template
344
- - doc/guide/src/basics/app.page
345
- - doc/guide/src/basics/code_examples.page
346
- - doc/guide/src/basics/dry.page
347
- - doc/guide/src/basics/errors.page
348
- - doc/guide/src/basics/events.page
349
- - doc/guide/src/basics/hierarchy.page
350
- - doc/guide/src/basics/index.page
351
- - doc/guide/src/basics/log_replay/goForward_1.png
352
- - doc/guide/src/basics/log_replay/goForward_2.png
353
- - doc/guide/src/basics/log_replay/goForward_3.png
354
- - doc/guide/src/basics/log_replay/goForward_4.png
355
- - doc/guide/src/basics/log_replay/goForward_5.png
356
- - doc/guide/src/basics/log_replay/hierarchy_error_1.png
357
- - doc/guide/src/basics/log_replay/hierarchy_error_2.png
358
- - doc/guide/src/basics/log_replay/hierarchy_error_3.png
359
- - doc/guide/src/basics/log_replay/plan_repair_1.png
360
- - doc/guide/src/basics/log_replay/plan_repair_2.png
361
- - doc/guide/src/basics/log_replay/plan_repair_3.png
362
- - doc/guide/src/basics/log_replay/plan_repair_4.png
363
- - doc/guide/src/basics/log_replay/roby_log_main_window.png
364
- - doc/guide/src/basics/log_replay/roby_log_relation_window.png
365
- - doc/guide/src/basics/log_replay/roby_replay_event_representation.png
366
- - doc/guide/src/basics/plan_objects.page
367
- - doc/guide/src/basics/relations_display.page
368
- - doc/guide/src/basics/roby_cycle_overview.png
369
- - doc/guide/src/basics/shell.page
370
- - doc/guide/src/basics/summary.page
371
- - doc/guide/src/basics/tasks.page
372
449
  - doc/guide/src/basics_shell_header.txt
373
- - doc/guide/src/cycle/cycle-overview.png
374
- - doc/guide/src/cycle/cycle-overview.svg
375
- - doc/guide/src/cycle/error_handling.page
376
- - doc/guide/src/cycle/error_instantaneous_repair.png
377
- - doc/guide/src/cycle/error_instantaneous_repair.svg
378
- - doc/guide/src/cycle/garbage_collection.page
379
- - doc/guide/src/cycle/index.page
380
- - doc/guide/src/cycle/propagation.page
381
- - doc/guide/src/cycle/propagation_diamond.png
382
- - doc/guide/src/cycle/propagation_diamond.svg
383
- - doc/guide/src/default.css
450
+ - doc/guide/src/building/action_coordination.page
451
+ - doc/guide/src/building/actions.page
452
+ - doc/guide/src/building/file_layout.page
453
+ - doc/guide/src/building/index.page
454
+ - doc/guide/src/building/patterns.page
455
+ - doc/guide/src/building/patterns_forwarding.png
456
+ - doc/guide/src/building/patterns_forwarding.svg
457
+ - doc/guide/src/building/runtime.page
458
+ - doc/guide/src/building/task_models.page
459
+ - doc/guide/src/building/tasks.page
460
+ - doc/guide/src/concepts/error_handling.page
461
+ - doc/guide/src/concepts/exception_propagation.png
462
+ - doc/guide/src/concepts/exception_propagation.svg
463
+ - doc/guide/src/concepts/execution.page
464
+ - doc/guide/src/concepts/execution.png
465
+ - doc/guide/src/concepts/execution.svg
466
+ - doc/guide/src/concepts/execution_cycle.png
467
+ - doc/guide/src/concepts/garbage_collection.page
468
+ - doc/guide/src/concepts/index.page
469
+ - doc/guide/src/concepts/plans.page
470
+ - doc/guide/src/concepts/policy.page
471
+ - doc/guide/src/concepts/reactor.page
472
+ - doc/guide/src/concepts/simple_plan_example.png
473
+ - doc/guide/src/concepts/simple_plan_example.svg
384
474
  - doc/guide/src/default.template
475
+ - doc/guide/src/event_relations/forward.page
476
+ - doc/guide/src/event_relations/index.page
477
+ - doc/guide/src/event_relations/scheduling_constraints.page
478
+ - doc/guide/src/event_relations/signal.page
479
+ - doc/guide/src/event_relations/temporal_constraints.page
385
480
  - doc/guide/src/htmldoc.metainfo
386
481
  - doc/guide/src/htmldoc.virtual
387
482
  - doc/guide/src/images/bodybg.png
@@ -390,15 +485,51 @@ files:
390
485
  - doc/guide/src/images/gradient1.png
391
486
  - doc/guide/src/images/gradient2.png
392
487
  - doc/guide/src/index.page
393
- - doc/guide/src/introduction/index.page
394
- - doc/guide/src/introduction/install.page
395
- - doc/guide/src/introduction/publications.page
396
- - doc/guide/src/introduction/videos.page
397
- - doc/guide/src/plugins/fault_tolerance.page
488
+ - doc/guide/src/installation/index.page
489
+ - doc/guide/src/installation/publications.page
490
+ - doc/guide/src/installation/videos.page
491
+ - doc/guide/src/interacting/index.page
492
+ - doc/guide/src/interacting/run.page
493
+ - doc/guide/src/interacting/shell.page
494
+ - doc/guide/src/plugins/creating_plugins.page
398
495
  - doc/guide/src/plugins/index.page
399
- - doc/guide/src/plugins/subsystems.page
400
- - doc/guide/src/relations/dependency.page
401
- - doc/guide/src/relations/index.page
496
+ - doc/guide/src/plugins/standard_plugins/fault_tolerance.page
497
+ - doc/guide/src/plugins/standard_plugins/index.page
498
+ - doc/guide/src/plugins/standard_plugins/subsystems.page
499
+ - doc/guide/src/style_screen.css
500
+ - doc/guide/src/task_relations/dependency.page
501
+ - doc/guide/src/task_relations/executed_by.page
502
+ - doc/guide/src/task_relations/index.page
503
+ - doc/guide/src/task_relations/new_relations.page
504
+ - doc/guide/src/task_relations/planned_by.page
505
+ - doc/guide/src/tutorial/app.page
506
+ - doc/guide/src/tutorial/code_examples.page
507
+ - doc/guide/src/tutorial/dry.page
508
+ - doc/guide/src/tutorial/errors.page
509
+ - doc/guide/src/tutorial/events.page
510
+ - doc/guide/src/tutorial/hierarchy.page
511
+ - doc/guide/src/tutorial/index.page
512
+ - doc/guide/src/tutorial/log_replay/goForward_1.png
513
+ - doc/guide/src/tutorial/log_replay/goForward_2.png
514
+ - doc/guide/src/tutorial/log_replay/goForward_3.png
515
+ - doc/guide/src/tutorial/log_replay/goForward_4.png
516
+ - doc/guide/src/tutorial/log_replay/goForward_5.png
517
+ - doc/guide/src/tutorial/log_replay/hierarchy_error_1.png
518
+ - doc/guide/src/tutorial/log_replay/hierarchy_error_2.png
519
+ - doc/guide/src/tutorial/log_replay/hierarchy_error_3.png
520
+ - doc/guide/src/tutorial/log_replay/moveto_code_error.png
521
+ - doc/guide/src/tutorial/log_replay/plan_repair_1.png
522
+ - doc/guide/src/tutorial/log_replay/plan_repair_2.png
523
+ - doc/guide/src/tutorial/log_replay/plan_repair_3.png
524
+ - doc/guide/src/tutorial/log_replay/plan_repair_4.png
525
+ - doc/guide/src/tutorial/log_replay/roby_log_main_window.png
526
+ - doc/guide/src/tutorial/log_replay/roby_log_relation_window.png
527
+ - doc/guide/src/tutorial/log_replay/roby_replay_event_representation.png
528
+ - doc/guide/src/tutorial/relations_display.page
529
+ - doc/guide/src/tutorial/roby_cycle_overview.png
530
+ - doc/guide/src/tutorial/shell.page
531
+ - doc/guide/src/tutorial/summary.page
532
+ - doc/guide/src/tutorial/tasks.page
402
533
  - doc/images/event_generalization.png
403
534
  - doc/images/exception_propagation_1.png
404
535
  - doc/images/exception_propagation_2.png
@@ -424,272 +555,342 @@ files:
424
555
  - doc/tutorials/04-EventPropagation.rdoc
425
556
  - doc/tutorials/05-ErrorHandling.rdoc
426
557
  - doc/tutorials/06-Overview.rdoc
427
- - ext/droby/dump.cc
428
- - ext/droby/extconf.rb
429
- - ext/graph/algorithm.cc
430
- - ext/graph/extconf.rb
431
- - ext/graph/graph.cc
432
- - ext/graph/graph.hh
433
- - ext/graph/iterator_sequence.hh
434
- - ext/graph/undirected_dfs.hh
435
- - ext/graph/undirected_graph.hh
436
558
  - lib/roby.rb
559
+ - lib/roby/actions.rb
560
+ - lib/roby/actions/action.rb
561
+ - lib/roby/actions/interface.rb
562
+ - lib/roby/actions/library.rb
563
+ - lib/roby/actions/models/action.rb
564
+ - lib/roby/actions/models/coordination_action.rb
565
+ - lib/roby/actions/models/interface.rb
566
+ - lib/roby/actions/models/interface_base.rb
567
+ - lib/roby/actions/models/library.rb
568
+ - lib/roby/actions/models/method_action.rb
569
+ - lib/roby/actions/task.rb
570
+ - lib/roby/and_generator.rb
437
571
  - lib/roby/app.rb
572
+ - lib/roby/app/autotest_console_reporter.rb
573
+ - lib/roby/app/base.rb
574
+ - lib/roby/app/cucumber.rb
575
+ - lib/roby/app/cucumber/controller.rb
576
+ - lib/roby/app/cucumber/helpers.rb
577
+ - lib/roby/app/cucumber/world.rb
578
+ - lib/roby/app/debug.rb
579
+ - lib/roby/app/gen.rb
438
580
  - lib/roby/app/plugins/rake.rb
439
581
  - lib/roby/app/rake.rb
582
+ - lib/roby/app/robot_config.rb
583
+ - lib/roby/app/robot_names.rb
440
584
  - lib/roby/app/run.rb
585
+ - lib/roby/app/scripts.rb
586
+ - lib/roby/app/scripts/autotest.rb
587
+ - lib/roby/app/scripts/display.rb
441
588
  - lib/roby/app/scripts/distributed.rb
442
- - lib/roby/app/scripts/generate/bookmarks.rb
443
- - lib/roby/app/scripts/replay.rb
589
+ - lib/roby/app/scripts/restart.rb
444
590
  - lib/roby/app/scripts/results.rb
445
591
  - lib/roby/app/scripts/run.rb
446
- - lib/roby/app/scripts/server.rb
447
592
  - lib/roby/app/scripts/shell.rb
448
593
  - lib/roby/app/scripts/test.rb
449
- - lib/roby/basic_object.rb
450
- - lib/roby/config.rb
594
+ - lib/roby/app/test_reporter.rb
595
+ - lib/roby/app/test_server.rb
596
+ - lib/roby/app/vagrant.rb
597
+ - lib/roby/backports.rb
598
+ - lib/roby/cli/display.rb
599
+ - lib/roby/cli/exceptions.rb
600
+ - lib/roby/cli/gen/actions/class.rb
601
+ - lib/roby/cli/gen/actions/test.rb
602
+ - lib/roby/cli/gen/app/.yardopts
603
+ - lib/roby/cli/gen/app/README.md
604
+ - lib/roby/cli/gen/app/Rakefile
605
+ - lib/roby/cli/gen/app/config/app.yml
606
+ - lib/roby/cli/gen/app/models/.gitattributes
607
+ - lib/roby/cli/gen/app/scripts/controllers/.gitattributes
608
+ - lib/roby/cli/gen/app/test/.gitignore
609
+ - lib/roby/cli/gen/class/class.rb
610
+ - lib/roby/cli/gen/class/test.rb
611
+ - lib/roby/cli/gen/helpers.rb
612
+ - lib/roby/cli/gen/module/module.rb
613
+ - lib/roby/cli/gen/module/test.rb
614
+ - lib/roby/cli/gen/roby_app/config/init.rb
615
+ - lib/roby/cli/gen/roby_app/config/robots/robot.rb
616
+ - lib/roby/cli/gen/task/class.rb
617
+ - lib/roby/cli/gen/task/test.rb
618
+ - lib/roby/cli/gen_main.rb
619
+ - lib/roby/cli/log.rb
620
+ - lib/roby/cli/log/flamegraph.html
621
+ - lib/roby/cli/log/flamegraph_renderer.rb
622
+ - lib/roby/cli/main.rb
623
+ - lib/roby/coordination.rb
624
+ - lib/roby/coordination/action_script.rb
625
+ - lib/roby/coordination/action_state_machine.rb
626
+ - lib/roby/coordination/actions.rb
627
+ - lib/roby/coordination/base.rb
628
+ - lib/roby/coordination/calculus.rb
629
+ - lib/roby/coordination/child.rb
630
+ - lib/roby/coordination/event.rb
631
+ - lib/roby/coordination/fault_handler.rb
632
+ - lib/roby/coordination/fault_handling_task.rb
633
+ - lib/roby/coordination/fault_response_table.rb
634
+ - lib/roby/coordination/models/action_script.rb
635
+ - lib/roby/coordination/models/action_state_machine.rb
636
+ - lib/roby/coordination/models/actions.rb
637
+ - lib/roby/coordination/models/arguments.rb
638
+ - lib/roby/coordination/models/base.rb
639
+ - lib/roby/coordination/models/capture.rb
640
+ - lib/roby/coordination/models/child.rb
641
+ - lib/roby/coordination/models/event.rb
642
+ - lib/roby/coordination/models/exceptions.rb
643
+ - lib/roby/coordination/models/fault_handler.rb
644
+ - lib/roby/coordination/models/fault_response_table.rb
645
+ - lib/roby/coordination/models/root.rb
646
+ - lib/roby/coordination/models/script.rb
647
+ - lib/roby/coordination/models/task.rb
648
+ - lib/roby/coordination/models/task_from_action.rb
649
+ - lib/roby/coordination/models/task_from_as_plan.rb
650
+ - lib/roby/coordination/models/task_from_instanciation_object.rb
651
+ - lib/roby/coordination/models/task_from_variable.rb
652
+ - lib/roby/coordination/models/task_with_dependencies.rb
653
+ - lib/roby/coordination/models/variable.rb
654
+ - lib/roby/coordination/script.rb
655
+ - lib/roby/coordination/script_instruction.rb
656
+ - lib/roby/coordination/task.rb
657
+ - lib/roby/coordination/task_base.rb
658
+ - lib/roby/coordination/task_script.rb
659
+ - lib/roby/coordination/task_state_machine.rb
451
660
  - lib/roby/decision_control.rb
452
- - lib/roby/distributed.rb
453
- - lib/roby/distributed/base.rb
454
- - lib/roby/distributed/communication.rb
455
- - lib/roby/distributed/connection_space.rb
456
- - lib/roby/distributed/distributed_object.rb
457
- - lib/roby/distributed/drb.rb
458
- - lib/roby/distributed/notifications.rb
459
- - lib/roby/distributed/peer.rb
460
- - lib/roby/distributed/protocol.rb
461
- - lib/roby/distributed/proxy.rb
462
- - lib/roby/distributed/subscription.rb
463
- - lib/roby/distributed/transaction.rb
661
+ - lib/roby/distributed_object.rb
662
+ - lib/roby/droby.rb
663
+ - lib/roby/droby/droby_id.rb
664
+ - lib/roby/droby/enable.rb
665
+ - lib/roby/droby/event_logger.rb
666
+ - lib/roby/droby/event_logging.rb
667
+ - lib/roby/droby/exceptions.rb
668
+ - lib/roby/droby/identifiable.rb
669
+ - lib/roby/droby/logfile.rb
670
+ - lib/roby/droby/logfile/client.rb
671
+ - lib/roby/droby/logfile/file_format.md
672
+ - lib/roby/droby/logfile/index.rb
673
+ - lib/roby/droby/logfile/reader.rb
674
+ - lib/roby/droby/logfile/server.rb
675
+ - lib/roby/droby/logfile/writer.rb
676
+ - lib/roby/droby/marshal.rb
677
+ - lib/roby/droby/marshallable.rb
678
+ - lib/roby/droby/null_event_logger.rb
679
+ - lib/roby/droby/object_manager.rb
680
+ - lib/roby/droby/peer_id.rb
681
+ - lib/roby/droby/plan_rebuilder.rb
682
+ - lib/roby/droby/rebuilt_plan.rb
683
+ - lib/roby/droby/remote_droby_id.rb
684
+ - lib/roby/droby/timepoints.rb
685
+ - lib/roby/droby/timepoints_ctf.metadata.erb
686
+ - lib/roby/droby/timepoints_ctf.rb
687
+ - lib/roby/droby/v5.rb
688
+ - lib/roby/droby/v5/builtin.rb
689
+ - lib/roby/droby/v5/droby_class.rb
690
+ - lib/roby/droby/v5/droby_constant.rb
691
+ - lib/roby/droby/v5/droby_dump.rb
692
+ - lib/roby/droby/v5/droby_id.rb
693
+ - lib/roby/droby/v5/droby_model.rb
694
+ - lib/roby/droby/v5/peer_id.rb
695
+ - lib/roby/droby/v5/remote_droby_id.rb
464
696
  - lib/roby/event.rb
697
+ - lib/roby/event_constraints.rb
698
+ - lib/roby/event_generator.rb
699
+ - lib/roby/event_structure/causal_link.rb
700
+ - lib/roby/event_structure/forwarding.rb
701
+ - lib/roby/event_structure/precedence.rb
702
+ - lib/roby/event_structure/signal.rb
703
+ - lib/roby/event_structure/temporal_constraints.rb
465
704
  - lib/roby/exceptions.rb
705
+ - lib/roby/executable_plan.rb
466
706
  - lib/roby/execution_engine.rb
467
- - lib/roby/external_process_task.rb
468
- - lib/roby/graph.rb
707
+ - lib/roby/filter_generator.rb
708
+ - lib/roby/gui/chronicle_view.rb
709
+ - lib/roby/gui/chronicle_widget.rb
710
+ - lib/roby/gui/dot_id.rb
711
+ - lib/roby/gui/exception_view.rb
712
+ - lib/roby/gui/log_display.rb
713
+ - lib/roby/gui/model_views.rb
714
+ - lib/roby/gui/model_views/action_interface.rb
715
+ - lib/roby/gui/model_views/task.rb
716
+ - lib/roby/gui/model_views/task.rhtml
717
+ - lib/roby/gui/object_info_view.rb
718
+ - lib/roby/gui/plan_dot_layout.rb
719
+ - lib/roby/gui/plan_rebuilder_widget.rb
720
+ - lib/roby/gui/qt4_toMSecsSinceEpoch.rb
721
+ - lib/roby/gui/relations_view.rb
722
+ - lib/roby/gui/relations_view/relations.ui
723
+ - lib/roby/gui/relations_view/relations_canvas.rb
724
+ - lib/roby/gui/relations_view/relations_config.rb
725
+ - lib/roby/gui/relations_view/relations_view.ui
726
+ - lib/roby/gui/scheduler_view.css
727
+ - lib/roby/gui/scheduler_view.rb
728
+ - lib/roby/gui/scheduler_view.rhtml
729
+ - lib/roby/gui/stepping.rb
730
+ - lib/roby/gui/stepping.ui
731
+ - lib/roby/gui/styles.rb
732
+ - lib/roby/gui/task_display_configuration.rb
733
+ - lib/roby/gui/task_state_at.rb
734
+ - lib/roby/hooks.rb
469
735
  - lib/roby/interface.rb
470
- - lib/roby/log.rb
471
- - lib/roby/log/chronicle.rb
472
- - lib/roby/log/console.rb
473
- - lib/roby/log/data_stream.rb
474
- - lib/roby/log/dot.rb
475
- - lib/roby/log/event_stream.rb
476
- - lib/roby/log/file.rb
477
- - lib/roby/log/gui/basic_display.ui
478
- - lib/roby/log/gui/basic_display_ui.rb
479
- - lib/roby/log/gui/chronicle.rb
480
- - lib/roby/log/gui/chronicle_view.rb
481
- - lib/roby/log/gui/chronicle_view.ui
482
- - lib/roby/log/gui/chronicle_view_ui.rb
483
- - lib/roby/log/gui/data_displays.rb
484
- - lib/roby/log/gui/data_displays.ui
485
- - lib/roby/log/gui/data_displays_ui.rb
486
- - lib/roby/log/gui/notifications.rb
487
- - lib/roby/log/gui/relations.rb
488
- - lib/roby/log/gui/relations.ui
489
- - lib/roby/log/gui/relations_ui.rb
490
- - lib/roby/log/gui/relations_view.rb
491
- - lib/roby/log/gui/relations_view.ui
492
- - lib/roby/log/gui/relations_view_ui.rb
493
- - lib/roby/log/gui/replay.rb
494
- - lib/roby/log/gui/replay_controls.rb
495
- - lib/roby/log/gui/replay_controls.ui
496
- - lib/roby/log/gui/replay_controls_ui.rb
497
- - lib/roby/log/gui/runtime.rb
498
- - lib/roby/log/hooks.rb
499
- - lib/roby/log/logger.rb
500
- - lib/roby/log/notifications.rb
501
- - lib/roby/log/plan_rebuilder.rb
502
- - lib/roby/log/relations.rb
503
- - lib/roby/log/server.rb
504
- - lib/roby/log/sqlite.rb
505
- - lib/roby/log/timings.rb
506
- - lib/roby/plan-object.rb
736
+ - lib/roby/interface/async.rb
737
+ - lib/roby/interface/async/action_monitor.rb
738
+ - lib/roby/interface/async/interface.rb
739
+ - lib/roby/interface/async/job_monitor.rb
740
+ - lib/roby/interface/async/log.rb
741
+ - lib/roby/interface/async/new_job_listener.rb
742
+ - lib/roby/interface/async/ui_connector.rb
743
+ - lib/roby/interface/client.rb
744
+ - lib/roby/interface/command.rb
745
+ - lib/roby/interface/command_argument.rb
746
+ - lib/roby/interface/command_library.rb
747
+ - lib/roby/interface/droby_channel.rb
748
+ - lib/roby/interface/exceptions.rb
749
+ - lib/roby/interface/interface.rb
750
+ - lib/roby/interface/job.rb
751
+ - lib/roby/interface/rest.rb
752
+ - lib/roby/interface/rest/api.rb
753
+ - lib/roby/interface/rest/helpers.rb
754
+ - lib/roby/interface/rest/server.rb
755
+ - lib/roby/interface/server.rb
756
+ - lib/roby/interface/shell_client.rb
757
+ - lib/roby/interface/shell_subcommand.rb
758
+ - lib/roby/interface/subcommand_client.rb
759
+ - lib/roby/interface/tcp.rb
760
+ - lib/roby/models/arguments.rb
761
+ - lib/roby/models/plan_object.rb
762
+ - lib/roby/models/task.rb
763
+ - lib/roby/models/task_event.rb
764
+ - lib/roby/models/task_service.rb
765
+ - lib/roby/or_generator.rb
507
766
  - lib/roby/plan.rb
508
- - lib/roby/planning.rb
509
- - lib/roby/planning/loops.rb
510
- - lib/roby/planning/model.rb
511
- - lib/roby/planning/task.rb
512
- - lib/roby/query.rb
767
+ - lib/roby/plan_object.rb
768
+ - lib/roby/plan_service.rb
769
+ - lib/roby/promise.rb
770
+ - lib/roby/queries.rb
771
+ - lib/roby/queries/and_matcher.rb
772
+ - lib/roby/queries/any.rb
773
+ - lib/roby/queries/code_error_matcher.rb
774
+ - lib/roby/queries/event_generator_matcher.rb
775
+ - lib/roby/queries/execution_exception_matcher.rb
776
+ - lib/roby/queries/index.rb
777
+ - lib/roby/queries/localized_error_matcher.rb
778
+ - lib/roby/queries/matcher_base.rb
779
+ - lib/roby/queries/none.rb
780
+ - lib/roby/queries/not_matcher.rb
781
+ - lib/roby/queries/op_matcher.rb
782
+ - lib/roby/queries/or_matcher.rb
783
+ - lib/roby/queries/plan_object_matcher.rb
784
+ - lib/roby/queries/query.rb
785
+ - lib/roby/queries/task_event_generator_matcher.rb
786
+ - lib/roby/queries/task_matcher.rb
513
787
  - lib/roby/relations.rb
514
- - lib/roby/relations/conflicts.rb
515
- - lib/roby/relations/dependency.rb
516
- - lib/roby/relations/ensured.rb
517
- - lib/roby/relations/error_handling.rb
518
- - lib/roby/relations/events.rb
519
- - lib/roby/relations/executed_by.rb
520
- - lib/roby/relations/influence.rb
521
- - lib/roby/relations/planned_by.rb
788
+ - lib/roby/relations/bidirectional_directed_adjacency_graph.rb
789
+ - lib/roby/relations/directed_relation_support.rb
790
+ - lib/roby/relations/event_relation_graph.rb
791
+ - lib/roby/relations/fork_merge_visitor.rb
792
+ - lib/roby/relations/graph.rb
793
+ - lib/roby/relations/models/directed_relation_support.rb
794
+ - lib/roby/relations/models/graph.rb
795
+ - lib/roby/relations/models/task_relation_graph.rb
796
+ - lib/roby/relations/space.rb
797
+ - lib/roby/relations/task_relation_graph.rb
522
798
  - lib/roby/robot.rb
523
799
  - lib/roby/schedulers/basic.rb
800
+ - lib/roby/schedulers/null.rb
801
+ - lib/roby/schedulers/reporting.rb
802
+ - lib/roby/schedulers/state.rb
803
+ - lib/roby/schedulers/temporal.rb
804
+ - lib/roby/singletons.rb
524
805
  - lib/roby/standalone.rb
525
806
  - lib/roby/standard_errors.rb
526
807
  - lib/roby/state.rb
808
+ - lib/roby/state/conf_model.rb
527
809
  - lib/roby/state/events.rb
528
- - lib/roby/state/information.rb
810
+ - lib/roby/state/goal_model.rb
811
+ - lib/roby/state/open_struct.rb
812
+ - lib/roby/state/open_struct_model.rb
529
813
  - lib/roby/state/pos.rb
530
814
  - lib/roby/state/shapes.rb
531
- - lib/roby/state/state.rb
815
+ - lib/roby/state/state_model.rb
816
+ - lib/roby/state/task.rb
532
817
  - lib/roby/support.rb
533
- - lib/roby/task-operations.rb
534
818
  - lib/roby/task.rb
535
- - lib/roby/task_index.rb
819
+ - lib/roby/task_arguments.rb
820
+ - lib/roby/task_event.rb
821
+ - lib/roby/task_event_generator.rb
822
+ - lib/roby/task_service.rb
823
+ - lib/roby/task_structure/conflicts.rb
824
+ - lib/roby/task_structure/dependency.rb
825
+ - lib/roby/task_structure/error_handling.rb
826
+ - lib/roby/task_structure/executed_by.rb
827
+ - lib/roby/task_structure/planned_by.rb
828
+ - lib/roby/tasks/aggregator.rb
829
+ - lib/roby/tasks/external_process.rb
830
+ - lib/roby/tasks/group.rb
831
+ - lib/roby/tasks/null.rb
832
+ - lib/roby/tasks/parallel.rb
833
+ - lib/roby/tasks/sequence.rb
834
+ - lib/roby/tasks/simple.rb
835
+ - lib/roby/tasks/thread.rb
836
+ - lib/roby/tasks/timeout.rb
837
+ - lib/roby/tasks/virtual.rb
838
+ - lib/roby/template_plan.rb
839
+ - lib/roby/test/aruba_minitest.rb
840
+ - lib/roby/test/assertion.rb
841
+ - lib/roby/test/assertions.rb
536
842
  - lib/roby/test/common.rb
537
- - lib/roby/test/distributed.rb
843
+ - lib/roby/test/dsl.rb
844
+ - lib/roby/test/error.rb
845
+ - lib/roby/test/event_reporter.rb
846
+ - lib/roby/test/execution_expectations.rb
847
+ - lib/roby/test/expect_execution.rb
848
+ - lib/roby/test/minitest_helpers.rb
849
+ - lib/roby/test/roby_app_helpers.rb
850
+ - lib/roby/test/run_planners.rb
851
+ - lib/roby/test/self.rb
852
+ - lib/roby/test/spec.rb
538
853
  - lib/roby/test/tasks/empty_task.rb
539
854
  - lib/roby/test/tasks/goto.rb
540
- - lib/roby/test/tasks/simple_task.rb
855
+ - lib/roby/test/teardown_plans.rb
541
856
  - lib/roby/test/testcase.rb
542
857
  - lib/roby/test/tools.rb
543
- - lib/roby/thread_task.rb
544
- - lib/roby/transactions.rb
545
- - lib/roby/transactions/proxy.rb
858
+ - lib/roby/test/validate_state_machine.rb
859
+ - lib/roby/transaction.rb
860
+ - lib/roby/transaction/event_generator_proxy.rb
861
+ - lib/roby/transaction/plan_object_proxy.rb
862
+ - lib/roby/transaction/plan_service_proxy.rb
863
+ - lib/roby/transaction/proxying.rb
864
+ - lib/roby/transaction/task_event_generator_proxy.rb
865
+ - lib/roby/transaction/task_proxy.rb
866
+ - lib/roby/until_generator.rb
867
+ - lib/roby/version.rb
868
+ - lib/roby/yard.rb
869
+ - lib/yard-roby.rb
546
870
  - manifest.xml
547
- - plugins/fault_injection/History.txt
548
- - plugins/fault_injection/README.txt
549
- - plugins/fault_injection/Rakefile
550
- - plugins/fault_injection/TODO.txt
551
- - plugins/fault_injection/app.rb
552
- - plugins/fault_injection/fault_injection.rb
553
- - plugins/fault_injection/test/test_fault_injection.rb
554
- - plugins/subsystems/README.txt
555
- - plugins/subsystems/Rakefile
556
- - plugins/subsystems/app.rb
557
- - plugins/subsystems/test/app/README
558
- - plugins/subsystems/test/app/Rakefile
559
- - plugins/subsystems/test/app/config/app.yml
560
- - plugins/subsystems/test/app/config/init.rb
561
- - plugins/subsystems/test/app/config/roby.yml
562
- - plugins/subsystems/test/app/planners/main.rb
563
- - plugins/subsystems/test/app/scripts/distributed
564
- - plugins/subsystems/test/app/scripts/replay
565
- - plugins/subsystems/test/app/scripts/results
566
- - plugins/subsystems/test/app/scripts/run
567
- - plugins/subsystems/test/app/scripts/server
568
- - plugins/subsystems/test/app/scripts/shell
569
- - plugins/subsystems/test/app/scripts/test
570
- - plugins/subsystems/test/app/tasks/services.rb
571
- - plugins/subsystems/test/test_subsystems.rb
572
- - test/distributed/test_communication.rb
573
- - test/distributed/test_connection.rb
574
- - test/distributed/test_execution.rb
575
- - test/distributed/test_mixed_plan.rb
576
- - test/distributed/test_plan_notifications.rb
577
- - test/distributed/test_protocol.rb
578
- - test/distributed/test_query.rb
579
- - test/distributed/test_remote_plan.rb
580
- - test/distributed/test_transaction.rb
581
- - test/mockups/external_process
582
- - test/mockups/tasks.rb
583
- - test/planning/test_loops.rb
584
- - test/planning/test_model.rb
585
- - test/planning/test_task.rb
586
- - test/relations/test_conflicts.rb
587
- - test/relations/test_dependency.rb
588
- - test/relations/test_ensured.rb
589
- - test/relations/test_executed_by.rb
590
- - test/relations/test_planned_by.rb
591
- - test/suite_core.rb
592
- - test/suite_distributed.rb
593
- - test/suite_planning.rb
594
- - test/suite_relations.rb
595
- - test/tasks/test_external_process.rb
596
- - test/tasks/test_thread_task.rb
597
- - test/test_bgl.rb
598
- - test/test_event.rb
599
- - test/test_exceptions.rb
600
- - test/test_execution_engine.rb
601
- - test/test_gui.rb
602
- - test/test_interface.rb
603
- - test/test_log.rb
604
- - test/test_log_server.rb
605
- - test/test_plan.rb
606
- - test/test_query.rb
607
- - test/test_relations.rb
608
- - test/test_state.rb
609
- - test/test_support.rb
610
- - test/test_task.rb
611
- - test/test_testcase.rb
612
- - test/test_transactions.rb
613
- - test/test_transactions_proxy.rb
614
- has_rdoc: true
615
- homepage: |
616
- http://sites.google.com/sites/rubyinmotion
617
-
618
- licenses: []
619
-
620
- post_install_message: |-
621
- <b>Note for Gem users</b> While using the normal RDoc generator, the
622
- documentation generation process of Roby is a bit modified. In particular, the
623
- plugin documentation is separated from the core documentation, and a clearer
624
- template is used instead of the standard one. RubyGems does not support any
625
- kind of customization in that area, so I would _strongly_ suggest that you use
626
- the documentation provided at http://roby.rubyforge.org instead of the
627
- RubyGem-generated one.
628
- rdoc_options:
629
- - --main
630
- - README.txt
631
- - --main
632
- - README.txt
633
- - --accessor
634
- - attribute
635
- - --accessor
636
- - attr_predicate
637
- require_paths:
871
+ - roby.gemspec
872
+ homepage: http://rock-robotics.org
873
+ licenses:
874
+ - BSD
875
+ metadata: {}
876
+ post_install_message:
877
+ rdoc_options: []
878
+ require_paths:
638
879
  - lib
639
- - ext
640
- required_ruby_version: !ruby/object:Gem::Requirement
641
- requirements:
880
+ required_ruby_version: !ruby/object:Gem::Requirement
881
+ requirements:
642
882
  - - ">="
643
- - !ruby/object:Gem::Version
644
- version: "0"
645
- version:
646
- required_rubygems_version: !ruby/object:Gem::Requirement
647
- requirements:
883
+ - !ruby/object:Gem::Version
884
+ version: '0'
885
+ required_rubygems_version: !ruby/object:Gem::Requirement
886
+ requirements:
648
887
  - - ">="
649
- - !ruby/object:Gem::Version
650
- version: "0"
651
- version:
888
+ - !ruby/object:Gem::Version
889
+ version: '0'
652
890
  requirements: []
653
-
654
- rubyforge_project: roby
655
- rubygems_version: 1.3.5
891
+ rubyforge_project:
892
+ rubygems_version: 2.5.1
656
893
  signing_key:
657
- specification_version: 3
894
+ specification_version: 4
658
895
  summary: A plan-based control framework for autonomous systems
659
- test_files:
660
- - test/test_transactions_proxy.rb
661
- - test/test_gui.rb
662
- - test/tasks/test_thread_task.rb
663
- - test/tasks/test_external_process.rb
664
- - test/test_bgl.rb
665
- - test/test_event.rb
666
- - test/test_testcase.rb
667
- - test/test_execution_engine.rb
668
- - test/planning/test_model.rb
669
- - test/planning/test_loops.rb
670
- - test/planning/test_task.rb
671
- - test/test_query.rb
672
- - test/test_log_server.rb
673
- - test/distributed/test_plan_notifications.rb
674
- - test/distributed/test_execution.rb
675
- - test/distributed/test_protocol.rb
676
- - test/distributed/test_mixed_plan.rb
677
- - test/distributed/test_connection.rb
678
- - test/distributed/test_remote_plan.rb
679
- - test/distributed/test_query.rb
680
- - test/distributed/test_transaction.rb
681
- - test/distributed/test_communication.rb
682
- - test/relations/test_conflicts.rb
683
- - test/relations/test_dependency.rb
684
- - test/relations/test_ensured.rb
685
- - test/relations/test_planned_by.rb
686
- - test/relations/test_executed_by.rb
687
- - test/test_log.rb
688
- - test/test_interface.rb
689
- - test/test_exceptions.rb
690
- - test/test_state.rb
691
- - test/test_plan.rb
692
- - test/test_transactions.rb
693
- - test/test_support.rb
694
- - test/test_relations.rb
695
- - test/test_task.rb
896
+ test_files: []