tdiary 5.0.13 → 5.0.14

Sign up to get free protection for your applications and to get access to all the features.
Files changed (4151) hide show
  1. checksums.yaml +4 -4
  2. data/ChangeLog +7 -0
  3. data/Gemfile.lock +18 -22
  4. data/doc/INSTALL-paas.md +1 -85
  5. data/lib/tdiary/plugin.rb +30 -30
  6. data/lib/tdiary/plugin/00default.rb +1 -1
  7. data/lib/tdiary/version.rb +1 -1
  8. data/misc/paas/heroku/Gemfile.local +1 -1
  9. data/misc/paas/heroku/Gemfile.lock +45 -49
  10. data/misc/plugin/amazon.rb +1 -1
  11. data/misc/plugin/amp.rb +4 -4
  12. data/public/index.rdf +3 -15
  13. metadata +2 -4140
  14. data/tdiary.conf +0 -243
  15. data/vendor/bundle/bin/coveralls +0 -27
  16. data/vendor/bundle/bin/emot +0 -27
  17. data/vendor/bundle/bin/hikidoc +0 -27
  18. data/vendor/bundle/bin/htmldiff +0 -29
  19. data/vendor/bundle/bin/jasmine +0 -27
  20. data/vendor/bundle/bin/launchy +0 -27
  21. data/vendor/bundle/bin/ldiff +0 -29
  22. data/vendor/bundle/bin/nokogiri +0 -27
  23. data/vendor/bundle/bin/pit +0 -27
  24. data/vendor/bundle/bin/racksh +0 -27
  25. data/vendor/bundle/bin/rackup +0 -27
  26. data/vendor/bundle/bin/rake +0 -27
  27. data/vendor/bundle/bin/redcarpet +0 -27
  28. data/vendor/bundle/bin/rspec +0 -27
  29. data/vendor/bundle/bin/sequel +0 -27
  30. data/vendor/bundle/bin/term_cdiff +0 -27
  31. data/vendor/bundle/bin/term_colortab +0 -27
  32. data/vendor/bundle/bin/term_decolor +0 -27
  33. data/vendor/bundle/bin/term_display +0 -27
  34. data/vendor/bundle/bin/term_mandel +0 -27
  35. data/vendor/bundle/bin/term_snow +0 -27
  36. data/vendor/bundle/bin/thor +0 -27
  37. data/vendor/bundle/cache/addressable-2.5.2.gem +0 -0
  38. data/vendor/bundle/cache/capybara-3.15.0.gem +0 -0
  39. data/vendor/bundle/cache/childprocess-0.9.0.gem +0 -0
  40. data/vendor/bundle/cache/coveralls-0.8.22.gem +0 -0
  41. data/vendor/bundle/cache/diff-lcs-1.3.gem +0 -0
  42. data/vendor/bundle/cache/docile-1.3.1.gem +0 -0
  43. data/vendor/bundle/cache/emot-0.0.4.gem +0 -0
  44. data/vendor/bundle/cache/faraday-0.15.4.gem +0 -0
  45. data/vendor/bundle/cache/fastimage-2.1.5.gem +0 -0
  46. data/vendor/bundle/cache/ffi-1.10.0.gem +0 -0
  47. data/vendor/bundle/cache/hikidoc-0.1.0.gem +0 -0
  48. data/vendor/bundle/cache/jasmine-2.99.0.gem +0 -0
  49. data/vendor/bundle/cache/jasmine-core-2.99.2.gem +0 -0
  50. data/vendor/bundle/cache/json-2.2.0.gem +0 -0
  51. data/vendor/bundle/cache/launchy-2.4.3.gem +0 -0
  52. data/vendor/bundle/cache/mail-2.7.1.gem +0 -0
  53. data/vendor/bundle/cache/mime-types-3.2.2.gem +0 -0
  54. data/vendor/bundle/cache/mime-types-data-3.2018.0812.gem +0 -0
  55. data/vendor/bundle/cache/mini_mime-1.0.1.gem +0 -0
  56. data/vendor/bundle/cache/mini_portile2-2.4.0.gem +0 -0
  57. data/vendor/bundle/cache/multipart-post-2.0.0.gem +0 -0
  58. data/vendor/bundle/cache/nokogiri-1.10.2.gem +0 -0
  59. data/vendor/bundle/cache/octokit-4.13.0.gem +0 -0
  60. data/vendor/bundle/cache/phantomjs-2.1.1.0.gem +0 -0
  61. data/vendor/bundle/cache/pit-0.0.7.gem +0 -0
  62. data/vendor/bundle/cache/power_assert-1.1.4.gem +0 -0
  63. data/vendor/bundle/cache/public_suffix-3.0.3.gem +0 -0
  64. data/vendor/bundle/cache/rack-2.0.6.gem +0 -0
  65. data/vendor/bundle/cache/rack-test-1.1.0.gem +0 -0
  66. data/vendor/bundle/cache/racksh-1.0.0.gem +0 -0
  67. data/vendor/bundle/cache/rake-12.3.2.gem +0 -0
  68. data/vendor/bundle/cache/redcarpet-3.4.0.gem +0 -0
  69. data/vendor/bundle/cache/regexp_parser-1.3.0.gem +0 -0
  70. data/vendor/bundle/cache/rspec-3.8.0.gem +0 -0
  71. data/vendor/bundle/cache/rspec-core-3.8.0.gem +0 -0
  72. data/vendor/bundle/cache/rspec-expectations-3.8.2.gem +0 -0
  73. data/vendor/bundle/cache/rspec-mocks-3.8.0.gem +0 -0
  74. data/vendor/bundle/cache/rspec-support-3.8.0.gem +0 -0
  75. data/vendor/bundle/cache/rubyzip-1.2.2.gem +0 -0
  76. data/vendor/bundle/cache/sawyer-0.8.1.gem +0 -0
  77. data/vendor/bundle/cache/selenium-webdriver-3.141.0.gem +0 -0
  78. data/vendor/bundle/cache/sequel-5.18.0.gem +0 -0
  79. data/vendor/bundle/cache/simplecov-0.16.1.gem +0 -0
  80. data/vendor/bundle/cache/simplecov-html-0.10.2.gem +0 -0
  81. data/vendor/bundle/cache/sqlite3-1.4.0.gem +0 -0
  82. data/vendor/bundle/cache/term-ansicolor-1.7.1.gem +0 -0
  83. data/vendor/bundle/cache/test-unit-3.3.1.gem +0 -0
  84. data/vendor/bundle/cache/thor-0.19.4.gem +0 -0
  85. data/vendor/bundle/cache/tins-1.20.2.gem +0 -0
  86. data/vendor/bundle/cache/xpath-3.2.0.gem +0 -0
  87. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/ffi-1.10.0/ffi_c.so +0 -0
  88. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/ffi-1.10.0/gem.build_complete +0 -0
  89. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/ffi-1.10.0/gem_make.out +0 -50
  90. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/ffi-1.10.0/mkmf.log +0 -479
  91. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/json-2.2.0/gem.build_complete +0 -0
  92. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/json-2.2.0/gem_make.out +0 -13
  93. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/json-2.2.0/json/ext/generator.so +0 -0
  94. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/json-2.2.0/json/ext/parser.so +0 -0
  95. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/json-2.2.0/mkmf.log +0 -68
  96. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/nokogiri-1.10.2/gem.build_complete +0 -0
  97. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/nokogiri-1.10.2/gem_make.out +0 -449
  98. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/nokogiri-1.10.2/mkmf.log +0 -568
  99. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/nokogiri-1.10.2/nokogiri/nokogiri.so +0 -0
  100. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/redcarpet-3.4.0/gem.build_complete +0 -0
  101. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/redcarpet-3.4.0/gem_make.out +0 -111
  102. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/redcarpet-3.4.0/redcarpet.so +0 -0
  103. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/sqlite3-1.4.0/gem.build_complete +0 -0
  104. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/sqlite3-1.4.0/gem_make.out +0 -80
  105. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/sqlite3-1.4.0/mkmf.log +0 -786
  106. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/sqlite3-1.4.0/sqlite3/sqlite3_native.so +0 -0
  107. data/vendor/bundle/gems/addressable-2.5.2/CHANGELOG.md +0 -216
  108. data/vendor/bundle/gems/addressable-2.5.2/Gemfile +0 -32
  109. data/vendor/bundle/gems/addressable-2.5.2/LICENSE.txt +0 -202
  110. data/vendor/bundle/gems/addressable-2.5.2/README.md +0 -121
  111. data/vendor/bundle/gems/addressable-2.5.2/Rakefile +0 -32
  112. data/vendor/bundle/gems/addressable-2.5.2/data/unicode.data +0 -0
  113. data/vendor/bundle/gems/addressable-2.5.2/lib/addressable.rb +0 -2
  114. data/vendor/bundle/gems/addressable-2.5.2/lib/addressable/idna.rb +0 -25
  115. data/vendor/bundle/gems/addressable-2.5.2/lib/addressable/idna/native.rb +0 -59
  116. data/vendor/bundle/gems/addressable-2.5.2/lib/addressable/idna/pure.rb +0 -677
  117. data/vendor/bundle/gems/addressable-2.5.2/lib/addressable/template.rb +0 -1065
  118. data/vendor/bundle/gems/addressable-2.5.2/lib/addressable/uri.rb +0 -2492
  119. data/vendor/bundle/gems/addressable-2.5.2/lib/addressable/version.rb +0 -30
  120. data/vendor/bundle/gems/addressable-2.5.2/spec/addressable/idna_spec.rb +0 -298
  121. data/vendor/bundle/gems/addressable-2.5.2/spec/addressable/net_http_compat_spec.rb +0 -28
  122. data/vendor/bundle/gems/addressable-2.5.2/spec/addressable/rack_mount_compat_spec.rb +0 -104
  123. data/vendor/bundle/gems/addressable-2.5.2/spec/addressable/security_spec.rb +0 -57
  124. data/vendor/bundle/gems/addressable-2.5.2/spec/addressable/template_spec.rb +0 -1419
  125. data/vendor/bundle/gems/addressable-2.5.2/spec/addressable/uri_spec.rb +0 -6468
  126. data/vendor/bundle/gems/addressable-2.5.2/spec/spec_helper.rb +0 -21
  127. data/vendor/bundle/gems/addressable-2.5.2/tasks/clobber.rake +0 -2
  128. data/vendor/bundle/gems/addressable-2.5.2/tasks/gem.rake +0 -91
  129. data/vendor/bundle/gems/addressable-2.5.2/tasks/git.rake +0 -45
  130. data/vendor/bundle/gems/addressable-2.5.2/tasks/metrics.rake +0 -22
  131. data/vendor/bundle/gems/addressable-2.5.2/tasks/rspec.rake +0 -21
  132. data/vendor/bundle/gems/addressable-2.5.2/tasks/yard.rake +0 -27
  133. data/vendor/bundle/gems/capybara-3.15.0/History.md +0 -1500
  134. data/vendor/bundle/gems/capybara-3.15.0/License.txt +0 -22
  135. data/vendor/bundle/gems/capybara-3.15.0/README.md +0 -1115
  136. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara.rb +0 -563
  137. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/config.rb +0 -91
  138. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/cucumber.rb +0 -27
  139. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/driver/base.rb +0 -170
  140. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/driver/node.rb +0 -127
  141. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/dsl.rb +0 -57
  142. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/helpers.rb +0 -106
  143. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/minitest.rb +0 -284
  144. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/minitest/spec.rb +0 -195
  145. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/node/actions.rb +0 -405
  146. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/node/base.rb +0 -143
  147. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/node/document.rb +0 -48
  148. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/node/document_matchers.rb +0 -67
  149. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/node/element.rb +0 -507
  150. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/node/finders.rb +0 -325
  151. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/node/matchers.rb +0 -779
  152. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/node/simple.rb +0 -203
  153. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/queries/ancestor_query.rb +0 -29
  154. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/queries/base_query.rb +0 -105
  155. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/queries/current_path_query.rb +0 -51
  156. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/queries/match_query.rb +0 -26
  157. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/queries/selector_query.rb +0 -451
  158. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/queries/sibling_query.rb +0 -25
  159. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/queries/style_query.rb +0 -45
  160. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/queries/text_query.rb +0 -104
  161. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/queries/title_query.rb +0 -39
  162. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rack_test/browser.rb +0 -135
  163. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rack_test/css_handlers.rb +0 -13
  164. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rack_test/driver.rb +0 -109
  165. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rack_test/errors.rb +0 -6
  166. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rack_test/form.rb +0 -127
  167. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rack_test/node.rb +0 -289
  168. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rails.rb +0 -16
  169. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/result.rb +0 -162
  170. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rspec.rb +0 -29
  171. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rspec/features.rb +0 -23
  172. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rspec/matcher_proxies.rb +0 -80
  173. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rspec/matchers.rb +0 -164
  174. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rspec/matchers/base.rb +0 -98
  175. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rspec/matchers/become_closed.rb +0 -33
  176. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rspec/matchers/compound.rb +0 -88
  177. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rspec/matchers/have_current_path.rb +0 -29
  178. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rspec/matchers/have_selector.rb +0 -69
  179. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rspec/matchers/have_text.rb +0 -33
  180. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rspec/matchers/have_title.rb +0 -29
  181. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rspec/matchers/match_selector.rb +0 -27
  182. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rspec/matchers/match_style.rb +0 -38
  183. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selector.rb +0 -619
  184. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selector/builders/css_builder.rb +0 -80
  185. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selector/builders/xpath_builder.rb +0 -69
  186. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selector/css.rb +0 -100
  187. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selector/filter.rb +0 -5
  188. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selector/filter_set.rb +0 -120
  189. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selector/filters/base.rb +0 -68
  190. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selector/filters/expression_filter.rb +0 -22
  191. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selector/filters/locator_filter.rb +0 -19
  192. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selector/filters/node_filter.rb +0 -31
  193. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selector/regexp_disassembler.rb +0 -207
  194. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selector/selector.rb +0 -556
  195. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selector/xpath_extensions.rb +0 -9
  196. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selenium/driver.rb +0 -421
  197. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selenium/driver_specializations/chrome_driver.rb +0 -61
  198. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selenium/driver_specializations/firefox_driver.rb +0 -50
  199. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selenium/driver_specializations/internet_explorer_driver.rb +0 -13
  200. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selenium/driver_specializations/safari_driver.rb +0 -15
  201. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selenium/extensions/find.rb +0 -88
  202. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selenium/extensions/html5_drag.rb +0 -110
  203. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selenium/extensions/scroll.rb +0 -78
  204. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selenium/node.rb +0 -440
  205. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selenium/nodes/chrome_node.rb +0 -36
  206. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selenium/nodes/firefox_node.rb +0 -153
  207. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selenium/nodes/safari_node.rb +0 -145
  208. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selenium/patches/pause_duration_fix.rb +0 -9
  209. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/server.rb +0 -110
  210. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/server/animation_disabler.rb +0 -58
  211. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/server/checker.rb +0 -40
  212. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/server/middleware.rb +0 -59
  213. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/session.rb +0 -920
  214. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/session/config.rb +0 -124
  215. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/session/matchers.rb +0 -87
  216. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/fixtures/another_test_file.txt +0 -1
  217. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/fixtures/capybara.jpg +0 -3
  218. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/fixtures/no_extension +0 -1
  219. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/fixtures/test_file.txt +0 -1
  220. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/public/jquery-ui.js +0 -13
  221. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/public/jquery.js +0 -5
  222. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/public/test.js +0 -186
  223. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/accept_alert_spec.rb +0 -81
  224. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/accept_confirm_spec.rb +0 -32
  225. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/accept_prompt_spec.rb +0 -78
  226. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/all_spec.rb +0 -200
  227. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/ancestor_spec.rb +0 -83
  228. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/assert_all_of_selectors_spec.rb +0 -140
  229. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/assert_current_path_spec.rb +0 -72
  230. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/assert_selector_spec.rb +0 -143
  231. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/assert_style_spec.rb +0 -26
  232. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/assert_text_spec.rb +0 -254
  233. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/assert_title_spec.rb +0 -93
  234. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/attach_file_spec.rb +0 -208
  235. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/body_spec.rb +0 -23
  236. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/check_spec.rb +0 -229
  237. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/choose_spec.rb +0 -115
  238. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/click_button_spec.rb +0 -474
  239. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/click_link_or_button_spec.rb +0 -129
  240. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/click_link_spec.rb +0 -218
  241. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/current_scope_spec.rb +0 -31
  242. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/current_url_spec.rb +0 -115
  243. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/dismiss_confirm_spec.rb +0 -36
  244. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/dismiss_prompt_spec.rb +0 -21
  245. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/element/assert_match_selector_spec.rb +0 -38
  246. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/element/match_css_spec.rb +0 -31
  247. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/element/match_xpath_spec.rb +0 -25
  248. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/element/matches_selector_spec.rb +0 -120
  249. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/evaluate_async_script_spec.rb +0 -23
  250. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/evaluate_script_spec.rb +0 -37
  251. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/execute_script_spec.rb +0 -28
  252. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/fill_in_spec.rb +0 -251
  253. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/find_button_spec.rb +0 -74
  254. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/find_by_id_spec.rb +0 -33
  255. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/find_field_spec.rb +0 -113
  256. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/find_link_spec.rb +0 -70
  257. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/find_spec.rb +0 -477
  258. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/first_spec.rb +0 -156
  259. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/frame/frame_title_spec.rb +0 -23
  260. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/frame/frame_url_spec.rb +0 -23
  261. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/frame/switch_to_frame_spec.rb +0 -103
  262. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/frame/within_frame_spec.rb +0 -101
  263. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/go_back_spec.rb +0 -12
  264. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/go_forward_spec.rb +0 -14
  265. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/has_all_selectors_spec.rb +0 -69
  266. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/has_any_selectors_spec.rb +0 -25
  267. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/has_button_spec.rb +0 -69
  268. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/has_css_spec.rb +0 -338
  269. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/has_current_path_spec.rb +0 -136
  270. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/has_field_spec.rb +0 -331
  271. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/has_link_spec.rb +0 -39
  272. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/has_none_selectors_spec.rb +0 -78
  273. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/has_select_spec.rb +0 -282
  274. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/has_selector_spec.rb +0 -202
  275. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/has_table_spec.rb +0 -152
  276. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/has_text_spec.rb +0 -347
  277. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/has_title_spec.rb +0 -71
  278. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/has_xpath_spec.rb +0 -149
  279. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/headers_spec.rb +0 -8
  280. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/html_spec.rb +0 -47
  281. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/matches_style_spec.rb +0 -35
  282. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/node_spec.rb +0 -734
  283. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/node_wrapper_spec.rb +0 -39
  284. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/refresh_spec.rb +0 -33
  285. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/reset_session_spec.rb +0 -148
  286. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/response_code_spec.rb +0 -8
  287. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/save_and_open_page_spec.rb +0 -21
  288. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/save_and_open_screenshot_spec.rb +0 -43
  289. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/save_page_spec.rb +0 -110
  290. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/save_screenshot_spec.rb +0 -55
  291. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/screenshot_spec.rb +0 -18
  292. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/scroll_spec.rb +0 -117
  293. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/select_spec.rb +0 -234
  294. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/selectors_spec.rb +0 -77
  295. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/sibling_spec.rb +0 -52
  296. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/source_spec.rb +0 -0
  297. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/text_spec.rb +0 -74
  298. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/title_spec.rb +0 -29
  299. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/uncheck_spec.rb +0 -100
  300. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/unselect_spec.rb +0 -116
  301. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/visit_spec.rb +0 -204
  302. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/window/become_closed_spec.rb +0 -89
  303. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/window/current_window_spec.rb +0 -28
  304. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/window/open_new_window_spec.rb +0 -31
  305. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/window/switch_to_window_spec.rb +0 -132
  306. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/window/window_opened_by_spec.rb +0 -99
  307. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/window/window_spec.rb +0 -202
  308. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/window/windows_spec.rb +0 -34
  309. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/window/within_window_spec.rb +0 -157
  310. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/within_spec.rb +0 -199
  311. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/spec_helper.rb +0 -130
  312. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/test_app.rb +0 -217
  313. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/buttons.erb +0 -5
  314. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/fieldsets.erb +0 -30
  315. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/form.erb +0 -665
  316. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/frame_child.erb +0 -17
  317. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/frame_one.erb +0 -9
  318. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/frame_parent.erb +0 -9
  319. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/frame_two.erb +0 -9
  320. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/header_links.erb +0 -8
  321. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/host_links.erb +0 -13
  322. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/initial_alert.erb +0 -10
  323. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/obscured.erb +0 -47
  324. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/path.erb +0 -13
  325. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/popup_one.erb +0 -9
  326. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/popup_two.erb +0 -9
  327. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/postback.erb +0 -14
  328. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/scroll.erb +0 -20
  329. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/tables.erb +0 -130
  330. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_animation.erb +0 -46
  331. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_base_tag.erb +0 -11
  332. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_count.erb +0 -8
  333. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_fixed_header_footer.erb +0 -17
  334. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_hover.erb +0 -24
  335. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_hover1.erb +0 -10
  336. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_html.erb +0 -182
  337. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_html5_svg.erb +0 -20
  338. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_html_entities.erb +0 -2
  339. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_js.erb +0 -160
  340. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_namespace.erb +0 -20
  341. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_scope.erb +0 -42
  342. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_scope_other.erb +0 -6
  343. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_simple_html.erb +0 -2
  344. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_slow_unload.erb +0 -17
  345. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_title.erb +0 -5
  346. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_unload_alert.erb +0 -14
  347. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_windows.erb +0 -54
  348. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/within_frames.erb +0 -15
  349. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/version.rb +0 -5
  350. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/window.rb +0 -146
  351. data/vendor/bundle/gems/capybara-3.15.0/spec/basic_node_spec.rb +0 -154
  352. data/vendor/bundle/gems/capybara-3.15.0/spec/capybara_spec.rb +0 -112
  353. data/vendor/bundle/gems/capybara-3.15.0/spec/css_builder_spec.rb +0 -101
  354. data/vendor/bundle/gems/capybara-3.15.0/spec/css_splitter_spec.rb +0 -38
  355. data/vendor/bundle/gems/capybara-3.15.0/spec/dsl_spec.rb +0 -276
  356. data/vendor/bundle/gems/capybara-3.15.0/spec/filter_set_spec.rb +0 -46
  357. data/vendor/bundle/gems/capybara-3.15.0/spec/fixtures/capybara.csv +0 -1
  358. data/vendor/bundle/gems/capybara-3.15.0/spec/fixtures/certificate.pem +0 -25
  359. data/vendor/bundle/gems/capybara-3.15.0/spec/fixtures/key.pem +0 -27
  360. data/vendor/bundle/gems/capybara-3.15.0/spec/fixtures/selenium_driver_rspec_failure.rb +0 -13
  361. data/vendor/bundle/gems/capybara-3.15.0/spec/fixtures/selenium_driver_rspec_success.rb +0 -13
  362. data/vendor/bundle/gems/capybara-3.15.0/spec/minitest_spec.rb +0 -153
  363. data/vendor/bundle/gems/capybara-3.15.0/spec/minitest_spec_spec.rb +0 -151
  364. data/vendor/bundle/gems/capybara-3.15.0/spec/per_session_config_spec.rb +0 -68
  365. data/vendor/bundle/gems/capybara-3.15.0/spec/rack_test_spec.rb +0 -256
  366. data/vendor/bundle/gems/capybara-3.15.0/spec/regexp_dissassembler_spec.rb +0 -236
  367. data/vendor/bundle/gems/capybara-3.15.0/spec/result_spec.rb +0 -200
  368. data/vendor/bundle/gems/capybara-3.15.0/spec/rspec/features_spec.rb +0 -98
  369. data/vendor/bundle/gems/capybara-3.15.0/spec/rspec/scenarios_spec.rb +0 -19
  370. data/vendor/bundle/gems/capybara-3.15.0/spec/rspec/shared_spec_matchers.rb +0 -943
  371. data/vendor/bundle/gems/capybara-3.15.0/spec/rspec/views_spec.rb +0 -14
  372. data/vendor/bundle/gems/capybara-3.15.0/spec/rspec_matchers_spec.rb +0 -62
  373. data/vendor/bundle/gems/capybara-3.15.0/spec/rspec_spec.rb +0 -145
  374. data/vendor/bundle/gems/capybara-3.15.0/spec/selector_spec.rb +0 -503
  375. data/vendor/bundle/gems/capybara-3.15.0/spec/selenium_spec_chrome.rb +0 -107
  376. data/vendor/bundle/gems/capybara-3.15.0/spec/selenium_spec_chrome_remote.rb +0 -81
  377. data/vendor/bundle/gems/capybara-3.15.0/spec/selenium_spec_edge.rb +0 -32
  378. data/vendor/bundle/gems/capybara-3.15.0/spec/selenium_spec_firefox.rb +0 -213
  379. data/vendor/bundle/gems/capybara-3.15.0/spec/selenium_spec_firefox_remote.rb +0 -89
  380. data/vendor/bundle/gems/capybara-3.15.0/spec/selenium_spec_ie.rb +0 -142
  381. data/vendor/bundle/gems/capybara-3.15.0/spec/selenium_spec_safari.rb +0 -148
  382. data/vendor/bundle/gems/capybara-3.15.0/spec/server_spec.rb +0 -239
  383. data/vendor/bundle/gems/capybara-3.15.0/spec/session_spec.rb +0 -84
  384. data/vendor/bundle/gems/capybara-3.15.0/spec/shared_selenium_session.rb +0 -496
  385. data/vendor/bundle/gems/capybara-3.15.0/spec/spec_helper.rb +0 -62
  386. data/vendor/bundle/gems/capybara-3.15.0/spec/xpath_builder_spec.rb +0 -93
  387. data/vendor/bundle/gems/childprocess-0.9.0/CHANGELOG.md +0 -49
  388. data/vendor/bundle/gems/childprocess-0.9.0/Gemfile +0 -15
  389. data/vendor/bundle/gems/childprocess-0.9.0/LICENSE +0 -20
  390. data/vendor/bundle/gems/childprocess-0.9.0/README.md +0 -196
  391. data/vendor/bundle/gems/childprocess-0.9.0/Rakefile +0 -61
  392. data/vendor/bundle/gems/childprocess-0.9.0/appveyor.yml +0 -60
  393. data/vendor/bundle/gems/childprocess-0.9.0/childprocess.gemspec +0 -30
  394. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess.rb +0 -205
  395. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/abstract_io.rb +0 -36
  396. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/abstract_process.rb +0 -192
  397. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/errors.rb +0 -26
  398. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/jruby.rb +0 -56
  399. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/jruby/io.rb +0 -16
  400. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/jruby/process.rb +0 -159
  401. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/jruby/pump.rb +0 -53
  402. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/tools/generator.rb +0 -146
  403. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/unix.rb +0 -9
  404. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/unix/fork_exec_process.rb +0 -70
  405. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/unix/io.rb +0 -21
  406. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/unix/lib.rb +0 -186
  407. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/unix/platform/i386-linux.rb +0 -12
  408. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/unix/platform/i386-solaris.rb +0 -11
  409. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/unix/platform/x86_64-linux.rb +0 -12
  410. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/unix/platform/x86_64-macosx.rb +0 -11
  411. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/unix/posix_spawn_process.rb +0 -134
  412. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/unix/process.rb +0 -89
  413. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/version.rb +0 -3
  414. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/windows.rb +0 -33
  415. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/windows/handle.rb +0 -91
  416. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/windows/io.rb +0 -25
  417. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/windows/lib.rb +0 -416
  418. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/windows/process.rb +0 -130
  419. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/windows/process_builder.rb +0 -175
  420. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/windows/structs.rb +0 -149
  421. data/vendor/bundle/gems/childprocess-0.9.0/spec/abstract_io_spec.rb +0 -12
  422. data/vendor/bundle/gems/childprocess-0.9.0/spec/childprocess_spec.rb +0 -422
  423. data/vendor/bundle/gems/childprocess-0.9.0/spec/io_spec.rb +0 -228
  424. data/vendor/bundle/gems/childprocess-0.9.0/spec/jruby_spec.rb +0 -24
  425. data/vendor/bundle/gems/childprocess-0.9.0/spec/pid_behavior.rb +0 -12
  426. data/vendor/bundle/gems/childprocess-0.9.0/spec/platform_detection_spec.rb +0 -86
  427. data/vendor/bundle/gems/childprocess-0.9.0/spec/spec_helper.rb +0 -261
  428. data/vendor/bundle/gems/childprocess-0.9.0/spec/unix_spec.rb +0 -57
  429. data/vendor/bundle/gems/childprocess-0.9.0/spec/windows_spec.rb +0 -23
  430. data/vendor/bundle/gems/coveralls-0.8.22/CHANGELOG.md +0 -21
  431. data/vendor/bundle/gems/coveralls-0.8.22/Gemfile +0 -41
  432. data/vendor/bundle/gems/coveralls-0.8.22/LICENSE +0 -22
  433. data/vendor/bundle/gems/coveralls-0.8.22/README.md +0 -3
  434. data/vendor/bundle/gems/coveralls-0.8.22/Rakefile +0 -14
  435. data/vendor/bundle/gems/coveralls-0.8.22/bin/coveralls +0 -9
  436. data/vendor/bundle/gems/coveralls-0.8.22/coveralls-ruby.gemspec +0 -29
  437. data/vendor/bundle/gems/coveralls-0.8.22/lib/coveralls.rb +0 -101
  438. data/vendor/bundle/gems/coveralls-0.8.22/lib/coveralls/api.rb +0 -128
  439. data/vendor/bundle/gems/coveralls-0.8.22/lib/coveralls/command.rb +0 -69
  440. data/vendor/bundle/gems/coveralls-0.8.22/lib/coveralls/configuration.rb +0 -233
  441. data/vendor/bundle/gems/coveralls-0.8.22/lib/coveralls/output.rb +0 -114
  442. data/vendor/bundle/gems/coveralls-0.8.22/lib/coveralls/rake/task.rb +0 -19
  443. data/vendor/bundle/gems/coveralls-0.8.22/lib/coveralls/simplecov.rb +0 -101
  444. data/vendor/bundle/gems/coveralls-0.8.22/lib/coveralls/version.rb +0 -3
  445. data/vendor/bundle/gems/coveralls-0.8.22/spec/coveralls/configuration_spec.rb +0 -368
  446. data/vendor/bundle/gems/coveralls-0.8.22/spec/coveralls/coveralls_spec.rb +0 -106
  447. data/vendor/bundle/gems/coveralls-0.8.22/spec/coveralls/fixtures/app/controllers/sample.rb +0 -12
  448. data/vendor/bundle/gems/coveralls-0.8.22/spec/coveralls/fixtures/app/models/airplane.rb +0 -10
  449. data/vendor/bundle/gems/coveralls-0.8.22/spec/coveralls/fixtures/app/models/dog.rb +0 -10
  450. data/vendor/bundle/gems/coveralls-0.8.22/spec/coveralls/fixtures/app/models/house.rb +0 -10
  451. data/vendor/bundle/gems/coveralls-0.8.22/spec/coveralls/fixtures/app/models/robot.rb +0 -10
  452. data/vendor/bundle/gems/coveralls-0.8.22/spec/coveralls/fixtures/app/models/user.rb +0 -10
  453. data/vendor/bundle/gems/coveralls-0.8.22/spec/coveralls/fixtures/app/vendor/vendored_gem.rb +0 -1
  454. data/vendor/bundle/gems/coveralls-0.8.22/spec/coveralls/fixtures/sample.rb +0 -12
  455. data/vendor/bundle/gems/coveralls-0.8.22/spec/coveralls/output_spec.rb +0 -92
  456. data/vendor/bundle/gems/coveralls-0.8.22/spec/coveralls/simplecov_spec.rb +0 -82
  457. data/vendor/bundle/gems/coveralls-0.8.22/spec/spec_helper.rb +0 -82
  458. data/vendor/bundle/gems/diff-lcs-1.3/Code-of-Conduct.md +0 -74
  459. data/vendor/bundle/gems/diff-lcs-1.3/Contributing.md +0 -83
  460. data/vendor/bundle/gems/diff-lcs-1.3/History.md +0 -220
  461. data/vendor/bundle/gems/diff-lcs-1.3/License.md +0 -39
  462. data/vendor/bundle/gems/diff-lcs-1.3/Manifest.txt +0 -37
  463. data/vendor/bundle/gems/diff-lcs-1.3/README.rdoc +0 -84
  464. data/vendor/bundle/gems/diff-lcs-1.3/Rakefile +0 -57
  465. data/vendor/bundle/gems/diff-lcs-1.3/autotest/discover.rb +0 -1
  466. data/vendor/bundle/gems/diff-lcs-1.3/bin/htmldiff +0 -32
  467. data/vendor/bundle/gems/diff-lcs-1.3/bin/ldiff +0 -6
  468. data/vendor/bundle/gems/diff-lcs-1.3/docs/COPYING.txt +0 -339
  469. data/vendor/bundle/gems/diff-lcs-1.3/docs/artistic.txt +0 -127
  470. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff-lcs.rb +0 -3
  471. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs.rb +0 -725
  472. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/array.rb +0 -7
  473. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/block.rb +0 -37
  474. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/callbacks.rb +0 -322
  475. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/change.rb +0 -181
  476. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/htmldiff.rb +0 -149
  477. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/hunk.rb +0 -276
  478. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/internals.rb +0 -307
  479. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/ldiff.rb +0 -167
  480. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/string.rb +0 -5
  481. data/vendor/bundle/gems/diff-lcs-1.3/spec/change_spec.rb +0 -65
  482. data/vendor/bundle/gems/diff-lcs-1.3/spec/diff_spec.rb +0 -47
  483. data/vendor/bundle/gems/diff-lcs-1.3/spec/fixtures/ds1.csv +0 -50
  484. data/vendor/bundle/gems/diff-lcs-1.3/spec/fixtures/ds2.csv +0 -51
  485. data/vendor/bundle/gems/diff-lcs-1.3/spec/hunk_spec.rb +0 -72
  486. data/vendor/bundle/gems/diff-lcs-1.3/spec/issues_spec.rb +0 -49
  487. data/vendor/bundle/gems/diff-lcs-1.3/spec/lcs_spec.rb +0 -56
  488. data/vendor/bundle/gems/diff-lcs-1.3/spec/ldiff_spec.rb +0 -47
  489. data/vendor/bundle/gems/diff-lcs-1.3/spec/patch_spec.rb +0 -422
  490. data/vendor/bundle/gems/diff-lcs-1.3/spec/sdiff_spec.rb +0 -214
  491. data/vendor/bundle/gems/diff-lcs-1.3/spec/spec_helper.rb +0 -321
  492. data/vendor/bundle/gems/diff-lcs-1.3/spec/traverse_balanced_spec.rb +0 -310
  493. data/vendor/bundle/gems/diff-lcs-1.3/spec/traverse_sequences_spec.rb +0 -139
  494. data/vendor/bundle/gems/docile-1.3.1/Gemfile +0 -12
  495. data/vendor/bundle/gems/docile-1.3.1/HISTORY.md +0 -84
  496. data/vendor/bundle/gems/docile-1.3.1/LICENSE +0 -21
  497. data/vendor/bundle/gems/docile-1.3.1/README.md +0 -381
  498. data/vendor/bundle/gems/docile-1.3.1/Rakefile +0 -28
  499. data/vendor/bundle/gems/docile-1.3.1/docile.gemspec +0 -54
  500. data/vendor/bundle/gems/docile-1.3.1/lib/docile.rb +0 -123
  501. data/vendor/bundle/gems/docile-1.3.1/lib/docile/chaining_fallback_context_proxy.rb +0 -20
  502. data/vendor/bundle/gems/docile-1.3.1/lib/docile/execution.rb +0 -41
  503. data/vendor/bundle/gems/docile-1.3.1/lib/docile/fallback_context_proxy.rb +0 -88
  504. data/vendor/bundle/gems/docile-1.3.1/lib/docile/version.rb +0 -4
  505. data/vendor/bundle/gems/docile-1.3.1/on_what.rb +0 -26
  506. data/vendor/bundle/gems/emot-0.0.4/Gemfile +0 -4
  507. data/vendor/bundle/gems/emot-0.0.4/LICENSE.txt +0 -22
  508. data/vendor/bundle/gems/emot-0.0.4/README.md +0 -87
  509. data/vendor/bundle/gems/emot-0.0.4/Rakefile +0 -7
  510. data/vendor/bundle/gems/emot-0.0.4/bin/emot +0 -5
  511. data/vendor/bundle/gems/emot-0.0.4/emot.gemspec +0 -26
  512. data/vendor/bundle/gems/emot-0.0.4/lib/emot.rb +0 -34
  513. data/vendor/bundle/gems/emot-0.0.4/lib/emot/cli.rb +0 -62
  514. data/vendor/bundle/gems/emot-0.0.4/lib/emot/map.rb +0 -894
  515. data/vendor/bundle/gems/emot-0.0.4/lib/emot/symbol_ext.rb +0 -11
  516. data/vendor/bundle/gems/emot-0.0.4/lib/emot/version.rb +0 -3
  517. data/vendor/bundle/gems/emot-0.0.4/spec/cli_spec.rb +0 -56
  518. data/vendor/bundle/gems/emot-0.0.4/spec/emot_spec.rb +0 -50
  519. data/vendor/bundle/gems/emot-0.0.4/spec/spec_helper.rb +0 -2
  520. data/vendor/bundle/gems/faraday-0.15.4/LICENSE.md +0 -20
  521. data/vendor/bundle/gems/faraday-0.15.4/README.md +0 -381
  522. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday.rb +0 -248
  523. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/adapter.rb +0 -55
  524. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/adapter/em_http.rb +0 -243
  525. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/adapter/em_http_ssl_patch.rb +0 -56
  526. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/adapter/em_synchrony.rb +0 -106
  527. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/adapter/em_synchrony/parallel_manager.rb +0 -66
  528. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/adapter/excon.rb +0 -82
  529. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/adapter/httpclient.rb +0 -128
  530. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/adapter/net_http.rb +0 -152
  531. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/adapter/net_http_persistent.rb +0 -68
  532. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/adapter/patron.rb +0 -95
  533. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/adapter/rack.rb +0 -58
  534. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/adapter/test.rb +0 -213
  535. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/adapter/typhoeus.rb +0 -12
  536. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/autoload.rb +0 -84
  537. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/connection.rb +0 -484
  538. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/error.rb +0 -66
  539. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/middleware.rb +0 -37
  540. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/options.rb +0 -373
  541. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/parameters.rb +0 -198
  542. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/rack_builder.rb +0 -237
  543. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/request.rb +0 -114
  544. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/request/authorization.rb +0 -41
  545. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/request/basic_authentication.rb +0 -13
  546. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/request/instrumentation.rb +0 -36
  547. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/request/multipart.rb +0 -68
  548. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/request/retry.rb +0 -210
  549. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/request/token_authentication.rb +0 -15
  550. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/request/url_encoded.rb +0 -36
  551. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/response.rb +0 -97
  552. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/response/logger.rb +0 -80
  553. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/response/raise_error.rb +0 -21
  554. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/upload_io.rb +0 -67
  555. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/utils.rb +0 -326
  556. data/vendor/bundle/gems/fastimage-2.1.5/MIT-LICENSE +0 -20
  557. data/vendor/bundle/gems/fastimage-2.1.5/README.textile +0 -162
  558. data/vendor/bundle/gems/fastimage-2.1.5/lib/fastimage.rb +0 -787
  559. data/vendor/bundle/gems/ffi-1.10.0/CHANGELOG.md +0 -98
  560. data/vendor/bundle/gems/ffi-1.10.0/COPYING +0 -49
  561. data/vendor/bundle/gems/ffi-1.10.0/Gemfile +0 -15
  562. data/vendor/bundle/gems/ffi-1.10.0/LICENSE +0 -24
  563. data/vendor/bundle/gems/ffi-1.10.0/LICENSE.SPECS +0 -22
  564. data/vendor/bundle/gems/ffi-1.10.0/README.md +0 -112
  565. data/vendor/bundle/gems/ffi-1.10.0/Rakefile +0 -268
  566. data/vendor/bundle/gems/ffi-1.10.0/appveyor.yml +0 -22
  567. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/AbstractMemory.c +0 -1109
  568. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/AbstractMemory.h +0 -175
  569. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/AbstractMemory.o +0 -0
  570. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/ArrayType.c +0 -162
  571. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/ArrayType.h +0 -59
  572. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/ArrayType.o +0 -0
  573. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Buffer.c +0 -365
  574. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Buffer.o +0 -0
  575. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Call.c +0 -520
  576. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Call.h +0 -110
  577. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Call.o +0 -0
  578. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/ClosurePool.c +0 -283
  579. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/ClosurePool.h +0 -57
  580. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/ClosurePool.o +0 -0
  581. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/DataConverter.c +0 -91
  582. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/DataConverter.o +0 -0
  583. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/DynamicLibrary.c +0 -339
  584. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/DynamicLibrary.h +0 -98
  585. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/DynamicLibrary.o +0 -0
  586. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Function.c +0 -1001
  587. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Function.h +0 -87
  588. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Function.o +0 -0
  589. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/FunctionInfo.c +0 -271
  590. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/FunctionInfo.o +0 -0
  591. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/LastError.c +0 -229
  592. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/LastError.h +0 -47
  593. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/LastError.o +0 -0
  594. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/LongDouble.c +0 -63
  595. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/LongDouble.h +0 -51
  596. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/LongDouble.o +0 -0
  597. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Makefile +0 -265
  598. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/MappedType.c +0 -168
  599. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/MappedType.h +0 -59
  600. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/MappedType.o +0 -0
  601. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/MemoryPointer.c +0 -197
  602. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/MemoryPointer.h +0 -53
  603. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/MemoryPointer.o +0 -0
  604. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/MethodHandle.c +0 -358
  605. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/MethodHandle.h +0 -55
  606. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/MethodHandle.o +0 -0
  607. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Platform.c +0 -129
  608. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Platform.h +0 -45
  609. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Platform.o +0 -0
  610. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Pointer.c +0 -508
  611. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Pointer.h +0 -63
  612. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Pointer.o +0 -0
  613. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Struct.c +0 -829
  614. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Struct.h +0 -106
  615. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Struct.o +0 -0
  616. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/StructByReference.c +0 -190
  617. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/StructByReference.h +0 -50
  618. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/StructByReference.o +0 -0
  619. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/StructByValue.c +0 -150
  620. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/StructByValue.h +0 -55
  621. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/StructByValue.o +0 -0
  622. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/StructLayout.c +0 -698
  623. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/StructLayout.o +0 -0
  624. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Thread.c +0 -353
  625. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Thread.h +0 -95
  626. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Thread.o +0 -0
  627. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Type.c +0 -397
  628. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Type.h +0 -62
  629. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Type.o +0 -0
  630. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Types.c +0 -139
  631. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Types.h +0 -89
  632. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Types.o +0 -0
  633. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Variadic.c +0 -304
  634. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Variadic.o +0 -0
  635. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/compat.h +0 -78
  636. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/extconf.h +0 -12
  637. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/extconf.rb +0 -72
  638. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/ffi.c +0 -98
  639. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/ffi.o +0 -0
  640. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/ffi_c.so +0 -0
  641. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi.bsd.mk +0 -40
  642. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi.darwin.mk +0 -105
  643. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi.gnu.mk +0 -32
  644. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi.mk +0 -18
  645. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi.vc.mk +0 -26
  646. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi.vc64.mk +0 -26
  647. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/ChangeLog.libffi +0 -584
  648. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/ChangeLog.libffi-3.1 +0 -6000
  649. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/ChangeLog.libgcj +0 -40
  650. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/ChangeLog.v1 +0 -764
  651. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/LICENSE +0 -21
  652. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/LICENSE-BUILDTOOLS +0 -352
  653. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/Makefile.am +0 -166
  654. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/Makefile.in +0 -1809
  655. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/README.md +0 -461
  656. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/acinclude.m4 +0 -479
  657. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/autogen.sh +0 -2
  658. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/config.guess +0 -1466
  659. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/config.sub +0 -1836
  660. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/configure +0 -21978
  661. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/configure.ac +0 -390
  662. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/configure.host +0 -289
  663. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/doc/Makefile.am +0 -3
  664. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/doc/Makefile.in +0 -811
  665. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/doc/libffi.texi +0 -985
  666. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/doc/version.texi +0 -4
  667. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/fficonfig.h.in +0 -210
  668. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/generate-darwin-source-and-headers.py +0 -203
  669. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/include/Makefile.am +0 -9
  670. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/include/Makefile.in +0 -604
  671. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/include/ffi.h.in +0 -511
  672. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/include/ffi_cfi.h +0 -55
  673. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/include/ffi_common.h +0 -149
  674. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/install-sh +0 -508
  675. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/libffi.map.in +0 -80
  676. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/libffi.pc.in +0 -11
  677. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/libffi.xcodeproj/project.pbxproj +0 -1043
  678. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/libtool-ldflags +0 -106
  679. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/libtool-version +0 -29
  680. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/ltmain.sh +0 -11156
  681. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/m4/asmcfi.m4 +0 -13
  682. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/m4/ax_append_flag.m4 +0 -71
  683. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/m4/ax_cc_maxopt.m4 +0 -194
  684. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/m4/ax_cflags_warn_all.m4 +0 -122
  685. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/m4/ax_check_compile_flag.m4 +0 -74
  686. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/m4/ax_compiler_vendor.m4 +0 -87
  687. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/m4/ax_configure_args.m4 +0 -70
  688. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/m4/ax_enable_builddir.m4 +0 -302
  689. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/m4/ax_gcc_archflag.m4 +0 -263
  690. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/m4/ax_gcc_x86_cpuid.m4 +0 -89
  691. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/m4/ax_require_defined.m4 +0 -37
  692. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/man/Makefile.am +0 -8
  693. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/man/Makefile.in +0 -558
  694. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/man/ffi.3 +0 -41
  695. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/man/ffi_call.3 +0 -103
  696. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/man/ffi_prep_cif.3 +0 -68
  697. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/man/ffi_prep_cif_var.3 +0 -73
  698. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/missing +0 -215
  699. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/msvcc.sh +0 -328
  700. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/aarch64/ffi.c +0 -941
  701. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/aarch64/ffitarget.h +0 -81
  702. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/aarch64/internal.h +0 -67
  703. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/aarch64/sysv.S +0 -438
  704. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/alpha/ffi.c +0 -521
  705. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/alpha/ffitarget.h +0 -57
  706. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/alpha/internal.h +0 -23
  707. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/alpha/osf.S +0 -282
  708. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/arc/arcompact.S +0 -135
  709. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/arc/ffi.c +0 -266
  710. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/arc/ffitarget.h +0 -53
  711. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/arm/ffi.c +0 -819
  712. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/arm/ffitarget.h +0 -82
  713. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/arm/internal.h +0 -7
  714. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/arm/sysv.S +0 -383
  715. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/avr32/ffi.c +0 -423
  716. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/avr32/ffitarget.h +0 -55
  717. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/avr32/sysv.S +0 -208
  718. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/bfin/ffi.c +0 -196
  719. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/bfin/ffitarget.h +0 -43
  720. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/bfin/sysv.S +0 -179
  721. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/closures.c +0 -966
  722. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/cris/ffi.c +0 -386
  723. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/cris/ffitarget.h +0 -56
  724. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/cris/sysv.S +0 -215
  725. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/debug.c +0 -64
  726. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/dlmalloc.c +0 -5166
  727. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/frv/eabi.S +0 -128
  728. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/frv/ffi.c +0 -292
  729. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/frv/ffitarget.h +0 -62
  730. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/ia64/ffi.c +0 -604
  731. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/ia64/ffitarget.h +0 -56
  732. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/ia64/ia64_flags.h +0 -40
  733. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/ia64/unix.S +0 -567
  734. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/java_raw_api.c +0 -374
  735. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/m32r/ffi.c +0 -232
  736. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/m32r/ffitarget.h +0 -53
  737. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/m32r/sysv.S +0 -121
  738. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/m68k/ffi.c +0 -362
  739. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/m68k/ffitarget.h +0 -54
  740. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/m68k/sysv.S +0 -357
  741. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/m88k/ffi.c +0 -400
  742. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/m88k/ffitarget.h +0 -49
  743. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/m88k/obsd.S +0 -209
  744. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/metag/ffi.c +0 -330
  745. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/metag/ffitarget.h +0 -53
  746. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/metag/sysv.S +0 -311
  747. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/microblaze/ffi.c +0 -321
  748. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/microblaze/ffitarget.h +0 -53
  749. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/microblaze/sysv.S +0 -302
  750. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/mips/ffi.c +0 -1130
  751. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/mips/ffitarget.h +0 -244
  752. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/mips/n32.S +0 -663
  753. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/mips/o32.S +0 -502
  754. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/moxie/eabi.S +0 -101
  755. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/moxie/ffi.c +0 -285
  756. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/moxie/ffitarget.h +0 -52
  757. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/nios2/ffi.c +0 -304
  758. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/nios2/ffitarget.h +0 -52
  759. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/nios2/sysv.S +0 -136
  760. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/or1k/ffi.c +0 -328
  761. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/or1k/ffitarget.h +0 -58
  762. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/or1k/sysv.S +0 -107
  763. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/pa/ffi.c +0 -719
  764. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/pa/ffitarget.h +0 -85
  765. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/pa/hpux32.S +0 -368
  766. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/pa/linux.S +0 -357
  767. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/powerpc/aix.S +0 -566
  768. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/powerpc/aix_closure.S +0 -694
  769. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/powerpc/asm.h +0 -125
  770. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/powerpc/darwin.S +0 -378
  771. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/powerpc/darwin_closure.S +0 -571
  772. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/powerpc/ffi.c +0 -173
  773. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/powerpc/ffi_darwin.c +0 -1440
  774. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/powerpc/ffi_linux64.c +0 -974
  775. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/powerpc/ffi_powerpc.h +0 -94
  776. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/powerpc/ffi_sysv.c +0 -923
  777. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/powerpc/ffitarget.h +0 -198
  778. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/powerpc/linux64.S +0 -228
  779. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/powerpc/linux64_closure.S +0 -488
  780. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/powerpc/ppc_closure.S +0 -397
  781. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/powerpc/sysv.S +0 -175
  782. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/prep_cif.c +0 -261
  783. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/raw_api.c +0 -267
  784. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/riscv/ffi.c +0 -445
  785. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/riscv/ffitarget.h +0 -68
  786. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/riscv/sysv.S +0 -214
  787. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/s390/ffi.c +0 -756
  788. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/s390/ffitarget.h +0 -70
  789. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/s390/internal.h +0 -11
  790. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/s390/sysv.S +0 -325
  791. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/sh/ffi.c +0 -717
  792. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/sh/ffitarget.h +0 -54
  793. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/sh/sysv.S +0 -850
  794. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/sh64/ffi.c +0 -469
  795. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/sh64/ffitarget.h +0 -58
  796. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/sh64/sysv.S +0 -539
  797. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/sparc/ffi.c +0 -468
  798. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/sparc/ffi64.c +0 -608
  799. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/sparc/ffitarget.h +0 -81
  800. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/sparc/internal.h +0 -26
  801. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/sparc/v8.S +0 -443
  802. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/sparc/v9.S +0 -440
  803. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/tile/ffi.c +0 -355
  804. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/tile/ffitarget.h +0 -65
  805. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/tile/tile.S +0 -360
  806. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/types.c +0 -108
  807. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/vax/elfbsd.S +0 -195
  808. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/vax/ffi.c +0 -276
  809. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/vax/ffitarget.h +0 -49
  810. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/x86/asmnames.h +0 -30
  811. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/x86/ffi.c +0 -753
  812. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/x86/ffi64.c +0 -884
  813. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/x86/ffitarget.h +0 -147
  814. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/x86/ffiw64.c +0 -308
  815. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/x86/internal.h +0 -29
  816. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/x86/internal64.h +0 -22
  817. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/x86/sysv.S +0 -1043
  818. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/x86/unix64.S +0 -525
  819. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/x86/win64.S +0 -232
  820. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/x86/win64_intel.S +0 -237
  821. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/xtensa/ffi.c +0 -298
  822. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/xtensa/ffitarget.h +0 -53
  823. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/xtensa/sysv.S +0 -258
  824. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/stamp-h.in +0 -1
  825. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/Makefile.am +0 -117
  826. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/Makefile.in +0 -608
  827. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/config/default.exp +0 -1
  828. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/lib/libffi.exp +0 -636
  829. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/lib/target-libpath.exp +0 -283
  830. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/lib/wrapper.exp +0 -45
  831. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.bhaible/Makefile +0 -28
  832. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.bhaible/README +0 -78
  833. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.bhaible/alignof.h +0 -50
  834. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.bhaible/bhaible.exp +0 -58
  835. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.bhaible/test-call.c +0 -1745
  836. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.bhaible/test-callback.c +0 -2885
  837. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.bhaible/testcases.c +0 -743
  838. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/align_mixed.c +0 -46
  839. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/align_stdcall.c +0 -46
  840. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/call.exp +0 -43
  841. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn0.c +0 -89
  842. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn1.c +0 -81
  843. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn2.c +0 -81
  844. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn3.c +0 -82
  845. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn4.c +0 -89
  846. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn5.c +0 -92
  847. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn6.c +0 -90
  848. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/closure_loc_fn0.c +0 -95
  849. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/closure_simple.c +0 -55
  850. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_12byte.c +0 -94
  851. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_16byte.c +0 -95
  852. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_18byte.c +0 -96
  853. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_19byte.c +0 -102
  854. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_1_1byte.c +0 -89
  855. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_20byte.c +0 -91
  856. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_20byte1.c +0 -93
  857. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_24byte.c +0 -113
  858. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_2byte.c +0 -90
  859. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_3_1byte.c +0 -95
  860. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_3byte1.c +0 -90
  861. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_3byte2.c +0 -90
  862. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_3float.c +0 -95
  863. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_4_1byte.c +0 -98
  864. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_4byte.c +0 -90
  865. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_5_1_byte.c +0 -109
  866. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_5byte.c +0 -98
  867. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_64byte.c +0 -124
  868. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_6_1_byte.c +0 -113
  869. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_6byte.c +0 -99
  870. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_7_1_byte.c +0 -117
  871. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_7byte.c +0 -97
  872. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_8byte.c +0 -88
  873. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_9byte1.c +0 -90
  874. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_9byte2.c +0 -91
  875. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_double.c +0 -93
  876. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_float.c +0 -91
  877. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_longdouble.c +0 -92
  878. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_longdouble_split.c +0 -132
  879. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_longdouble_split2.c +0 -115
  880. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_pointer.c +0 -95
  881. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint16.c +0 -91
  882. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint32.c +0 -91
  883. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint64.c +0 -92
  884. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint16.c +0 -91
  885. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint32.c +0 -91
  886. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint64.c +0 -93
  887. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_dbls_struct.c +0 -66
  888. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_double.c +0 -43
  889. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_double_va.c +0 -61
  890. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_float.c +0 -42
  891. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_longdouble.c +0 -105
  892. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_longdouble_va.c +0 -61
  893. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_many_mixed_args.c +0 -70
  894. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_many_mixed_float_double.c +0 -55
  895. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_schar.c +0 -74
  896. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_sshort.c +0 -74
  897. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_sshortchar.c +0 -86
  898. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_uchar.c +0 -91
  899. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_ushort.c +0 -74
  900. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_ushortchar.c +0 -86
  901. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_pointer.c +0 -74
  902. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_pointer_stack.c +0 -142
  903. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_schar.c +0 -44
  904. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_sint.c +0 -42
  905. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_sshort.c +0 -42
  906. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_struct_va1.c +0 -114
  907. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_uchar.c +0 -42
  908. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_uchar_va.c +0 -44
  909. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_uint.c +0 -43
  910. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_uint_va.c +0 -45
  911. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_ulong_va.c +0 -45
  912. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_ulonglong.c +0 -47
  913. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_ushort.c +0 -43
  914. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_ushort_va.c +0 -44
  915. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/err_bad_abi.c +0 -36
  916. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/err_bad_typedef.c +0 -26
  917. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/ffitest.h +0 -138
  918. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/float.c +0 -59
  919. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/float1.c +0 -60
  920. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/float2.c +0 -60
  921. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/float3.c +0 -74
  922. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/float4.c +0 -62
  923. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/float_va.c +0 -107
  924. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/huge_struct.c +0 -341
  925. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/many.c +0 -59
  926. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/many2.c +0 -57
  927. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/many_double.c +0 -70
  928. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/many_mixed.c +0 -78
  929. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/negint.c +0 -52
  930. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct.c +0 -152
  931. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct1.c +0 -161
  932. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct10.c +0 -134
  933. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct11.c +0 -121
  934. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct2.c +0 -110
  935. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct3.c +0 -111
  936. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct4.c +0 -111
  937. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct5.c +0 -112
  938. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct6.c +0 -131
  939. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct7.c +0 -111
  940. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct8.c +0 -131
  941. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct9.c +0 -131
  942. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/offsets.c +0 -46
  943. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/pr1172638.c +0 -127
  944. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/problem1.c +0 -90
  945. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/promotion.c +0 -59
  946. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/pyobjc-tc.c +0 -114
  947. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/return_dbl.c +0 -36
  948. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/return_dbl1.c +0 -43
  949. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/return_dbl2.c +0 -42
  950. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/return_fl.c +0 -35
  951. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/return_fl1.c +0 -36
  952. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/return_fl2.c +0 -49
  953. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/return_fl3.c +0 -42
  954. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/return_ldl.c +0 -34
  955. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/return_ll.c +0 -41
  956. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/return_ll1.c +0 -43
  957. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/return_sc.c +0 -36
  958. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/return_sl.c +0 -38
  959. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/return_uc.c +0 -38
  960. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/return_ul.c +0 -38
  961. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/stret_large.c +0 -145
  962. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/stret_large2.c +0 -148
  963. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/stret_medium.c +0 -124
  964. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/stret_medium2.c +0 -125
  965. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/strlen.c +0 -44
  966. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/strlen2.c +0 -49
  967. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/strlen3.c +0 -49
  968. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/strlen4.c +0 -55
  969. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/struct1.c +0 -67
  970. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/struct10.c +0 -57
  971. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/struct2.c +0 -67
  972. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/struct3.c +0 -60
  973. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/struct4.c +0 -64
  974. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/struct5.c +0 -66
  975. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/struct6.c +0 -64
  976. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/struct7.c +0 -74
  977. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/struct8.c +0 -81
  978. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/struct9.c +0 -68
  979. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/testclosure.c +0 -70
  980. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/uninitialized.c +0 -61
  981. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/unwindtest.cc +0 -117
  982. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/unwindtest_ffi_call.cc +0 -54
  983. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/va_1.c +0 -196
  984. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/va_struct1.c +0 -121
  985. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/va_struct2.c +0 -123
  986. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/va_struct3.c +0 -125
  987. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/cls_align_complex.inc +0 -91
  988. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/cls_align_complex_double.c +0 -10
  989. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/cls_align_complex_float.c +0 -10
  990. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/cls_align_complex_longdouble.c +0 -10
  991. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex.inc +0 -42
  992. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_double.c +0 -10
  993. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_float.c +0 -10
  994. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_longdouble.c +0 -10
  995. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_struct.inc +0 -71
  996. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_struct_double.c +0 -10
  997. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_struct_float.c +0 -10
  998. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_struct_longdouble.c +0 -10
  999. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_va.inc +0 -80
  1000. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_va_double.c +0 -10
  1001. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_va_float.c +0 -16
  1002. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_va_longdouble.c +0 -10
  1003. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/complex.exp +0 -36
  1004. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/complex.inc +0 -51
  1005. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/complex_defs_double.inc +0 -7
  1006. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/complex_defs_float.inc +0 -7
  1007. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/complex_defs_longdouble.inc +0 -7
  1008. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/complex_double.c +0 -10
  1009. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/complex_float.c +0 -10
  1010. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/complex_int.c +0 -86
  1011. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/complex_longdouble.c +0 -10
  1012. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/ffitest.h +0 -1
  1013. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/many_complex.inc +0 -78
  1014. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/many_complex_double.c +0 -10
  1015. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/many_complex_float.c +0 -10
  1016. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/many_complex_longdouble.c +0 -10
  1017. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex.inc +0 -37
  1018. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex1.inc +0 -41
  1019. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex1_double.c +0 -10
  1020. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex1_float.c +0 -10
  1021. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex1_longdouble.c +0 -10
  1022. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex2.inc +0 -44
  1023. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex2_double.c +0 -10
  1024. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex2_float.c +0 -10
  1025. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex2_longdouble.c +0 -10
  1026. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex_double.c +0 -10
  1027. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex_float.c +0 -10
  1028. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex_longdouble.c +0 -10
  1029. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.go/aa-direct.c +0 -34
  1030. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.go/closure1.c +0 -28
  1031. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.go/ffitest.h +0 -1
  1032. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.go/go.exp +0 -36
  1033. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.go/static-chain.h +0 -19
  1034. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/rbffi.h +0 -57
  1035. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/rbffi_endian.h +0 -59
  1036. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/win32/stdbool.h +0 -8
  1037. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/win32/stdint.h +0 -201
  1038. data/vendor/bundle/gems/ffi-1.10.0/ffi.gemspec +0 -36
  1039. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi.rb +0 -20
  1040. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/autopointer.rb +0 -203
  1041. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/buffer.rb +0 -4
  1042. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/callback.rb +0 -4
  1043. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/enum.rb +0 -296
  1044. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/errno.rb +0 -43
  1045. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/ffi.rb +0 -44
  1046. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/io.rb +0 -62
  1047. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/library.rb +0 -588
  1048. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/managedstruct.rb +0 -84
  1049. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/memorypointer.rb +0 -1
  1050. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform.rb +0 -170
  1051. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/aarch64-freebsd/types.conf +0 -128
  1052. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/aarch64-freebsd12/types.conf +0 -128
  1053. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/aarch64-linux/types.conf +0 -104
  1054. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/arm-freebsd/types.conf +0 -152
  1055. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/arm-freebsd12/types.conf +0 -152
  1056. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/arm-linux/types.conf +0 -104
  1057. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/i386-cygwin/types.conf +0 -3
  1058. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/i386-darwin/types.conf +0 -100
  1059. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/i386-freebsd/types.conf +0 -152
  1060. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/i386-freebsd12/types.conf +0 -152
  1061. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/i386-gnu/types.conf +0 -107
  1062. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/i386-linux/types.conf +0 -103
  1063. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/i386-netbsd/types.conf +0 -126
  1064. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/i386-openbsd/types.conf +0 -128
  1065. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/i386-solaris/types.conf +0 -122
  1066. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/i386-windows/types.conf +0 -105
  1067. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/ia64-linux/types.conf +0 -104
  1068. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/mips-linux/types.conf +0 -102
  1069. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/mips64-linux/types.conf +0 -104
  1070. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/mips64el-linux/types.conf +0 -104
  1071. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/mipsel-linux/types.conf +0 -102
  1072. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/mipsisa32r6-linux/types.conf +0 -102
  1073. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/mipsisa32r6el-linux/types.conf +0 -102
  1074. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/mipsisa64r6-linux/types.conf +0 -104
  1075. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/mipsisa64r6el-linux/types.conf +0 -104
  1076. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/powerpc-aix/types.conf +0 -180
  1077. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/powerpc-darwin/types.conf +0 -100
  1078. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/powerpc-linux/types.conf +0 -100
  1079. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/powerpc64-linux/types.conf +0 -104
  1080. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/s390-linux/types.conf +0 -102
  1081. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/s390x-linux/types.conf +0 -102
  1082. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/sparc-linux/types.conf +0 -102
  1083. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/sparc-solaris/types.conf +0 -128
  1084. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/sparc64-linux/types.conf +0 -102
  1085. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/sparcv9-solaris/types.conf +0 -128
  1086. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/x86_64-cygwin/types.conf +0 -3
  1087. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/x86_64-darwin/types.conf +0 -126
  1088. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/x86_64-freebsd/types.conf +0 -128
  1089. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/x86_64-freebsd12/types.conf +0 -128
  1090. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/x86_64-linux/types.conf +0 -102
  1091. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/x86_64-netbsd/types.conf +0 -128
  1092. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/x86_64-openbsd/types.conf +0 -134
  1093. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/x86_64-solaris/types.conf +0 -122
  1094. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/x86_64-windows/types.conf +0 -120
  1095. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/pointer.rb +0 -160
  1096. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/struct.rb +0 -371
  1097. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/struct_layout_builder.rb +0 -227
  1098. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/tools/const_generator.rb +0 -229
  1099. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/tools/generator.rb +0 -60
  1100. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/tools/generator_task.rb +0 -36
  1101. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/tools/struct_generator.rb +0 -194
  1102. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/tools/types_generator.rb +0 -134
  1103. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/types.rb +0 -194
  1104. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/union.rb +0 -43
  1105. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/variadic.rb +0 -78
  1106. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/version.rb +0 -3
  1107. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi_c.so +0 -0
  1108. data/vendor/bundle/gems/ffi-1.10.0/samples/getlogin.rb +0 -8
  1109. data/vendor/bundle/gems/ffi-1.10.0/samples/getpid.rb +0 -8
  1110. data/vendor/bundle/gems/ffi-1.10.0/samples/gettimeofday.rb +0 -18
  1111. data/vendor/bundle/gems/ffi-1.10.0/samples/hello.rb +0 -7
  1112. data/vendor/bundle/gems/ffi-1.10.0/samples/inotify.rb +0 -60
  1113. data/vendor/bundle/gems/ffi-1.10.0/samples/pty.rb +0 -76
  1114. data/vendor/bundle/gems/ffi-1.10.0/samples/qsort.rb +0 -21
  1115. data/vendor/bundle/gems/ffi-1.10.0/samples/sample_helper.rb +0 -6
  1116. data/vendor/bundle/gems/hikidoc-0.1.0/COPYING +0 -28
  1117. data/vendor/bundle/gems/hikidoc-0.1.0/Gemfile +0 -4
  1118. data/vendor/bundle/gems/hikidoc-0.1.0/NEWS +0 -30
  1119. data/vendor/bundle/gems/hikidoc-0.1.0/NEWS.ja +0 -30
  1120. data/vendor/bundle/gems/hikidoc-0.1.0/README +0 -87
  1121. data/vendor/bundle/gems/hikidoc-0.1.0/README.ja +0 -84
  1122. data/vendor/bundle/gems/hikidoc-0.1.0/Rakefile +0 -8
  1123. data/vendor/bundle/gems/hikidoc-0.1.0/TextFormattingRules +0 -320
  1124. data/vendor/bundle/gems/hikidoc-0.1.0/TextFormattingRules.ja +0 -318
  1125. data/vendor/bundle/gems/hikidoc-0.1.0/bin/hikidoc +0 -66
  1126. data/vendor/bundle/gems/hikidoc-0.1.0/hikidoc.gemspec +0 -23
  1127. data/vendor/bundle/gems/hikidoc-0.1.0/lib/hikidoc.rb +0 -912
  1128. data/vendor/bundle/gems/hikidoc-0.1.0/test/hikidoc_test.rb +0 -506
  1129. data/vendor/bundle/gems/jasmine-2.99.0/Gemfile +0 -30
  1130. data/vendor/bundle/gems/jasmine-2.99.0/HOW_TO_TEST.markdown +0 -10
  1131. data/vendor/bundle/gems/jasmine-2.99.0/MIT.LICENSE +0 -20
  1132. data/vendor/bundle/gems/jasmine-2.99.0/README.markdown +0 -96
  1133. data/vendor/bundle/gems/jasmine-2.99.0/RELEASE.markdown +0 -15
  1134. data/vendor/bundle/gems/jasmine-2.99.0/Rakefile +0 -49
  1135. data/vendor/bundle/gems/jasmine-2.99.0/bin/jasmine +0 -6
  1136. data/vendor/bundle/gems/jasmine-2.99.0/jasmine.gemspec +0 -48
  1137. data/vendor/bundle/gems/jasmine-2.99.0/lib/generators/jasmine/examples/USAGE +0 -11
  1138. data/vendor/bundle/gems/jasmine-2.99.0/lib/generators/jasmine/examples/examples_generator.rb +0 -19
  1139. data/vendor/bundle/gems/jasmine-2.99.0/lib/generators/jasmine/examples/templates/app/assets/javascripts/jasmine_examples/Player.js +0 -22
  1140. data/vendor/bundle/gems/jasmine-2.99.0/lib/generators/jasmine/examples/templates/app/assets/javascripts/jasmine_examples/Song.js +0 -7
  1141. data/vendor/bundle/gems/jasmine-2.99.0/lib/generators/jasmine/examples/templates/spec/javascripts/helpers/jasmine_examples/SpecHelper.js +0 -15
  1142. data/vendor/bundle/gems/jasmine-2.99.0/lib/generators/jasmine/examples/templates/spec/javascripts/jasmine_examples/PlayerSpec.js +0 -58
  1143. data/vendor/bundle/gems/jasmine-2.99.0/lib/generators/jasmine/install/USAGE +0 -9
  1144. data/vendor/bundle/gems/jasmine-2.99.0/lib/generators/jasmine/install/install_generator.rb +0 -18
  1145. data/vendor/bundle/gems/jasmine-2.99.0/lib/generators/jasmine/install/templates/spec/javascripts/support/jasmine.yml +0 -145
  1146. data/vendor/bundle/gems/jasmine-2.99.0/lib/generators/jasmine/install/templates/spec/javascripts/support/jasmine_helper.rb +0 -16
  1147. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine.rb +0 -32
  1148. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/application.rb +0 -21
  1149. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/asset_expander.rb +0 -66
  1150. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/asset_pipeline_mapper.rb +0 -17
  1151. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/base.rb +0 -54
  1152. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/ci_runner.rb +0 -50
  1153. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/command_line_install.txt +0 -13
  1154. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/command_line_tool.rb +0 -125
  1155. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/config.rb +0 -135
  1156. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/configuration.rb +0 -114
  1157. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/core_configuration.rb +0 -31
  1158. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/dependencies.rb +0 -28
  1159. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/formatters/console.rb +0 -118
  1160. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/formatters/exit_code.rb +0 -23
  1161. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/formatters/multi.rb +0 -17
  1162. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/page.rb +0 -11
  1163. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/path_expander.rb +0 -22
  1164. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/path_mapper.rb +0 -38
  1165. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/railtie.rb +0 -22
  1166. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/result.rb +0 -58
  1167. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/ruby_versions.rb +0 -11
  1168. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/run.html.erb +0 -20
  1169. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/runners/phantom_boot.js +0 -15
  1170. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/runners/phantom_jasmine_run.js +0 -50
  1171. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/runners/phantom_js.rb +0 -74
  1172. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/server.rb +0 -17
  1173. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/tasks/jasmine.rake +0 -71
  1174. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/tasks/jasmine_rails.rake +0 -1
  1175. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/version.rb +0 -3
  1176. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/yaml_config_parser.rb +0 -95
  1177. data/vendor/bundle/gems/jasmine-2.99.0/lib/rack/jasmine/cache_control.rb +0 -20
  1178. data/vendor/bundle/gems/jasmine-2.99.0/lib/rack/jasmine/focused_suite.rb +0 -17
  1179. data/vendor/bundle/gems/jasmine-2.99.0/lib/rack/jasmine/runner.rb +0 -27
  1180. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v1.2.1.md +0 -6
  1181. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v1.3.2.md +0 -32
  1182. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.0.0.md +0 -78
  1183. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.0.1.md +0 -31
  1184. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.0.2.md +0 -17
  1185. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.0.3.md +0 -31
  1186. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.1.0.md +0 -11
  1187. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.2.0.md +0 -31
  1188. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.3.0.md +0 -27
  1189. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.3.1.md +0 -14
  1190. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.4.0.md +0 -20
  1191. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.5.0.md +0 -35
  1192. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.5.1.md +0 -12
  1193. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.5.2.md +0 -22
  1194. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.6.0.md +0 -17
  1195. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.6.1.md +0 -11
  1196. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.7.0.md +0 -28
  1197. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.8.0.md +0 -21
  1198. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.9.0.md +0 -22
  1199. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.99.md +0 -13
  1200. data/vendor/bundle/gems/jasmine-2.99.0/spec/application_integration_spec.rb +0 -15
  1201. data/vendor/bundle/gems/jasmine-2.99.0/spec/application_spec.rb +0 -55
  1202. data/vendor/bundle/gems/jasmine-2.99.0/spec/base_spec.rb +0 -35
  1203. data/vendor/bundle/gems/jasmine-2.99.0/spec/ci_runner_spec.rb +0 -137
  1204. data/vendor/bundle/gems/jasmine-2.99.0/spec/configuration_spec.rb +0 -219
  1205. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/Rakefile +0 -4
  1206. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/afterall_spec.js +0 -8
  1207. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/coffee_spec.coffee +0 -3
  1208. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/console_log_spec.js +0 -5
  1209. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/exception_test.js +0 -1
  1210. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/failing_runner.rb +0 -9
  1211. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/failing_test.js +0 -5
  1212. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/large_test_suite_spec.js +0 -20
  1213. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/non_asset_pipeline.js +0 -1
  1214. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/non_asset_pipeline_test.js +0 -5
  1215. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/phantomConfig.js +0 -6
  1216. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/viewport_spec.js +0 -6
  1217. data/vendor/bundle/gems/jasmine-2.99.0/spec/jasmine_command_line_tool_spec.rb +0 -142
  1218. data/vendor/bundle/gems/jasmine-2.99.0/spec/jasmine_pojs_spec.rb +0 -124
  1219. data/vendor/bundle/gems/jasmine-2.99.0/spec/jasmine_rails_spec.rb +0 -217
  1220. data/vendor/bundle/gems/jasmine-2.99.0/spec/lib/jasmine/formatters/console_spec.rb +0 -205
  1221. data/vendor/bundle/gems/jasmine-2.99.0/spec/lib/jasmine/formatters/exit_code_spec.rb +0 -34
  1222. data/vendor/bundle/gems/jasmine-2.99.0/spec/lib/jasmine/formatters/multi_spec.rb +0 -27
  1223. data/vendor/bundle/gems/jasmine-2.99.0/spec/page_spec.rb +0 -23
  1224. data/vendor/bundle/gems/jasmine-2.99.0/spec/path_expander_spec.rb +0 -138
  1225. data/vendor/bundle/gems/jasmine-2.99.0/spec/path_mapper_spec.rb +0 -38
  1226. data/vendor/bundle/gems/jasmine-2.99.0/spec/performance/phantom_js_runner_performance_spec.rb +0 -23
  1227. data/vendor/bundle/gems/jasmine-2.99.0/spec/phantom_js_spec.rb +0 -14
  1228. data/vendor/bundle/gems/jasmine-2.99.0/spec/rack/jasmine/runner_spec.rb +0 -25
  1229. data/vendor/bundle/gems/jasmine-2.99.0/spec/result_spec.rb +0 -44
  1230. data/vendor/bundle/gems/jasmine-2.99.0/spec/server_spec.rb +0 -22
  1231. data/vendor/bundle/gems/jasmine-2.99.0/spec/spec_helper.rb +0 -145
  1232. data/vendor/bundle/gems/jasmine-2.99.0/spec/yaml_config_parser_spec.rb +0 -239
  1233. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/console/console.js +0 -190
  1234. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core.js +0 -37
  1235. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core.rb +0 -53
  1236. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/__init__.py +0 -1
  1237. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/boot.js +0 -155
  1238. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/boot/boot.js +0 -133
  1239. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/boot/node_boot.js +0 -19
  1240. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/core.py +0 -60
  1241. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/example/node_example/lib/jasmine_examples/Player.js +0 -24
  1242. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/example/node_example/lib/jasmine_examples/Song.js +0 -9
  1243. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/example/node_example/spec/helpers/jasmine_examples/SpecHelper.js +0 -15
  1244. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/example/node_example/spec/jasmine_examples/PlayerSpec.js +0 -60
  1245. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/example/spec/PlayerSpec.js +0 -58
  1246. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/example/spec/SpecHelper.js +0 -15
  1247. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/example/src/Player.js +0 -22
  1248. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/example/src/Song.js +0 -7
  1249. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/jasmine-html.js +0 -545
  1250. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/jasmine.css +0 -59
  1251. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/jasmine.js +0 -5586
  1252. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/json2.js +0 -489
  1253. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/node_boot.js +0 -41
  1254. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/version.rb +0 -9
  1255. data/vendor/bundle/gems/json-2.2.0/CHANGES.md +0 -391
  1256. data/vendor/bundle/gems/json-2.2.0/Gemfile +0 -14
  1257. data/vendor/bundle/gems/json-2.2.0/README-json-jruby.md +0 -33
  1258. data/vendor/bundle/gems/json-2.2.0/README.md +0 -409
  1259. data/vendor/bundle/gems/json-2.2.0/Rakefile +0 -408
  1260. data/vendor/bundle/gems/json-2.2.0/VERSION +0 -1
  1261. data/vendor/bundle/gems/json-2.2.0/ext/json/Makefile +0 -201
  1262. data/vendor/bundle/gems/json-2.2.0/ext/json/ext/fbuffer/fbuffer.h +0 -187
  1263. data/vendor/bundle/gems/json-2.2.0/ext/json/ext/generator/Makefile +0 -266
  1264. data/vendor/bundle/gems/json-2.2.0/ext/json/ext/generator/depend +0 -1
  1265. data/vendor/bundle/gems/json-2.2.0/ext/json/ext/generator/extconf.rb +0 -4
  1266. data/vendor/bundle/gems/json-2.2.0/ext/json/ext/generator/generator.c +0 -1444
  1267. data/vendor/bundle/gems/json-2.2.0/ext/json/ext/generator/generator.h +0 -171
  1268. data/vendor/bundle/gems/json-2.2.0/ext/json/ext/generator/generator.o +0 -0
  1269. data/vendor/bundle/gems/json-2.2.0/ext/json/ext/generator/generator.so +0 -0
  1270. data/vendor/bundle/gems/json-2.2.0/ext/json/ext/parser/Makefile +0 -266
  1271. data/vendor/bundle/gems/json-2.2.0/ext/json/ext/parser/depend +0 -1
  1272. data/vendor/bundle/gems/json-2.2.0/ext/json/ext/parser/extconf.rb +0 -6
  1273. data/vendor/bundle/gems/json-2.2.0/ext/json/ext/parser/parser.c +0 -2131
  1274. data/vendor/bundle/gems/json-2.2.0/ext/json/ext/parser/parser.h +0 -91
  1275. data/vendor/bundle/gems/json-2.2.0/ext/json/ext/parser/parser.o +0 -0
  1276. data/vendor/bundle/gems/json-2.2.0/ext/json/ext/parser/parser.rl +0 -891
  1277. data/vendor/bundle/gems/json-2.2.0/ext/json/ext/parser/parser.so +0 -0
  1278. data/vendor/bundle/gems/json-2.2.0/ext/json/extconf.rb +0 -2
  1279. data/vendor/bundle/gems/json-2.2.0/install.rb +0 -23
  1280. data/vendor/bundle/gems/json-2.2.0/java/src/json/ext/ByteListTranscoder.java +0 -166
  1281. data/vendor/bundle/gems/json-2.2.0/java/src/json/ext/Generator.java +0 -443
  1282. data/vendor/bundle/gems/json-2.2.0/java/src/json/ext/GeneratorMethods.java +0 -231
  1283. data/vendor/bundle/gems/json-2.2.0/java/src/json/ext/GeneratorService.java +0 -42
  1284. data/vendor/bundle/gems/json-2.2.0/java/src/json/ext/GeneratorState.java +0 -490
  1285. data/vendor/bundle/gems/json-2.2.0/java/src/json/ext/OptionsReader.java +0 -113
  1286. data/vendor/bundle/gems/json-2.2.0/java/src/json/ext/Parser.java +0 -2362
  1287. data/vendor/bundle/gems/json-2.2.0/java/src/json/ext/Parser.rl +0 -893
  1288. data/vendor/bundle/gems/json-2.2.0/java/src/json/ext/ParserService.java +0 -34
  1289. data/vendor/bundle/gems/json-2.2.0/java/src/json/ext/RuntimeInfo.java +0 -116
  1290. data/vendor/bundle/gems/json-2.2.0/java/src/json/ext/StringDecoder.java +0 -166
  1291. data/vendor/bundle/gems/json-2.2.0/java/src/json/ext/StringEncoder.java +0 -111
  1292. data/vendor/bundle/gems/json-2.2.0/java/src/json/ext/Utils.java +0 -88
  1293. data/vendor/bundle/gems/json-2.2.0/json-java.gemspec +0 -38
  1294. data/vendor/bundle/gems/json-2.2.0/json.gemspec +0 -0
  1295. data/vendor/bundle/gems/json-2.2.0/json_pure.gemspec +0 -38
  1296. data/vendor/bundle/gems/json-2.2.0/lib/json.rb +0 -63
  1297. data/vendor/bundle/gems/json-2.2.0/lib/json/add/bigdecimal.rb +0 -29
  1298. data/vendor/bundle/gems/json-2.2.0/lib/json/add/complex.rb +0 -29
  1299. data/vendor/bundle/gems/json-2.2.0/lib/json/add/core.rb +0 -12
  1300. data/vendor/bundle/gems/json-2.2.0/lib/json/add/date.rb +0 -34
  1301. data/vendor/bundle/gems/json-2.2.0/lib/json/add/date_time.rb +0 -50
  1302. data/vendor/bundle/gems/json-2.2.0/lib/json/add/exception.rb +0 -31
  1303. data/vendor/bundle/gems/json-2.2.0/lib/json/add/ostruct.rb +0 -31
  1304. data/vendor/bundle/gems/json-2.2.0/lib/json/add/range.rb +0 -29
  1305. data/vendor/bundle/gems/json-2.2.0/lib/json/add/rational.rb +0 -28
  1306. data/vendor/bundle/gems/json-2.2.0/lib/json/add/regexp.rb +0 -30
  1307. data/vendor/bundle/gems/json-2.2.0/lib/json/add/set.rb +0 -29
  1308. data/vendor/bundle/gems/json-2.2.0/lib/json/add/struct.rb +0 -30
  1309. data/vendor/bundle/gems/json-2.2.0/lib/json/add/symbol.rb +0 -25
  1310. data/vendor/bundle/gems/json-2.2.0/lib/json/add/time.rb +0 -38
  1311. data/vendor/bundle/gems/json-2.2.0/lib/json/common.rb +0 -456
  1312. data/vendor/bundle/gems/json-2.2.0/lib/json/ext.rb +0 -15
  1313. data/vendor/bundle/gems/json-2.2.0/lib/json/ext/generator.so +0 -0
  1314. data/vendor/bundle/gems/json-2.2.0/lib/json/ext/parser.so +0 -0
  1315. data/vendor/bundle/gems/json-2.2.0/lib/json/generic_object.rb +0 -71
  1316. data/vendor/bundle/gems/json-2.2.0/lib/json/pure.rb +0 -15
  1317. data/vendor/bundle/gems/json-2.2.0/lib/json/pure/generator.rb +0 -458
  1318. data/vendor/bundle/gems/json-2.2.0/lib/json/pure/parser.rb +0 -311
  1319. data/vendor/bundle/gems/json-2.2.0/lib/json/version.rb +0 -9
  1320. data/vendor/bundle/gems/json-2.2.0/references/rfc7159.txt +0 -899
  1321. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail10.json +0 -1
  1322. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail11.json +0 -1
  1323. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail12.json +0 -1
  1324. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail13.json +0 -1
  1325. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail14.json +0 -1
  1326. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail18.json +0 -1
  1327. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail19.json +0 -1
  1328. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail2.json +0 -1
  1329. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail20.json +0 -1
  1330. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail21.json +0 -1
  1331. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail22.json +0 -1
  1332. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail23.json +0 -1
  1333. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail24.json +0 -1
  1334. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail25.json +0 -1
  1335. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail27.json +0 -2
  1336. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail28.json +0 -2
  1337. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail3.json +0 -1
  1338. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail4.json +0 -1
  1339. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail5.json +0 -1
  1340. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail6.json +0 -1
  1341. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail7.json +0 -1
  1342. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail8.json +0 -1
  1343. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail9.json +0 -1
  1344. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/obsolete_fail1.json +0 -1
  1345. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/pass1.json +0 -56
  1346. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/pass15.json +0 -1
  1347. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/pass16.json +0 -1
  1348. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/pass17.json +0 -1
  1349. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/pass2.json +0 -1
  1350. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/pass26.json +0 -1
  1351. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/pass3.json +0 -6
  1352. data/vendor/bundle/gems/json-2.2.0/tests/json_addition_test.rb +0 -203
  1353. data/vendor/bundle/gems/json-2.2.0/tests/json_common_interface_test.rb +0 -126
  1354. data/vendor/bundle/gems/json-2.2.0/tests/json_encoding_test.rb +0 -107
  1355. data/vendor/bundle/gems/json-2.2.0/tests/json_ext_parser_test.rb +0 -15
  1356. data/vendor/bundle/gems/json-2.2.0/tests/json_fixtures_test.rb +0 -32
  1357. data/vendor/bundle/gems/json-2.2.0/tests/json_generator_test.rb +0 -377
  1358. data/vendor/bundle/gems/json-2.2.0/tests/json_generic_object_test.rb +0 -82
  1359. data/vendor/bundle/gems/json-2.2.0/tests/json_parser_test.rb +0 -472
  1360. data/vendor/bundle/gems/json-2.2.0/tests/json_string_matching_test.rb +0 -38
  1361. data/vendor/bundle/gems/json-2.2.0/tests/test_helper.rb +0 -17
  1362. data/vendor/bundle/gems/json-2.2.0/tools/diff.sh +0 -18
  1363. data/vendor/bundle/gems/json-2.2.0/tools/fuzz.rb +0 -131
  1364. data/vendor/bundle/gems/json-2.2.0/tools/server.rb +0 -62
  1365. data/vendor/bundle/gems/launchy-2.4.3/CONTRIBUTING.md +0 -59
  1366. data/vendor/bundle/gems/launchy-2.4.3/HISTORY.md +0 -160
  1367. data/vendor/bundle/gems/launchy-2.4.3/LICENSE +0 -16
  1368. data/vendor/bundle/gems/launchy-2.4.3/Manifest.txt +0 -38
  1369. data/vendor/bundle/gems/launchy-2.4.3/README.md +0 -136
  1370. data/vendor/bundle/gems/launchy-2.4.3/Rakefile +0 -25
  1371. data/vendor/bundle/gems/launchy-2.4.3/bin/launchy +0 -4
  1372. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy.rb +0 -152
  1373. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/application.rb +0 -62
  1374. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/applications/browser.rb +0 -82
  1375. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/argv.rb +0 -36
  1376. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/cli.rb +0 -89
  1377. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/deprecated.rb +0 -52
  1378. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/descendant_tracker.rb +0 -49
  1379. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/detect.rb +0 -10
  1380. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/detect/host_os.rb +0 -32
  1381. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/detect/host_os_family.rb +0 -71
  1382. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/detect/nix_desktop_environment.rb +0 -92
  1383. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/detect/ruby_engine.rb +0 -78
  1384. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/detect/runner.rb +0 -152
  1385. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/error.rb +0 -6
  1386. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/os_family.rb +0 -8
  1387. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/version.rb +0 -18
  1388. data/vendor/bundle/gems/launchy-2.4.3/spec/application_spec.rb +0 -43
  1389. data/vendor/bundle/gems/launchy-2.4.3/spec/applications/browser_spec.rb +0 -68
  1390. data/vendor/bundle/gems/launchy-2.4.3/spec/cli_spec.rb +0 -75
  1391. data/vendor/bundle/gems/launchy-2.4.3/spec/detect/host_os_family_spec.rb +0 -40
  1392. data/vendor/bundle/gems/launchy-2.4.3/spec/detect/host_os_spec.rb +0 -19
  1393. data/vendor/bundle/gems/launchy-2.4.3/spec/detect/nix_desktop_environment_spec.rb +0 -36
  1394. data/vendor/bundle/gems/launchy-2.4.3/spec/detect/ruby_engine_spec.rb +0 -37
  1395. data/vendor/bundle/gems/launchy-2.4.3/spec/detect/runner_spec.rb +0 -103
  1396. data/vendor/bundle/gems/launchy-2.4.3/spec/launchy_spec.rb +0 -110
  1397. data/vendor/bundle/gems/launchy-2.4.3/spec/mock_application.rb +0 -9
  1398. data/vendor/bundle/gems/launchy-2.4.3/spec/spec_helper.rb +0 -11
  1399. data/vendor/bundle/gems/launchy-2.4.3/spec/tattle-host-os.yaml +0 -427
  1400. data/vendor/bundle/gems/launchy-2.4.3/spec/version_spec.rb +0 -11
  1401. data/vendor/bundle/gems/launchy-2.4.3/tasks/default.rake +0 -272
  1402. data/vendor/bundle/gems/launchy-2.4.3/tasks/this.rb +0 -209
  1403. data/vendor/bundle/gems/mail-2.7.1/MIT-LICENSE +0 -20
  1404. data/vendor/bundle/gems/mail-2.7.1/README.md +0 -695
  1405. data/vendor/bundle/gems/mail-2.7.1/lib/mail.rb +0 -85
  1406. data/vendor/bundle/gems/mail-2.7.1/lib/mail/attachments_list.rb +0 -110
  1407. data/vendor/bundle/gems/mail-2.7.1/lib/mail/body.rb +0 -328
  1408. data/vendor/bundle/gems/mail-2.7.1/lib/mail/check_delivery_params.rb +0 -60
  1409. data/vendor/bundle/gems/mail-2.7.1/lib/mail/configuration.rb +0 -78
  1410. data/vendor/bundle/gems/mail-2.7.1/lib/mail/constants.rb +0 -57
  1411. data/vendor/bundle/gems/mail-2.7.1/lib/mail/core_extensions/smtp.rb +0 -28
  1412. data/vendor/bundle/gems/mail-2.7.1/lib/mail/core_extensions/string.rb +0 -17
  1413. data/vendor/bundle/gems/mail-2.7.1/lib/mail/elements.rb +0 -15
  1414. data/vendor/bundle/gems/mail-2.7.1/lib/mail/elements/address.rb +0 -258
  1415. data/vendor/bundle/gems/mail-2.7.1/lib/mail/elements/address_list.rb +0 -34
  1416. data/vendor/bundle/gems/mail-2.7.1/lib/mail/elements/content_disposition_element.rb +0 -20
  1417. data/vendor/bundle/gems/mail-2.7.1/lib/mail/elements/content_location_element.rb +0 -17
  1418. data/vendor/bundle/gems/mail-2.7.1/lib/mail/elements/content_transfer_encoding_element.rb +0 -13
  1419. data/vendor/bundle/gems/mail-2.7.1/lib/mail/elements/content_type_element.rb +0 -21
  1420. data/vendor/bundle/gems/mail-2.7.1/lib/mail/elements/date_time_element.rb +0 -15
  1421. data/vendor/bundle/gems/mail-2.7.1/lib/mail/elements/envelope_from_element.rb +0 -33
  1422. data/vendor/bundle/gems/mail-2.7.1/lib/mail/elements/message_ids_element.rb +0 -22
  1423. data/vendor/bundle/gems/mail-2.7.1/lib/mail/elements/mime_version_element.rb +0 -15
  1424. data/vendor/bundle/gems/mail-2.7.1/lib/mail/elements/phrase_list.rb +0 -14
  1425. data/vendor/bundle/gems/mail-2.7.1/lib/mail/elements/received_element.rb +0 -21
  1426. data/vendor/bundle/gems/mail-2.7.1/lib/mail/encodings.rb +0 -343
  1427. data/vendor/bundle/gems/mail-2.7.1/lib/mail/encodings/7bit.rb +0 -22
  1428. data/vendor/bundle/gems/mail-2.7.1/lib/mail/encodings/8bit.rb +0 -18
  1429. data/vendor/bundle/gems/mail-2.7.1/lib/mail/encodings/base64.rb +0 -38
  1430. data/vendor/bundle/gems/mail-2.7.1/lib/mail/encodings/binary.rb +0 -13
  1431. data/vendor/bundle/gems/mail-2.7.1/lib/mail/encodings/identity.rb +0 -24
  1432. data/vendor/bundle/gems/mail-2.7.1/lib/mail/encodings/quoted_printable.rb +0 -45
  1433. data/vendor/bundle/gems/mail-2.7.1/lib/mail/encodings/transfer_encoding.rb +0 -77
  1434. data/vendor/bundle/gems/mail-2.7.1/lib/mail/encodings/unix_to_unix.rb +0 -20
  1435. data/vendor/bundle/gems/mail-2.7.1/lib/mail/envelope.rb +0 -31
  1436. data/vendor/bundle/gems/mail-2.7.1/lib/mail/field.rb +0 -299
  1437. data/vendor/bundle/gems/mail-2.7.1/lib/mail/field_list.rb +0 -34
  1438. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields.rb +0 -36
  1439. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/bcc_field.rb +0 -68
  1440. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/cc_field.rb +0 -55
  1441. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/comments_field.rb +0 -42
  1442. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/common/address_container.rb +0 -17
  1443. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/common/common_address.rb +0 -161
  1444. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/common/common_date.rb +0 -36
  1445. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/common/common_field.rb +0 -52
  1446. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/common/common_message_id.rb +0 -49
  1447. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/common/parameter_hash.rb +0 -59
  1448. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/content_description_field.rb +0 -20
  1449. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/content_disposition_field.rb +0 -71
  1450. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/content_id_field.rb +0 -63
  1451. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/content_location_field.rb +0 -43
  1452. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/content_transfer_encoding_field.rb +0 -45
  1453. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/content_type_field.rb +0 -197
  1454. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/date_field.rb +0 -57
  1455. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/from_field.rb +0 -55
  1456. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/in_reply_to_field.rb +0 -57
  1457. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/keywords_field.rb +0 -44
  1458. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/message_id_field.rb +0 -83
  1459. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/mime_version_field.rb +0 -54
  1460. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/optional_field.rb +0 -17
  1461. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/received_field.rb +0 -76
  1462. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/references_field.rb +0 -57
  1463. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/reply_to_field.rb +0 -55
  1464. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/resent_bcc_field.rb +0 -55
  1465. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/resent_cc_field.rb +0 -55
  1466. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/resent_date_field.rb +0 -35
  1467. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/resent_from_field.rb +0 -55
  1468. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/resent_message_id_field.rb +0 -35
  1469. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/resent_sender_field.rb +0 -62
  1470. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/resent_to_field.rb +0 -55
  1471. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/return_path_field.rb +0 -65
  1472. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/sender_field.rb +0 -67
  1473. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/structured_field.rb +0 -52
  1474. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/subject_field.rb +0 -17
  1475. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/to_field.rb +0 -55
  1476. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/unstructured_field.rb +0 -222
  1477. data/vendor/bundle/gems/mail-2.7.1/lib/mail/header.rb +0 -278
  1478. data/vendor/bundle/gems/mail-2.7.1/lib/mail/indifferent_hash.rb +0 -147
  1479. data/vendor/bundle/gems/mail-2.7.1/lib/mail/mail.rb +0 -262
  1480. data/vendor/bundle/gems/mail-2.7.1/lib/mail/matchers/attachment_matchers.rb +0 -29
  1481. data/vendor/bundle/gems/mail-2.7.1/lib/mail/matchers/has_sent_mail.rb +0 -201
  1482. data/vendor/bundle/gems/mail-2.7.1/lib/mail/message.rb +0 -2170
  1483. data/vendor/bundle/gems/mail-2.7.1/lib/mail/multibyte.rb +0 -92
  1484. data/vendor/bundle/gems/mail-2.7.1/lib/mail/multibyte/chars.rb +0 -476
  1485. data/vendor/bundle/gems/mail-2.7.1/lib/mail/multibyte/unicode.rb +0 -405
  1486. data/vendor/bundle/gems/mail-2.7.1/lib/mail/multibyte/utils.rb +0 -61
  1487. data/vendor/bundle/gems/mail-2.7.1/lib/mail/network.rb +0 -16
  1488. data/vendor/bundle/gems/mail-2.7.1/lib/mail/network/delivery_methods/exim.rb +0 -49
  1489. data/vendor/bundle/gems/mail-2.7.1/lib/mail/network/delivery_methods/file_delivery.rb +0 -42
  1490. data/vendor/bundle/gems/mail-2.7.1/lib/mail/network/delivery_methods/logger_delivery.rb +0 -37
  1491. data/vendor/bundle/gems/mail-2.7.1/lib/mail/network/delivery_methods/sendmail.rb +0 -95
  1492. data/vendor/bundle/gems/mail-2.7.1/lib/mail/network/delivery_methods/smtp.rb +0 -149
  1493. data/vendor/bundle/gems/mail-2.7.1/lib/mail/network/delivery_methods/smtp_connection.rb +0 -66
  1494. data/vendor/bundle/gems/mail-2.7.1/lib/mail/network/delivery_methods/test_mailer.rb +0 -42
  1495. data/vendor/bundle/gems/mail-2.7.1/lib/mail/network/retriever_methods/base.rb +0 -64
  1496. data/vendor/bundle/gems/mail-2.7.1/lib/mail/network/retriever_methods/imap.rb +0 -187
  1497. data/vendor/bundle/gems/mail-2.7.1/lib/mail/network/retriever_methods/pop3.rb +0 -143
  1498. data/vendor/bundle/gems/mail-2.7.1/lib/mail/network/retriever_methods/test_retriever.rb +0 -44
  1499. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parser_tools.rb +0 -15
  1500. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers.rb +0 -19
  1501. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/address_lists_parser.rb +0 -33236
  1502. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/address_lists_parser.rl +0 -172
  1503. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/content_disposition_parser.rb +0 -895
  1504. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/content_disposition_parser.rl +0 -82
  1505. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/content_location_parser.rb +0 -816
  1506. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/content_location_parser.rl +0 -71
  1507. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/content_transfer_encoding_parser.rb +0 -516
  1508. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/content_transfer_encoding_parser.rl +0 -64
  1509. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/content_type_parser.rb +0 -1042
  1510. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/content_type_parser.rl +0 -83
  1511. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/date_time_parser.rb +0 -885
  1512. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/date_time_parser.rl +0 -62
  1513. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/envelope_from_parser.rb +0 -3581
  1514. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/envelope_from_parser.rl +0 -82
  1515. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/message_ids_parser.rb +0 -2854
  1516. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/message_ids_parser.rl +0 -82
  1517. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/mime_version_parser.rb +0 -507
  1518. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/mime_version_parser.rl +0 -61
  1519. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/phrase_lists_parser.rb +0 -878
  1520. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/phrase_lists_parser.rl +0 -83
  1521. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/received_parser.rb +0 -8776
  1522. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/received_parser.rl +0 -84
  1523. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/rfc2045_content_transfer_encoding.rl +0 -13
  1524. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/rfc2045_content_type.rl +0 -25
  1525. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/rfc2045_mime.rl +0 -16
  1526. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/rfc2183_content_disposition.rl +0 -15
  1527. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/rfc3629_utf8.rl +0 -19
  1528. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/rfc5234_abnf_core_rules.rl +0 -22
  1529. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/rfc5322.rl +0 -59
  1530. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/rfc5322_address.rl +0 -72
  1531. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/rfc5322_date_time.rl +0 -37
  1532. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/rfc5322_lexical_tokens.rl +0 -60
  1533. data/vendor/bundle/gems/mail-2.7.1/lib/mail/part.rb +0 -123
  1534. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parts_list.rb +0 -74
  1535. data/vendor/bundle/gems/mail-2.7.1/lib/mail/utilities.rb +0 -324
  1536. data/vendor/bundle/gems/mail-2.7.1/lib/mail/values/unicode_tables.dat +0 -0
  1537. data/vendor/bundle/gems/mail-2.7.1/lib/mail/version.rb +0 -17
  1538. data/vendor/bundle/gems/mail-2.7.1/lib/mail/version_specific/ruby_1_8.rb +0 -163
  1539. data/vendor/bundle/gems/mail-2.7.1/lib/mail/version_specific/ruby_1_9.rb +0 -278
  1540. data/vendor/bundle/gems/mime-types-3.2.2/Code-of-Conduct.md +0 -73
  1541. data/vendor/bundle/gems/mime-types-3.2.2/Contributing.md +0 -139
  1542. data/vendor/bundle/gems/mime-types-3.2.2/History.md +0 -208
  1543. data/vendor/bundle/gems/mime-types-3.2.2/Licence.md +0 -25
  1544. data/vendor/bundle/gems/mime-types-3.2.2/Manifest.txt +0 -31
  1545. data/vendor/bundle/gems/mime-types-3.2.2/README.rdoc +0 -200
  1546. data/vendor/bundle/gems/mime-types-3.2.2/Rakefile +0 -256
  1547. data/vendor/bundle/gems/mime-types-3.2.2/lib/mime-types.rb +0 -3
  1548. data/vendor/bundle/gems/mime-types-3.2.2/lib/mime/type.rb +0 -573
  1549. data/vendor/bundle/gems/mime-types-3.2.2/lib/mime/type/columnar.rb +0 -57
  1550. data/vendor/bundle/gems/mime-types-3.2.2/lib/mime/types.rb +0 -230
  1551. data/vendor/bundle/gems/mime-types-3.2.2/lib/mime/types/_columnar.rb +0 -137
  1552. data/vendor/bundle/gems/mime-types-3.2.2/lib/mime/types/cache.rb +0 -58
  1553. data/vendor/bundle/gems/mime-types-3.2.2/lib/mime/types/columnar.rb +0 -3
  1554. data/vendor/bundle/gems/mime-types-3.2.2/lib/mime/types/container.rb +0 -94
  1555. data/vendor/bundle/gems/mime-types-3.2.2/lib/mime/types/deprecations.rb +0 -34
  1556. data/vendor/bundle/gems/mime-types-3.2.2/lib/mime/types/full.rb +0 -19
  1557. data/vendor/bundle/gems/mime-types-3.2.2/lib/mime/types/loader.rb +0 -146
  1558. data/vendor/bundle/gems/mime-types-3.2.2/lib/mime/types/logger.rb +0 -39
  1559. data/vendor/bundle/gems/mime-types-3.2.2/lib/mime/types/registry.rb +0 -90
  1560. data/vendor/bundle/gems/mime-types-3.2.2/test/bad-fixtures/malformed +0 -9
  1561. data/vendor/bundle/gems/mime-types-3.2.2/test/fixture/json.json +0 -1
  1562. data/vendor/bundle/gems/mime-types-3.2.2/test/fixture/old-data +0 -9
  1563. data/vendor/bundle/gems/mime-types-3.2.2/test/fixture/yaml.yaml +0 -55
  1564. data/vendor/bundle/gems/mime-types-3.2.2/test/minitest_helper.rb +0 -15
  1565. data/vendor/bundle/gems/mime-types-3.2.2/test/test_mime_type.rb +0 -614
  1566. data/vendor/bundle/gems/mime-types-3.2.2/test/test_mime_types.rb +0 -171
  1567. data/vendor/bundle/gems/mime-types-3.2.2/test/test_mime_types_cache.rb +0 -120
  1568. data/vendor/bundle/gems/mime-types-3.2.2/test/test_mime_types_class.rb +0 -161
  1569. data/vendor/bundle/gems/mime-types-3.2.2/test/test_mime_types_lazy.rb +0 -51
  1570. data/vendor/bundle/gems/mime-types-3.2.2/test/test_mime_types_loader.rb +0 -34
  1571. data/vendor/bundle/gems/mime-types-data-3.2018.0812/Code-of-Conduct.md +0 -75
  1572. data/vendor/bundle/gems/mime-types-data-3.2018.0812/Contributing.md +0 -160
  1573. data/vendor/bundle/gems/mime-types-data-3.2018.0812/History.md +0 -379
  1574. data/vendor/bundle/gems/mime-types-data-3.2018.0812/Licence.md +0 -25
  1575. data/vendor/bundle/gems/mime-types-data-3.2018.0812/Manifest.txt +0 -31
  1576. data/vendor/bundle/gems/mime-types-data-3.2018.0812/README.md +0 -63
  1577. data/vendor/bundle/gems/mime-types-data-3.2018.0812/Rakefile +0 -80
  1578. data/vendor/bundle/gems/mime-types-data-3.2018.0812/data/mime-types.json +0 -1
  1579. data/vendor/bundle/gems/mime-types-data-3.2018.0812/data/mime.content_type.column +0 -2137
  1580. data/vendor/bundle/gems/mime-types-data-3.2018.0812/data/mime.docs.column +0 -2137
  1581. data/vendor/bundle/gems/mime-types-data-3.2018.0812/data/mime.encoding.column +0 -2137
  1582. data/vendor/bundle/gems/mime-types-data-3.2018.0812/data/mime.flags.column +0 -2137
  1583. data/vendor/bundle/gems/mime-types-data-3.2018.0812/data/mime.friendly.column +0 -2137
  1584. data/vendor/bundle/gems/mime-types-data-3.2018.0812/data/mime.pext.column +0 -2137
  1585. data/vendor/bundle/gems/mime-types-data-3.2018.0812/data/mime.use_instead.column +0 -2137
  1586. data/vendor/bundle/gems/mime-types-data-3.2018.0812/data/mime.xrefs.column +0 -2137
  1587. data/vendor/bundle/gems/mime-types-data-3.2018.0812/lib/mime-types-data.rb +0 -3
  1588. data/vendor/bundle/gems/mime-types-data-3.2018.0812/lib/mime/types/data.rb +0 -21
  1589. data/vendor/bundle/gems/mime-types-data-3.2018.0812/types/application.yaml +0 -15827
  1590. data/vendor/bundle/gems/mime-types-data-3.2018.0812/types/audio.yaml +0 -1616
  1591. data/vendor/bundle/gems/mime-types-data-3.2018.0812/types/chemical.yaml +0 -71
  1592. data/vendor/bundle/gems/mime-types-data-3.2018.0812/types/conference.yaml +0 -9
  1593. data/vendor/bundle/gems/mime-types-data-3.2018.0812/types/drawing.yaml +0 -15
  1594. data/vendor/bundle/gems/mime-types-data-3.2018.0812/types/font.yaml +0 -65
  1595. data/vendor/bundle/gems/mime-types-data-3.2018.0812/types/image.yaml +0 -963
  1596. data/vendor/bundle/gems/mime-types-data-3.2018.0812/types/message.yaml +0 -200
  1597. data/vendor/bundle/gems/mime-types-data-3.2018.0812/types/model.yaml +0 -302
  1598. data/vendor/bundle/gems/mime-types-data-3.2018.0812/types/multipart.yaml +0 -179
  1599. data/vendor/bundle/gems/mime-types-data-3.2018.0812/types/text.yaml +0 -1019
  1600. data/vendor/bundle/gems/mime-types-data-3.2018.0812/types/video.yaml +0 -1043
  1601. data/vendor/bundle/gems/mime-types-data-3.2018.0812/types/world.yaml +0 -8
  1602. data/vendor/bundle/gems/mini_mime-1.0.1/CHANGELOG +0 -33
  1603. data/vendor/bundle/gems/mini_mime-1.0.1/CODE_OF_CONDUCT.md +0 -74
  1604. data/vendor/bundle/gems/mini_mime-1.0.1/Gemfile +0 -6
  1605. data/vendor/bundle/gems/mini_mime-1.0.1/LICENSE.txt +0 -21
  1606. data/vendor/bundle/gems/mini_mime-1.0.1/README.md +0 -95
  1607. data/vendor/bundle/gems/mini_mime-1.0.1/Rakefile +0 -96
  1608. data/vendor/bundle/gems/mini_mime-1.0.1/bench/bench.rb +0 -52
  1609. data/vendor/bundle/gems/mini_mime-1.0.1/bin/console +0 -14
  1610. data/vendor/bundle/gems/mini_mime-1.0.1/bin/setup +0 -8
  1611. data/vendor/bundle/gems/mini_mime-1.0.1/lib/db/content_type_mime.db +0 -852
  1612. data/vendor/bundle/gems/mini_mime-1.0.1/lib/db/ext_mime.db +0 -1170
  1613. data/vendor/bundle/gems/mini_mime-1.0.1/lib/mini_mime.rb +0 -156
  1614. data/vendor/bundle/gems/mini_mime-1.0.1/lib/mini_mime/version.rb +0 -3
  1615. data/vendor/bundle/gems/mini_mime-1.0.1/mini_mime.gemspec +0 -28
  1616. data/vendor/bundle/gems/mini_portile2-2.4.0/CHANGELOG.md +0 -209
  1617. data/vendor/bundle/gems/mini_portile2-2.4.0/Gemfile +0 -4
  1618. data/vendor/bundle/gems/mini_portile2-2.4.0/LICENSE.txt +0 -20
  1619. data/vendor/bundle/gems/mini_portile2-2.4.0/README.md +0 -245
  1620. data/vendor/bundle/gems/mini_portile2-2.4.0/Rakefile +0 -29
  1621. data/vendor/bundle/gems/mini_portile2-2.4.0/appveyor.yml +0 -25
  1622. data/vendor/bundle/gems/mini_portile2-2.4.0/concourse/mini_portile.yml +0 -141
  1623. data/vendor/bundle/gems/mini_portile2-2.4.0/concourse/tasks/rake-test/task.ps1 +0 -11
  1624. data/vendor/bundle/gems/mini_portile2-2.4.0/concourse/tasks/rake-test/task.sh +0 -13
  1625. data/vendor/bundle/gems/mini_portile2-2.4.0/lib/mini_portile2.rb +0 -3
  1626. data/vendor/bundle/gems/mini_portile2-2.4.0/lib/mini_portile2/mini_portile.rb +0 -556
  1627. data/vendor/bundle/gems/mini_portile2-2.4.0/lib/mini_portile2/mini_portile_cmake.rb +0 -40
  1628. data/vendor/bundle/gems/mini_portile2-2.4.0/lib/mini_portile2/version.rb +0 -3
  1629. data/vendor/bundle/gems/mini_portile2-2.4.0/mini_portile2.gemspec +0 -42
  1630. data/vendor/bundle/gems/mini_portile2-2.4.0/test/assets/git/config +0 -4
  1631. data/vendor/bundle/gems/mini_portile2-2.4.0/test/assets/gpg-fixtures/data +0 -1
  1632. data/vendor/bundle/gems/mini_portile2-2.4.0/test/assets/gpg-fixtures/data.asc +0 -9
  1633. data/vendor/bundle/gems/mini_portile2-2.4.0/test/assets/gpg-fixtures/data.invalid.asc +0 -9
  1634. data/vendor/bundle/gems/mini_portile2-2.4.0/test/assets/patch 1.diff +0 -7
  1635. data/vendor/bundle/gems/mini_portile2-2.4.0/test/assets/test mini portile-1.0.0/configure +0 -11
  1636. data/vendor/bundle/gems/mini_portile2-2.4.0/test/assets/test-cmake-1.0/CMakeLists.txt +0 -7
  1637. data/vendor/bundle/gems/mini_portile2-2.4.0/test/assets/test-cmake-1.0/hello.c +0 -4
  1638. data/vendor/bundle/gems/mini_portile2-2.4.0/test/assets/test-download-archive.tar.gz +0 -1
  1639. data/vendor/bundle/gems/mini_portile2-2.4.0/test/helper.rb +0 -60
  1640. data/vendor/bundle/gems/mini_portile2-2.4.0/test/test_cmake.rb +0 -64
  1641. data/vendor/bundle/gems/mini_portile2-2.4.0/test/test_cook.rb +0 -115
  1642. data/vendor/bundle/gems/mini_portile2-2.4.0/test/test_digest.rb +0 -215
  1643. data/vendor/bundle/gems/mini_portile2-2.4.0/test/test_download.rb +0 -71
  1644. data/vendor/bundle/gems/mini_portile2-2.4.0/test/test_proxy.rb +0 -121
  1645. data/vendor/bundle/gems/multipart-post-2.0.0/Gemfile +0 -14
  1646. data/vendor/bundle/gems/multipart-post-2.0.0/History.txt +0 -60
  1647. data/vendor/bundle/gems/multipart-post-2.0.0/Manifest.txt +0 -9
  1648. data/vendor/bundle/gems/multipart-post-2.0.0/README.md +0 -77
  1649. data/vendor/bundle/gems/multipart-post-2.0.0/Rakefile +0 -9
  1650. data/vendor/bundle/gems/multipart-post-2.0.0/lib/composite_io.rb +0 -108
  1651. data/vendor/bundle/gems/multipart-post-2.0.0/lib/multipart_post.rb +0 -9
  1652. data/vendor/bundle/gems/multipart-post-2.0.0/lib/multipartable.rb +0 -29
  1653. data/vendor/bundle/gems/multipart-post-2.0.0/lib/net/http/post/multipart.rb +0 -27
  1654. data/vendor/bundle/gems/multipart-post-2.0.0/lib/parts.rb +0 -96
  1655. data/vendor/bundle/gems/multipart-post-2.0.0/multipart-post.gemspec +0 -22
  1656. data/vendor/bundle/gems/multipart-post-2.0.0/test/multibyte.txt +0 -1
  1657. data/vendor/bundle/gems/multipart-post-2.0.0/test/net/http/post/test_multipart.rb +0 -110
  1658. data/vendor/bundle/gems/multipart-post-2.0.0/test/test_composite_io.rb +0 -115
  1659. data/vendor/bundle/gems/multipart-post-2.0.0/test/test_parts.rb +0 -86
  1660. data/vendor/bundle/gems/nokogiri-1.10.2/LICENSE-DEPENDENCIES.md +0 -1614
  1661. data/vendor/bundle/gems/nokogiri-1.10.2/LICENSE.md +0 -9
  1662. data/vendor/bundle/gems/nokogiri-1.10.2/README.md +0 -198
  1663. data/vendor/bundle/gems/nokogiri-1.10.2/bin/nokogiri +0 -118
  1664. data/vendor/bundle/gems/nokogiri-1.10.2/dependencies.yml +0 -72
  1665. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/Makefile +0 -627
  1666. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/depend +0 -358
  1667. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/extconf.rb +0 -686
  1668. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/html_document.c +0 -170
  1669. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/html_document.h +0 -10
  1670. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/html_document.o +0 -0
  1671. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/html_element_description.c +0 -279
  1672. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/html_element_description.h +0 -10
  1673. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/html_element_description.o +0 -0
  1674. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/html_entity_lookup.c +0 -32
  1675. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/html_entity_lookup.h +0 -8
  1676. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/html_entity_lookup.o +0 -0
  1677. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/html_sax_parser_context.c +0 -116
  1678. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/html_sax_parser_context.h +0 -11
  1679. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/html_sax_parser_context.o +0 -0
  1680. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/html_sax_push_parser.c +0 -87
  1681. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/html_sax_push_parser.h +0 -9
  1682. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/html_sax_push_parser.o +0 -0
  1683. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/nokogiri.c +0 -141
  1684. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/nokogiri.h +0 -121
  1685. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/nokogiri.o +0 -0
  1686. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/nokogiri.so +0 -0
  1687. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_attr.c +0 -103
  1688. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_attr.h +0 -9
  1689. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_attr.o +0 -0
  1690. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_attribute_decl.c +0 -70
  1691. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_attribute_decl.h +0 -9
  1692. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_attribute_decl.o +0 -0
  1693. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_cdata.c +0 -62
  1694. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_cdata.h +0 -9
  1695. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_cdata.o +0 -0
  1696. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_comment.c +0 -69
  1697. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_comment.h +0 -9
  1698. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_comment.o +0 -0
  1699. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_document.c +0 -608
  1700. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_document.h +0 -23
  1701. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_document.o +0 -0
  1702. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_document_fragment.c +0 -48
  1703. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_document_fragment.h +0 -10
  1704. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_document_fragment.o +0 -0
  1705. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_dtd.c +0 -202
  1706. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_dtd.h +0 -10
  1707. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_dtd.o +0 -0
  1708. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_element_content.c +0 -123
  1709. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_element_content.h +0 -10
  1710. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_element_content.o +0 -0
  1711. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_element_decl.c +0 -69
  1712. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_element_decl.h +0 -9
  1713. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_element_decl.o +0 -0
  1714. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_encoding_handler.c +0 -79
  1715. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_encoding_handler.h +0 -8
  1716. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_encoding_handler.o +0 -0
  1717. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_entity_decl.c +0 -110
  1718. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_entity_decl.h +0 -10
  1719. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_entity_decl.o +0 -0
  1720. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_entity_reference.c +0 -52
  1721. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_entity_reference.h +0 -9
  1722. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_entity_reference.o +0 -0
  1723. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_io.c +0 -61
  1724. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_io.h +0 -11
  1725. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_io.o +0 -0
  1726. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_libxml2_hacks.c +0 -112
  1727. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_libxml2_hacks.h +0 -12
  1728. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_libxml2_hacks.o +0 -0
  1729. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_namespace.c +0 -111
  1730. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_namespace.h +0 -14
  1731. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_namespace.o +0 -0
  1732. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_node.c +0 -1753
  1733. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_node.h +0 -13
  1734. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_node.o +0 -0
  1735. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_node_set.c +0 -486
  1736. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_node_set.h +0 -12
  1737. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_node_set.o +0 -0
  1738. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_processing_instruction.c +0 -56
  1739. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_processing_instruction.h +0 -9
  1740. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_processing_instruction.o +0 -0
  1741. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_reader.c +0 -668
  1742. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_reader.h +0 -10
  1743. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_reader.o +0 -0
  1744. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_relax_ng.c +0 -161
  1745. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_relax_ng.h +0 -9
  1746. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_relax_ng.o +0 -0
  1747. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_sax_parser.c +0 -310
  1748. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_sax_parser.h +0 -39
  1749. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_sax_parser.o +0 -0
  1750. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_sax_parser_context.c +0 -262
  1751. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_sax_parser_context.h +0 -10
  1752. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_sax_parser_context.o +0 -0
  1753. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_sax_push_parser.c +0 -159
  1754. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_sax_push_parser.h +0 -9
  1755. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_sax_push_parser.o +0 -0
  1756. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_schema.c +0 -205
  1757. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_schema.h +0 -9
  1758. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_schema.o +0 -0
  1759. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_syntax_error.c +0 -64
  1760. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_syntax_error.h +0 -13
  1761. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_syntax_error.o +0 -0
  1762. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_text.c +0 -52
  1763. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_text.h +0 -9
  1764. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_text.o +0 -0
  1765. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_xpath_context.c +0 -298
  1766. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_xpath_context.h +0 -10
  1767. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_xpath_context.o +0 -0
  1768. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xslt_stylesheet.c +0 -270
  1769. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xslt_stylesheet.h +0 -14
  1770. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xslt_stylesheet.o +0 -0
  1771. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri.rb +0 -144
  1772. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/css.rb +0 -27
  1773. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/css/node.rb +0 -52
  1774. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/css/parser.rb +0 -750
  1775. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/css/parser.y +0 -272
  1776. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/css/parser_extras.rb +0 -91
  1777. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/css/syntax_error.rb +0 -7
  1778. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/css/tokenizer.rb +0 -152
  1779. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/css/tokenizer.rex +0 -55
  1780. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/css/xpath_visitor.rb +0 -230
  1781. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/decorators/slop.rb +0 -42
  1782. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/html.rb +0 -37
  1783. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/html/builder.rb +0 -35
  1784. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/html/document.rb +0 -335
  1785. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/html/document_fragment.rb +0 -49
  1786. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/html/element_description.rb +0 -23
  1787. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/html/element_description_defaults.rb +0 -671
  1788. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/html/entity_lookup.rb +0 -13
  1789. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/html/sax/parser.rb +0 -62
  1790. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/html/sax/parser_context.rb +0 -16
  1791. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/html/sax/push_parser.rb +0 -36
  1792. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/nokogiri.so +0 -0
  1793. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/syntax_error.rb +0 -4
  1794. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/version.rb +0 -109
  1795. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml.rb +0 -75
  1796. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/attr.rb +0 -14
  1797. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/attribute_decl.rb +0 -18
  1798. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/builder.rb +0 -443
  1799. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/cdata.rb +0 -11
  1800. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/character_data.rb +0 -7
  1801. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/document.rb +0 -285
  1802. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/document_fragment.rb +0 -160
  1803. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/dtd.rb +0 -32
  1804. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/element_content.rb +0 -36
  1805. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/element_decl.rb +0 -13
  1806. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/entity_decl.rb +0 -19
  1807. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/entity_reference.rb +0 -18
  1808. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/namespace.rb +0 -13
  1809. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/node.rb +0 -902
  1810. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/node/save_options.rb +0 -61
  1811. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/node_set.rb +0 -371
  1812. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/notation.rb +0 -6
  1813. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/parse_options.rb +0 -120
  1814. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/pp.rb +0 -2
  1815. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/pp/character_data.rb +0 -18
  1816. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/pp/node.rb +0 -56
  1817. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/processing_instruction.rb +0 -8
  1818. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/reader.rb +0 -112
  1819. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/relax_ng.rb +0 -32
  1820. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/sax.rb +0 -4
  1821. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/sax/document.rb +0 -171
  1822. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/sax/parser.rb +0 -122
  1823. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/sax/parser_context.rb +0 -16
  1824. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/sax/push_parser.rb +0 -60
  1825. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/schema.rb +0 -63
  1826. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/searchable.rb +0 -230
  1827. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/syntax_error.rb +0 -70
  1828. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/text.rb +0 -9
  1829. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/xpath.rb +0 -10
  1830. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/xpath/syntax_error.rb +0 -11
  1831. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/xpath_context.rb +0 -16
  1832. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xslt.rb +0 -56
  1833. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xslt/stylesheet.rb +0 -25
  1834. data/vendor/bundle/gems/nokogiri-1.10.2/lib/xsd/xmlparser/nokogiri.rb +0 -102
  1835. data/vendor/bundle/gems/nokogiri-1.10.2/patches/libxml2/0001-Revert-Do-not-URI-escape-in-server-side-includes.patch +0 -78
  1836. data/vendor/bundle/gems/nokogiri-1.10.2/patches/libxml2/0002-Remove-script-macro-support.patch +0 -40
  1837. data/vendor/bundle/gems/nokogiri-1.10.2/patches/libxml2/0003-Update-entities-to-remove-handling-of-ssi.patch +0 -44
  1838. data/vendor/bundle/gems/octokit-4.13.0/CONTRIBUTING.md +0 -22
  1839. data/vendor/bundle/gems/octokit-4.13.0/LICENSE.md +0 -20
  1840. data/vendor/bundle/gems/octokit-4.13.0/README.md +0 -767
  1841. data/vendor/bundle/gems/octokit-4.13.0/Rakefile +0 -22
  1842. data/vendor/bundle/gems/octokit-4.13.0/lib/ext/sawyer/relation.rb +0 -10
  1843. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit.rb +0 -59
  1844. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/arguments.rb +0 -14
  1845. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/authentication.rb +0 -82
  1846. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client.rb +0 -243
  1847. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/apps.rb +0 -209
  1848. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/authorizations.rb +0 -250
  1849. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/commit_comments.rb +0 -95
  1850. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/commits.rb +0 -239
  1851. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/community_profile.rb +0 -22
  1852. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/contents.rb +0 -164
  1853. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/deployments.rb +0 -72
  1854. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/downloads.rb +0 -50
  1855. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/emojis.rb +0 -18
  1856. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/events.rb +0 -151
  1857. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/feeds.rb +0 -33
  1858. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/gists.rb +0 -234
  1859. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/gitignore.rb +0 -43
  1860. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/hooks.rb +0 -297
  1861. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/issues.rb +0 -363
  1862. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/labels.rb +0 -156
  1863. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/legacy_search.rb +0 -42
  1864. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/licenses.rb +0 -45
  1865. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/markdown.rb +0 -27
  1866. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/marketplace.rb +0 -56
  1867. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/meta.rb +0 -21
  1868. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/milestones.rb +0 -87
  1869. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/notifications.rb +0 -167
  1870. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/objects.rb +0 -141
  1871. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/organizations.rb +0 -792
  1872. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/pages.rb +0 -63
  1873. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/projects.rb +0 -314
  1874. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/pub_sub_hubbub.rb +0 -111
  1875. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/pull_requests.rb +0 -303
  1876. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/rate_limit.rb +0 -54
  1877. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/reactions.rb +0 -158
  1878. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/refs.rb +0 -118
  1879. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/releases.rb +0 -164
  1880. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/repositories.rb +0 -701
  1881. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/repository_invitations.rb +0 -96
  1882. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/reviews.rb +0 -209
  1883. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/say.rb +0 -19
  1884. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/search.rb +0 -91
  1885. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/service_status.rb +0 -38
  1886. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/source_import.rb +0 -161
  1887. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/stats.rb +0 -107
  1888. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/statuses.rb +0 -47
  1889. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/traffic.rb +0 -69
  1890. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/users.rb +0 -355
  1891. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/configurable.rb +0 -151
  1892. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/connection.rb +0 -200
  1893. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/default.rb +0 -176
  1894. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/enterprise_admin_client.rb +0 -40
  1895. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/enterprise_admin_client/admin_stats.rb +0 -120
  1896. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/enterprise_admin_client/license.rb +0 -18
  1897. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/enterprise_admin_client/orgs.rb +0 -27
  1898. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/enterprise_admin_client/search_indexing.rb +0 -83
  1899. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/enterprise_admin_client/users.rb +0 -128
  1900. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/enterprise_management_console_client.rb +0 -50
  1901. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/enterprise_management_console_client/management_console.rb +0 -176
  1902. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/error.rb +0 -300
  1903. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/gist.rb +0 -36
  1904. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/middleware/follow_redirects.rb +0 -131
  1905. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/organization.rb +0 -17
  1906. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/preview.rb +0 -41
  1907. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/rate_limit.rb +0 -33
  1908. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/repo_arguments.rb +0 -19
  1909. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/repository.rb +0 -95
  1910. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/response/feed_parser.rb +0 -21
  1911. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/response/raise_error.rb +0 -21
  1912. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/user.rb +0 -19
  1913. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/version.rb +0 -17
  1914. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/warnable.rb +0 -17
  1915. data/vendor/bundle/gems/octokit-4.13.0/octokit.gemspec +0 -22
  1916. data/vendor/bundle/gems/phantomjs-2.1.1.0/Gemfile +0 -4
  1917. data/vendor/bundle/gems/phantomjs-2.1.1.0/LICENSE +0 -27
  1918. data/vendor/bundle/gems/phantomjs-2.1.1.0/README.md +0 -78
  1919. data/vendor/bundle/gems/phantomjs-2.1.1.0/Rakefile +0 -2
  1920. data/vendor/bundle/gems/phantomjs-2.1.1.0/lib/phantomjs.rb +0 -61
  1921. data/vendor/bundle/gems/phantomjs-2.1.1.0/lib/phantomjs/platform.rb +0 -162
  1922. data/vendor/bundle/gems/phantomjs-2.1.1.0/lib/phantomjs/poltergeist.rb +0 -13
  1923. data/vendor/bundle/gems/phantomjs-2.1.1.0/lib/phantomjs/version.rb +0 -3
  1924. data/vendor/bundle/gems/phantomjs-2.1.1.0/phantomjs.gemspec +0 -27
  1925. data/vendor/bundle/gems/phantomjs-2.1.1.0/spec/phantomjs_spec.rb +0 -50
  1926. data/vendor/bundle/gems/phantomjs-2.1.1.0/spec/platform_spec.rb +0 -203
  1927. data/vendor/bundle/gems/phantomjs-2.1.1.0/spec/runner.js +0 -5
  1928. data/vendor/bundle/gems/phantomjs-2.1.1.0/spec/spec_helper.rb +0 -11
  1929. data/vendor/bundle/gems/pit-0.0.7/ChangeLog +0 -87
  1930. data/vendor/bundle/gems/pit-0.0.7/Gemfile +0 -6
  1931. data/vendor/bundle/gems/pit-0.0.7/README +0 -59
  1932. data/vendor/bundle/gems/pit-0.0.7/Rakefile +0 -9
  1933. data/vendor/bundle/gems/pit-0.0.7/bin/pit +0 -137
  1934. data/vendor/bundle/gems/pit-0.0.7/lib/pit.rb +0 -97
  1935. data/vendor/bundle/gems/pit-0.0.7/lib/pit/version.rb +0 -4
  1936. data/vendor/bundle/gems/pit-0.0.7/pit.gemspec +0 -19
  1937. data/vendor/bundle/gems/pit-0.0.7/test/pit_test.rb +0 -112
  1938. data/vendor/bundle/gems/pit-0.0.7/test/test_helper.rb +0 -3
  1939. data/vendor/bundle/gems/power_assert-1.1.4/BSDL +0 -22
  1940. data/vendor/bundle/gems/power_assert-1.1.4/COPYING +0 -57
  1941. data/vendor/bundle/gems/power_assert-1.1.4/Gemfile +0 -9
  1942. data/vendor/bundle/gems/power_assert-1.1.4/LEGAL +0 -4
  1943. data/vendor/bundle/gems/power_assert-1.1.4/README.rdoc +0 -81
  1944. data/vendor/bundle/gems/power_assert-1.1.4/Rakefile +0 -59
  1945. data/vendor/bundle/gems/power_assert-1.1.4/bin/console +0 -12
  1946. data/vendor/bundle/gems/power_assert-1.1.4/bin/setup +0 -6
  1947. data/vendor/bundle/gems/power_assert-1.1.4/lib/power_assert.rb +0 -98
  1948. data/vendor/bundle/gems/power_assert-1.1.4/lib/power_assert/colorize.rb +0 -9
  1949. data/vendor/bundle/gems/power_assert-1.1.4/lib/power_assert/configuration.rb +0 -46
  1950. data/vendor/bundle/gems/power_assert-1.1.4/lib/power_assert/context.rb +0 -235
  1951. data/vendor/bundle/gems/power_assert-1.1.4/lib/power_assert/enable_tracepoint_events.rb +0 -91
  1952. data/vendor/bundle/gems/power_assert-1.1.4/lib/power_assert/inspector.rb +0 -61
  1953. data/vendor/bundle/gems/power_assert-1.1.4/lib/power_assert/parser.rb +0 -251
  1954. data/vendor/bundle/gems/power_assert-1.1.4/lib/power_assert/version.rb +0 -3
  1955. data/vendor/bundle/gems/power_assert-1.1.4/power_assert.gemspec +0 -31
  1956. data/vendor/bundle/gems/public_suffix-3.0.3/2.0-Upgrade.md +0 -52
  1957. data/vendor/bundle/gems/public_suffix-3.0.3/CHANGELOG.md +0 -340
  1958. data/vendor/bundle/gems/public_suffix-3.0.3/Gemfile +0 -10
  1959. data/vendor/bundle/gems/public_suffix-3.0.3/LICENSE.txt +0 -22
  1960. data/vendor/bundle/gems/public_suffix-3.0.3/README.md +0 -202
  1961. data/vendor/bundle/gems/public_suffix-3.0.3/Rakefile +0 -49
  1962. data/vendor/bundle/gems/public_suffix-3.0.3/bin/console +0 -14
  1963. data/vendor/bundle/gems/public_suffix-3.0.3/data/list.txt +0 -12659
  1964. data/vendor/bundle/gems/public_suffix-3.0.3/lib/public_suffix.rb +0 -175
  1965. data/vendor/bundle/gems/public_suffix-3.0.3/lib/public_suffix/domain.rb +0 -233
  1966. data/vendor/bundle/gems/public_suffix-3.0.3/lib/public_suffix/errors.rb +0 -39
  1967. data/vendor/bundle/gems/public_suffix-3.0.3/lib/public_suffix/list.rb +0 -243
  1968. data/vendor/bundle/gems/public_suffix-3.0.3/lib/public_suffix/rule.rb +0 -348
  1969. data/vendor/bundle/gems/public_suffix-3.0.3/lib/public_suffix/version.rb +0 -10
  1970. data/vendor/bundle/gems/public_suffix-3.0.3/public_suffix.gemspec +0 -25
  1971. data/vendor/bundle/gems/public_suffix-3.0.3/test/acceptance_test.rb +0 -127
  1972. data/vendor/bundle/gems/public_suffix-3.0.3/test/benchmarks/bm_find.rb +0 -66
  1973. data/vendor/bundle/gems/public_suffix-3.0.3/test/benchmarks/bm_find_all.rb +0 -102
  1974. data/vendor/bundle/gems/public_suffix-3.0.3/test/benchmarks/bm_names.rb +0 -91
  1975. data/vendor/bundle/gems/public_suffix-3.0.3/test/benchmarks/bm_select.rb +0 -26
  1976. data/vendor/bundle/gems/public_suffix-3.0.3/test/benchmarks/bm_select_incremental.rb +0 -25
  1977. data/vendor/bundle/gems/public_suffix-3.0.3/test/benchmarks/bm_valid.rb +0 -101
  1978. data/vendor/bundle/gems/public_suffix-3.0.3/test/profilers/domain_profiler.rb +0 -12
  1979. data/vendor/bundle/gems/public_suffix-3.0.3/test/profilers/find_profiler.rb +0 -12
  1980. data/vendor/bundle/gems/public_suffix-3.0.3/test/profilers/find_profiler_jp.rb +0 -12
  1981. data/vendor/bundle/gems/public_suffix-3.0.3/test/profilers/initialization_profiler.rb +0 -11
  1982. data/vendor/bundle/gems/public_suffix-3.0.3/test/profilers/list_profsize.rb +0 -11
  1983. data/vendor/bundle/gems/public_suffix-3.0.3/test/profilers/object_binsize.rb +0 -57
  1984. data/vendor/bundle/gems/public_suffix-3.0.3/test/psl_test.rb +0 -49
  1985. data/vendor/bundle/gems/public_suffix-3.0.3/test/test_helper.rb +0 -13
  1986. data/vendor/bundle/gems/public_suffix-3.0.3/test/tests.txt +0 -98
  1987. data/vendor/bundle/gems/public_suffix-3.0.3/test/unit/domain_test.rb +0 -104
  1988. data/vendor/bundle/gems/public_suffix-3.0.3/test/unit/errors_test.rb +0 -23
  1989. data/vendor/bundle/gems/public_suffix-3.0.3/test/unit/list_test.rb +0 -239
  1990. data/vendor/bundle/gems/public_suffix-3.0.3/test/unit/public_suffix_test.rb +0 -186
  1991. data/vendor/bundle/gems/public_suffix-3.0.3/test/unit/rule_test.rb +0 -220
  1992. data/vendor/bundle/gems/rack-2.0.6/COPYING +0 -18
  1993. data/vendor/bundle/gems/rack-2.0.6/HISTORY.md +0 -505
  1994. data/vendor/bundle/gems/rack-2.0.6/README.rdoc +0 -302
  1995. data/vendor/bundle/gems/rack-2.0.6/Rakefile +0 -116
  1996. data/vendor/bundle/gems/rack-2.0.6/SPEC +0 -264
  1997. data/vendor/bundle/gems/rack-2.0.6/bin/rackup +0 -4
  1998. data/vendor/bundle/gems/rack-2.0.6/contrib/rack.png +0 -0
  1999. data/vendor/bundle/gems/rack-2.0.6/contrib/rack.svg +0 -150
  2000. data/vendor/bundle/gems/rack-2.0.6/contrib/rack_logo.svg +0 -164
  2001. data/vendor/bundle/gems/rack-2.0.6/contrib/rdoc.css +0 -412
  2002. data/vendor/bundle/gems/rack-2.0.6/example/lobster.ru +0 -4
  2003. data/vendor/bundle/gems/rack-2.0.6/example/protectedlobster.rb +0 -14
  2004. data/vendor/bundle/gems/rack-2.0.6/example/protectedlobster.ru +0 -8
  2005. data/vendor/bundle/gems/rack-2.0.6/lib/rack.rb +0 -147
  2006. data/vendor/bundle/gems/rack-2.0.6/lib/rack/auth/abstract/handler.rb +0 -37
  2007. data/vendor/bundle/gems/rack-2.0.6/lib/rack/auth/abstract/request.rb +0 -47
  2008. data/vendor/bundle/gems/rack-2.0.6/lib/rack/auth/basic.rb +0 -58
  2009. data/vendor/bundle/gems/rack-2.0.6/lib/rack/auth/digest/md5.rb +0 -129
  2010. data/vendor/bundle/gems/rack-2.0.6/lib/rack/auth/digest/nonce.rb +0 -51
  2011. data/vendor/bundle/gems/rack-2.0.6/lib/rack/auth/digest/params.rb +0 -52
  2012. data/vendor/bundle/gems/rack-2.0.6/lib/rack/auth/digest/request.rb +0 -41
  2013. data/vendor/bundle/gems/rack-2.0.6/lib/rack/body_proxy.rb +0 -44
  2014. data/vendor/bundle/gems/rack-2.0.6/lib/rack/builder.rb +0 -164
  2015. data/vendor/bundle/gems/rack-2.0.6/lib/rack/cascade.rb +0 -52
  2016. data/vendor/bundle/gems/rack-2.0.6/lib/rack/chunked.rb +0 -69
  2017. data/vendor/bundle/gems/rack-2.0.6/lib/rack/common_logger.rb +0 -72
  2018. data/vendor/bundle/gems/rack-2.0.6/lib/rack/conditional_get.rb +0 -79
  2019. data/vendor/bundle/gems/rack-2.0.6/lib/rack/config.rb +0 -20
  2020. data/vendor/bundle/gems/rack-2.0.6/lib/rack/content_length.rb +0 -37
  2021. data/vendor/bundle/gems/rack-2.0.6/lib/rack/content_type.rb +0 -29
  2022. data/vendor/bundle/gems/rack-2.0.6/lib/rack/deflater.rb +0 -119
  2023. data/vendor/bundle/gems/rack-2.0.6/lib/rack/directory.rb +0 -179
  2024. data/vendor/bundle/gems/rack-2.0.6/lib/rack/etag.rb +0 -74
  2025. data/vendor/bundle/gems/rack-2.0.6/lib/rack/events.rb +0 -154
  2026. data/vendor/bundle/gems/rack-2.0.6/lib/rack/file.rb +0 -176
  2027. data/vendor/bundle/gems/rack-2.0.6/lib/rack/handler.rb +0 -99
  2028. data/vendor/bundle/gems/rack-2.0.6/lib/rack/handler/cgi.rb +0 -60
  2029. data/vendor/bundle/gems/rack-2.0.6/lib/rack/handler/fastcgi.rb +0 -100
  2030. data/vendor/bundle/gems/rack-2.0.6/lib/rack/handler/lsws.rb +0 -61
  2031. data/vendor/bundle/gems/rack-2.0.6/lib/rack/handler/scgi.rb +0 -70
  2032. data/vendor/bundle/gems/rack-2.0.6/lib/rack/handler/thin.rb +0 -36
  2033. data/vendor/bundle/gems/rack-2.0.6/lib/rack/handler/webrick.rb +0 -120
  2034. data/vendor/bundle/gems/rack-2.0.6/lib/rack/head.rb +0 -25
  2035. data/vendor/bundle/gems/rack-2.0.6/lib/rack/lint.rb +0 -760
  2036. data/vendor/bundle/gems/rack-2.0.6/lib/rack/lobster.rb +0 -70
  2037. data/vendor/bundle/gems/rack-2.0.6/lib/rack/lock.rb +0 -31
  2038. data/vendor/bundle/gems/rack-2.0.6/lib/rack/logger.rb +0 -18
  2039. data/vendor/bundle/gems/rack-2.0.6/lib/rack/media_type.rb +0 -38
  2040. data/vendor/bundle/gems/rack-2.0.6/lib/rack/method_override.rb +0 -50
  2041. data/vendor/bundle/gems/rack-2.0.6/lib/rack/mime.rb +0 -677
  2042. data/vendor/bundle/gems/rack-2.0.6/lib/rack/mock.rb +0 -196
  2043. data/vendor/bundle/gems/rack-2.0.6/lib/rack/multipart.rb +0 -63
  2044. data/vendor/bundle/gems/rack-2.0.6/lib/rack/multipart/generator.rb +0 -93
  2045. data/vendor/bundle/gems/rack-2.0.6/lib/rack/multipart/parser.rb +0 -369
  2046. data/vendor/bundle/gems/rack-2.0.6/lib/rack/multipart/uploaded_file.rb +0 -33
  2047. data/vendor/bundle/gems/rack-2.0.6/lib/rack/null_logger.rb +0 -37
  2048. data/vendor/bundle/gems/rack-2.0.6/lib/rack/query_parser.rb +0 -192
  2049. data/vendor/bundle/gems/rack-2.0.6/lib/rack/recursive.rb +0 -62
  2050. data/vendor/bundle/gems/rack-2.0.6/lib/rack/reloader.rb +0 -110
  2051. data/vendor/bundle/gems/rack-2.0.6/lib/rack/request.rb +0 -500
  2052. data/vendor/bundle/gems/rack-2.0.6/lib/rack/response.rb +0 -235
  2053. data/vendor/bundle/gems/rack-2.0.6/lib/rack/rewindable_input.rb +0 -93
  2054. data/vendor/bundle/gems/rack-2.0.6/lib/rack/runtime.rb +0 -32
  2055. data/vendor/bundle/gems/rack-2.0.6/lib/rack/sendfile.rb +0 -158
  2056. data/vendor/bundle/gems/rack-2.0.6/lib/rack/server.rb +0 -395
  2057. data/vendor/bundle/gems/rack-2.0.6/lib/rack/session/abstract/id.rb +0 -445
  2058. data/vendor/bundle/gems/rack-2.0.6/lib/rack/session/cookie.rb +0 -195
  2059. data/vendor/bundle/gems/rack-2.0.6/lib/rack/session/memcache.rb +0 -93
  2060. data/vendor/bundle/gems/rack-2.0.6/lib/rack/session/pool.rb +0 -76
  2061. data/vendor/bundle/gems/rack-2.0.6/lib/rack/show_exceptions.rb +0 -386
  2062. data/vendor/bundle/gems/rack-2.0.6/lib/rack/show_status.rb +0 -113
  2063. data/vendor/bundle/gems/rack-2.0.6/lib/rack/static.rb +0 -175
  2064. data/vendor/bundle/gems/rack-2.0.6/lib/rack/tempfile_reaper.rb +0 -22
  2065. data/vendor/bundle/gems/rack-2.0.6/lib/rack/urlmap.rb +0 -91
  2066. data/vendor/bundle/gems/rack-2.0.6/lib/rack/utils.rb +0 -620
  2067. data/vendor/bundle/gems/rack-2.0.6/rack.gemspec +0 -34
  2068. data/vendor/bundle/gems/rack-2.0.6/test/builder/an_underscore_app.rb +0 -5
  2069. data/vendor/bundle/gems/rack-2.0.6/test/builder/anything.rb +0 -5
  2070. data/vendor/bundle/gems/rack-2.0.6/test/builder/comment.ru +0 -4
  2071. data/vendor/bundle/gems/rack-2.0.6/test/builder/end.ru +0 -5
  2072. data/vendor/bundle/gems/rack-2.0.6/test/builder/line.ru +0 -1
  2073. data/vendor/bundle/gems/rack-2.0.6/test/builder/options.ru +0 -2
  2074. data/vendor/bundle/gems/rack-2.0.6/test/cgi/assets/folder/test.js +0 -1
  2075. data/vendor/bundle/gems/rack-2.0.6/test/cgi/assets/fonts/font.eot +0 -1
  2076. data/vendor/bundle/gems/rack-2.0.6/test/cgi/assets/images/image.png +0 -1
  2077. data/vendor/bundle/gems/rack-2.0.6/test/cgi/assets/index.html +0 -1
  2078. data/vendor/bundle/gems/rack-2.0.6/test/cgi/assets/javascripts/app.js +0 -1
  2079. data/vendor/bundle/gems/rack-2.0.6/test/cgi/assets/stylesheets/app.css +0 -1
  2080. data/vendor/bundle/gems/rack-2.0.6/test/cgi/lighttpd.conf +0 -26
  2081. data/vendor/bundle/gems/rack-2.0.6/test/cgi/rackup_stub.rb +0 -6
  2082. data/vendor/bundle/gems/rack-2.0.6/test/cgi/sample_rackup.ru +0 -5
  2083. data/vendor/bundle/gems/rack-2.0.6/test/cgi/test +0 -9
  2084. data/vendor/bundle/gems/rack-2.0.6/test/cgi/test+directory/test+file +0 -1
  2085. data/vendor/bundle/gems/rack-2.0.6/test/cgi/test.fcgi +0 -9
  2086. data/vendor/bundle/gems/rack-2.0.6/test/cgi/test.gz +0 -0
  2087. data/vendor/bundle/gems/rack-2.0.6/test/cgi/test.ru +0 -5
  2088. data/vendor/bundle/gems/rack-2.0.6/test/gemloader.rb +0 -10
  2089. data/vendor/bundle/gems/rack-2.0.6/test/helper.rb +0 -34
  2090. data/vendor/bundle/gems/rack-2.0.6/test/multipart/bad_robots +0 -259
  2091. data/vendor/bundle/gems/rack-2.0.6/test/multipart/binary +0 -0
  2092. data/vendor/bundle/gems/rack-2.0.6/test/multipart/content_type_and_no_filename +0 -6
  2093. data/vendor/bundle/gems/rack-2.0.6/test/multipart/empty +0 -10
  2094. data/vendor/bundle/gems/rack-2.0.6/test/multipart/fail_16384_nofile +0 -814
  2095. data/vendor/bundle/gems/rack-2.0.6/test/multipart/file1.txt +0 -1
  2096. data/vendor/bundle/gems/rack-2.0.6/test/multipart/filename_and_modification_param +0 -7
  2097. data/vendor/bundle/gems/rack-2.0.6/test/multipart/filename_and_no_name +0 -6
  2098. data/vendor/bundle/gems/rack-2.0.6/test/multipart/filename_with_encoded_words +0 -7
  2099. data/vendor/bundle/gems/rack-2.0.6/test/multipart/filename_with_escaped_quotes +0 -6
  2100. data/vendor/bundle/gems/rack-2.0.6/test/multipart/filename_with_escaped_quotes_and_modification_param +0 -7
  2101. data/vendor/bundle/gems/rack-2.0.6/test/multipart/filename_with_null_byte +0 -7
  2102. data/vendor/bundle/gems/rack-2.0.6/test/multipart/filename_with_percent_escaped_quotes +0 -6
  2103. data/vendor/bundle/gems/rack-2.0.6/test/multipart/filename_with_single_quote +0 -7
  2104. data/vendor/bundle/gems/rack-2.0.6/test/multipart/filename_with_unescaped_percentages +0 -6
  2105. data/vendor/bundle/gems/rack-2.0.6/test/multipart/filename_with_unescaped_percentages2 +0 -6
  2106. data/vendor/bundle/gems/rack-2.0.6/test/multipart/filename_with_unescaped_percentages3 +0 -6
  2107. data/vendor/bundle/gems/rack-2.0.6/test/multipart/filename_with_unescaped_quotes +0 -6
  2108. data/vendor/bundle/gems/rack-2.0.6/test/multipart/ie +0 -6
  2109. data/vendor/bundle/gems/rack-2.0.6/test/multipart/invalid_character +0 -6
  2110. data/vendor/bundle/gems/rack-2.0.6/test/multipart/mixed_files +0 -21
  2111. data/vendor/bundle/gems/rack-2.0.6/test/multipart/nested +0 -10
  2112. data/vendor/bundle/gems/rack-2.0.6/test/multipart/none +0 -9
  2113. data/vendor/bundle/gems/rack-2.0.6/test/multipart/quoted +0 -15
  2114. data/vendor/bundle/gems/rack-2.0.6/test/multipart/rack-logo.png +0 -0
  2115. data/vendor/bundle/gems/rack-2.0.6/test/multipart/semicolon +0 -6
  2116. data/vendor/bundle/gems/rack-2.0.6/test/multipart/text +0 -15
  2117. data/vendor/bundle/gems/rack-2.0.6/test/multipart/three_files_three_fields +0 -31
  2118. data/vendor/bundle/gems/rack-2.0.6/test/multipart/unity3d_wwwform +0 -11
  2119. data/vendor/bundle/gems/rack-2.0.6/test/multipart/webkit +0 -32
  2120. data/vendor/bundle/gems/rack-2.0.6/test/rackup/config.ru +0 -31
  2121. data/vendor/bundle/gems/rack-2.0.6/test/registering_handler/rack/handler/registering_myself.rb +0 -8
  2122. data/vendor/bundle/gems/rack-2.0.6/test/spec_auth_basic.rb +0 -89
  2123. data/vendor/bundle/gems/rack-2.0.6/test/spec_auth_digest.rb +0 -260
  2124. data/vendor/bundle/gems/rack-2.0.6/test/spec_body_proxy.rb +0 -85
  2125. data/vendor/bundle/gems/rack-2.0.6/test/spec_builder.rb +0 -233
  2126. data/vendor/bundle/gems/rack-2.0.6/test/spec_cascade.rb +0 -63
  2127. data/vendor/bundle/gems/rack-2.0.6/test/spec_cgi.rb +0 -84
  2128. data/vendor/bundle/gems/rack-2.0.6/test/spec_chunked.rb +0 -103
  2129. data/vendor/bundle/gems/rack-2.0.6/test/spec_common_logger.rb +0 -95
  2130. data/vendor/bundle/gems/rack-2.0.6/test/spec_conditional_get.rb +0 -103
  2131. data/vendor/bundle/gems/rack-2.0.6/test/spec_config.rb +0 -23
  2132. data/vendor/bundle/gems/rack-2.0.6/test/spec_content_length.rb +0 -86
  2133. data/vendor/bundle/gems/rack-2.0.6/test/spec_content_type.rb +0 -46
  2134. data/vendor/bundle/gems/rack-2.0.6/test/spec_deflater.rb +0 -375
  2135. data/vendor/bundle/gems/rack-2.0.6/test/spec_directory.rb +0 -148
  2136. data/vendor/bundle/gems/rack-2.0.6/test/spec_etag.rb +0 -108
  2137. data/vendor/bundle/gems/rack-2.0.6/test/spec_events.rb +0 -133
  2138. data/vendor/bundle/gems/rack-2.0.6/test/spec_fastcgi.rb +0 -85
  2139. data/vendor/bundle/gems/rack-2.0.6/test/spec_file.rb +0 -264
  2140. data/vendor/bundle/gems/rack-2.0.6/test/spec_handler.rb +0 -57
  2141. data/vendor/bundle/gems/rack-2.0.6/test/spec_head.rb +0 -46
  2142. data/vendor/bundle/gems/rack-2.0.6/test/spec_lint.rb +0 -515
  2143. data/vendor/bundle/gems/rack-2.0.6/test/spec_lobster.rb +0 -59
  2144. data/vendor/bundle/gems/rack-2.0.6/test/spec_lock.rb +0 -204
  2145. data/vendor/bundle/gems/rack-2.0.6/test/spec_logger.rb +0 -24
  2146. data/vendor/bundle/gems/rack-2.0.6/test/spec_media_type.rb +0 -42
  2147. data/vendor/bundle/gems/rack-2.0.6/test/spec_method_override.rb +0 -110
  2148. data/vendor/bundle/gems/rack-2.0.6/test/spec_mime.rb +0 -51
  2149. data/vendor/bundle/gems/rack-2.0.6/test/spec_mock.rb +0 -359
  2150. data/vendor/bundle/gems/rack-2.0.6/test/spec_multipart.rb +0 -722
  2151. data/vendor/bundle/gems/rack-2.0.6/test/spec_null_logger.rb +0 -21
  2152. data/vendor/bundle/gems/rack-2.0.6/test/spec_recursive.rb +0 -75
  2153. data/vendor/bundle/gems/rack-2.0.6/test/spec_request.rb +0 -1398
  2154. data/vendor/bundle/gems/rack-2.0.6/test/spec_response.rb +0 -510
  2155. data/vendor/bundle/gems/rack-2.0.6/test/spec_rewindable_input.rb +0 -128
  2156. data/vendor/bundle/gems/rack-2.0.6/test/spec_runtime.rb +0 -50
  2157. data/vendor/bundle/gems/rack-2.0.6/test/spec_sendfile.rb +0 -125
  2158. data/vendor/bundle/gems/rack-2.0.6/test/spec_server.rb +0 -193
  2159. data/vendor/bundle/gems/rack-2.0.6/test/spec_session_abstract_id.rb +0 -31
  2160. data/vendor/bundle/gems/rack-2.0.6/test/spec_session_abstract_session_hash.rb +0 -45
  2161. data/vendor/bundle/gems/rack-2.0.6/test/spec_session_cookie.rb +0 -442
  2162. data/vendor/bundle/gems/rack-2.0.6/test/spec_session_memcache.rb +0 -320
  2163. data/vendor/bundle/gems/rack-2.0.6/test/spec_session_pool.rb +0 -210
  2164. data/vendor/bundle/gems/rack-2.0.6/test/spec_show_exceptions.rb +0 -93
  2165. data/vendor/bundle/gems/rack-2.0.6/test/spec_show_status.rb +0 -104
  2166. data/vendor/bundle/gems/rack-2.0.6/test/spec_static.rb +0 -184
  2167. data/vendor/bundle/gems/rack-2.0.6/test/spec_tempfile_reaper.rb +0 -64
  2168. data/vendor/bundle/gems/rack-2.0.6/test/spec_thin.rb +0 -96
  2169. data/vendor/bundle/gems/rack-2.0.6/test/spec_urlmap.rb +0 -237
  2170. data/vendor/bundle/gems/rack-2.0.6/test/spec_utils.rb +0 -742
  2171. data/vendor/bundle/gems/rack-2.0.6/test/spec_version.rb +0 -11
  2172. data/vendor/bundle/gems/rack-2.0.6/test/spec_webrick.rb +0 -206
  2173. data/vendor/bundle/gems/rack-2.0.6/test/static/another/index.html +0 -1
  2174. data/vendor/bundle/gems/rack-2.0.6/test/static/foo.html +0 -1
  2175. data/vendor/bundle/gems/rack-2.0.6/test/static/index.html +0 -1
  2176. data/vendor/bundle/gems/rack-2.0.6/test/testrequest.rb +0 -78
  2177. data/vendor/bundle/gems/rack-2.0.6/test/unregistered_handler/rack/handler/unregistered.rb +0 -7
  2178. data/vendor/bundle/gems/rack-2.0.6/test/unregistered_handler/rack/handler/unregistered_long_one.rb +0 -7
  2179. data/vendor/bundle/gems/rack-test-1.1.0/History.md +0 -256
  2180. data/vendor/bundle/gems/rack-test-1.1.0/MIT-LICENSE.txt +0 -19
  2181. data/vendor/bundle/gems/rack-test-1.1.0/README.md +0 -150
  2182. data/vendor/bundle/gems/rack-test-1.1.0/lib/rack/mock_session.rb +0 -63
  2183. data/vendor/bundle/gems/rack-test-1.1.0/lib/rack/test.rb +0 -334
  2184. data/vendor/bundle/gems/rack-test-1.1.0/lib/rack/test/cookie_jar.rb +0 -194
  2185. data/vendor/bundle/gems/rack-test-1.1.0/lib/rack/test/methods.rb +0 -83
  2186. data/vendor/bundle/gems/rack-test-1.1.0/lib/rack/test/mock_digest_request.rb +0 -25
  2187. data/vendor/bundle/gems/rack-test-1.1.0/lib/rack/test/uploaded_file.rb +0 -85
  2188. data/vendor/bundle/gems/rack-test-1.1.0/lib/rack/test/utils.rb +0 -144
  2189. data/vendor/bundle/gems/rack-test-1.1.0/lib/rack/test/version.rb +0 -5
  2190. data/vendor/bundle/gems/racksh-1.0.0/CHANGELOG.txt +0 -34
  2191. data/vendor/bundle/gems/racksh-1.0.0/README.markdown +0 -150
  2192. data/vendor/bundle/gems/racksh-1.0.0/bin/racksh +0 -25
  2193. data/vendor/bundle/gems/racksh-1.0.0/lib/racksh/init.rb +0 -53
  2194. data/vendor/bundle/gems/racksh-1.0.0/lib/racksh/irb.rb +0 -2
  2195. data/vendor/bundle/gems/racksh-1.0.0/lib/racksh/session.rb +0 -18
  2196. data/vendor/bundle/gems/racksh-1.0.0/lib/racksh/version.rb +0 -5
  2197. data/vendor/bundle/gems/rake-12.3.2/CONTRIBUTING.rdoc +0 -43
  2198. data/vendor/bundle/gems/rake-12.3.2/Gemfile +0 -3
  2199. data/vendor/bundle/gems/rake-12.3.2/History.rdoc +0 -2333
  2200. data/vendor/bundle/gems/rake-12.3.2/MIT-LICENSE +0 -21
  2201. data/vendor/bundle/gems/rake-12.3.2/README.rdoc +0 -156
  2202. data/vendor/bundle/gems/rake-12.3.2/Rakefile +0 -41
  2203. data/vendor/bundle/gems/rake-12.3.2/bin/bundle +0 -105
  2204. data/vendor/bundle/gems/rake-12.3.2/bin/console +0 -7
  2205. data/vendor/bundle/gems/rake-12.3.2/bin/rake +0 -29
  2206. data/vendor/bundle/gems/rake-12.3.2/bin/rdoc +0 -29
  2207. data/vendor/bundle/gems/rake-12.3.2/bin/rubocop +0 -29
  2208. data/vendor/bundle/gems/rake-12.3.2/bin/setup +0 -6
  2209. data/vendor/bundle/gems/rake-12.3.2/doc/command_line_usage.rdoc +0 -158
  2210. data/vendor/bundle/gems/rake-12.3.2/doc/example/Rakefile1 +0 -38
  2211. data/vendor/bundle/gems/rake-12.3.2/doc/example/Rakefile2 +0 -35
  2212. data/vendor/bundle/gems/rake-12.3.2/doc/example/a.c +0 -6
  2213. data/vendor/bundle/gems/rake-12.3.2/doc/example/b.c +0 -6
  2214. data/vendor/bundle/gems/rake-12.3.2/doc/example/main.c +0 -11
  2215. data/vendor/bundle/gems/rake-12.3.2/doc/glossary.rdoc +0 -42
  2216. data/vendor/bundle/gems/rake-12.3.2/doc/jamis.rb +0 -592
  2217. data/vendor/bundle/gems/rake-12.3.2/doc/proto_rake.rdoc +0 -127
  2218. data/vendor/bundle/gems/rake-12.3.2/doc/rake.1 +0 -156
  2219. data/vendor/bundle/gems/rake-12.3.2/doc/rakefile.rdoc +0 -622
  2220. data/vendor/bundle/gems/rake-12.3.2/doc/rational.rdoc +0 -151
  2221. data/vendor/bundle/gems/rake-12.3.2/exe/rake +0 -27
  2222. data/vendor/bundle/gems/rake-12.3.2/lib/rake.rb +0 -71
  2223. data/vendor/bundle/gems/rake-12.3.2/lib/rake/application.rb +0 -824
  2224. data/vendor/bundle/gems/rake-12.3.2/lib/rake/backtrace.rb +0 -24
  2225. data/vendor/bundle/gems/rake-12.3.2/lib/rake/clean.rb +0 -78
  2226. data/vendor/bundle/gems/rake-12.3.2/lib/rake/cloneable.rb +0 -17
  2227. data/vendor/bundle/gems/rake-12.3.2/lib/rake/cpu_counter.rb +0 -107
  2228. data/vendor/bundle/gems/rake-12.3.2/lib/rake/default_loader.rb +0 -15
  2229. data/vendor/bundle/gems/rake-12.3.2/lib/rake/dsl_definition.rb +0 -195
  2230. data/vendor/bundle/gems/rake-12.3.2/lib/rake/early_time.rb +0 -22
  2231. data/vendor/bundle/gems/rake-12.3.2/lib/rake/ext/core.rb +0 -26
  2232. data/vendor/bundle/gems/rake-12.3.2/lib/rake/ext/string.rb +0 -176
  2233. data/vendor/bundle/gems/rake-12.3.2/lib/rake/file_creation_task.rb +0 -25
  2234. data/vendor/bundle/gems/rake-12.3.2/lib/rake/file_list.rb +0 -435
  2235. data/vendor/bundle/gems/rake-12.3.2/lib/rake/file_task.rb +0 -54
  2236. data/vendor/bundle/gems/rake-12.3.2/lib/rake/file_utils.rb +0 -137
  2237. data/vendor/bundle/gems/rake-12.3.2/lib/rake/file_utils_ext.rb +0 -145
  2238. data/vendor/bundle/gems/rake-12.3.2/lib/rake/invocation_chain.rb +0 -57
  2239. data/vendor/bundle/gems/rake-12.3.2/lib/rake/invocation_exception_mixin.rb +0 -17
  2240. data/vendor/bundle/gems/rake-12.3.2/lib/rake/late_time.rb +0 -18
  2241. data/vendor/bundle/gems/rake-12.3.2/lib/rake/linked_list.rb +0 -112
  2242. data/vendor/bundle/gems/rake-12.3.2/lib/rake/loaders/makefile.rb +0 -54
  2243. data/vendor/bundle/gems/rake-12.3.2/lib/rake/multi_task.rb +0 -14
  2244. data/vendor/bundle/gems/rake-12.3.2/lib/rake/name_space.rb +0 -38
  2245. data/vendor/bundle/gems/rake-12.3.2/lib/rake/packagetask.rb +0 -207
  2246. data/vendor/bundle/gems/rake-12.3.2/lib/rake/phony.rb +0 -16
  2247. data/vendor/bundle/gems/rake-12.3.2/lib/rake/private_reader.rb +0 -21
  2248. data/vendor/bundle/gems/rake-12.3.2/lib/rake/promise.rb +0 -100
  2249. data/vendor/bundle/gems/rake-12.3.2/lib/rake/pseudo_status.rb +0 -30
  2250. data/vendor/bundle/gems/rake-12.3.2/lib/rake/rake_module.rb +0 -67
  2251. data/vendor/bundle/gems/rake-12.3.2/lib/rake/rake_test_loader.rb +0 -27
  2252. data/vendor/bundle/gems/rake-12.3.2/lib/rake/rule_recursion_overflow_error.rb +0 -20
  2253. data/vendor/bundle/gems/rake-12.3.2/lib/rake/scope.rb +0 -43
  2254. data/vendor/bundle/gems/rake-12.3.2/lib/rake/task.rb +0 -413
  2255. data/vendor/bundle/gems/rake-12.3.2/lib/rake/task_argument_error.rb +0 -8
  2256. data/vendor/bundle/gems/rake-12.3.2/lib/rake/task_arguments.rb +0 -109
  2257. data/vendor/bundle/gems/rake-12.3.2/lib/rake/task_manager.rb +0 -323
  2258. data/vendor/bundle/gems/rake-12.3.2/lib/rake/tasklib.rb +0 -12
  2259. data/vendor/bundle/gems/rake-12.3.2/lib/rake/testtask.rb +0 -224
  2260. data/vendor/bundle/gems/rake-12.3.2/lib/rake/thread_history_display.rb +0 -49
  2261. data/vendor/bundle/gems/rake-12.3.2/lib/rake/thread_pool.rb +0 -163
  2262. data/vendor/bundle/gems/rake-12.3.2/lib/rake/trace_output.rb +0 -23
  2263. data/vendor/bundle/gems/rake-12.3.2/lib/rake/version.rb +0 -10
  2264. data/vendor/bundle/gems/rake-12.3.2/lib/rake/win32.rb +0 -51
  2265. data/vendor/bundle/gems/rake-12.3.2/rake.gemspec +0 -42
  2266. data/vendor/bundle/gems/redcarpet-3.4.0/COPYING +0 -20
  2267. data/vendor/bundle/gems/redcarpet-3.4.0/Gemfile +0 -9
  2268. data/vendor/bundle/gems/redcarpet-3.4.0/README.markdown +0 -404
  2269. data/vendor/bundle/gems/redcarpet-3.4.0/Rakefile +0 -60
  2270. data/vendor/bundle/gems/redcarpet-3.4.0/bin/redcarpet +0 -7
  2271. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/Makefile +0 -265
  2272. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/autolink.c +0 -309
  2273. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/autolink.h +0 -55
  2274. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/autolink.o +0 -0
  2275. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/buffer.c +0 -203
  2276. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/buffer.h +0 -89
  2277. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/buffer.o +0 -0
  2278. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/extconf.rb +0 -6
  2279. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/houdini.h +0 -51
  2280. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/houdini_href_e.c +0 -124
  2281. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/houdini_href_e.o +0 -0
  2282. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/houdini_html_e.c +0 -105
  2283. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/houdini_html_e.o +0 -0
  2284. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/html.c +0 -842
  2285. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/html.h +0 -84
  2286. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/html.o +0 -0
  2287. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/html_blocks.h +0 -227
  2288. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/html_smartypants.c +0 -457
  2289. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/html_smartypants.o +0 -0
  2290. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/markdown.c +0 -2915
  2291. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/markdown.h +0 -143
  2292. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/markdown.o +0 -0
  2293. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/rc_markdown.c +0 -174
  2294. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/rc_markdown.o +0 -0
  2295. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/rc_render.c +0 -554
  2296. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/rc_render.o +0 -0
  2297. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/redcarpet.h +0 -52
  2298. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/redcarpet.so +0 -0
  2299. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/stack.c +0 -84
  2300. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/stack.h +0 -48
  2301. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/stack.o +0 -0
  2302. data/vendor/bundle/gems/redcarpet-3.4.0/lib/redcarpet.rb +0 -92
  2303. data/vendor/bundle/gems/redcarpet-3.4.0/lib/redcarpet.so +0 -0
  2304. data/vendor/bundle/gems/redcarpet-3.4.0/lib/redcarpet/cli.rb +0 -86
  2305. data/vendor/bundle/gems/redcarpet-3.4.0/lib/redcarpet/compat.rb +0 -73
  2306. data/vendor/bundle/gems/redcarpet-3.4.0/lib/redcarpet/render_man.rb +0 -65
  2307. data/vendor/bundle/gems/redcarpet-3.4.0/lib/redcarpet/render_strip.rb +0 -60
  2308. data/vendor/bundle/gems/redcarpet-3.4.0/redcarpet.gemspec +0 -71
  2309. data/vendor/bundle/gems/redcarpet-3.4.0/test/benchmark.rb +0 -24
  2310. data/vendor/bundle/gems/redcarpet-3.4.0/test/custom_render_test.rb +0 -57
  2311. data/vendor/bundle/gems/redcarpet-3.4.0/test/fixtures/benchmark.md +0 -232
  2312. data/vendor/bundle/gems/redcarpet-3.4.0/test/html5_test.rb +0 -82
  2313. data/vendor/bundle/gems/redcarpet-3.4.0/test/html_render_test.rb +0 -268
  2314. data/vendor/bundle/gems/redcarpet-3.4.0/test/html_toc_render_test.rb +0 -82
  2315. data/vendor/bundle/gems/redcarpet-3.4.0/test/markdown_test.rb +0 -406
  2316. data/vendor/bundle/gems/redcarpet-3.4.0/test/pathological_inputs_test.rb +0 -34
  2317. data/vendor/bundle/gems/redcarpet-3.4.0/test/redcarpet_bin_test.rb +0 -80
  2318. data/vendor/bundle/gems/redcarpet-3.4.0/test/redcarpet_compat_test.rb +0 -38
  2319. data/vendor/bundle/gems/redcarpet-3.4.0/test/safe_render_test.rb +0 -35
  2320. data/vendor/bundle/gems/redcarpet-3.4.0/test/smarty_html_test.rb +0 -45
  2321. data/vendor/bundle/gems/redcarpet-3.4.0/test/smarty_pants_test.rb +0 -58
  2322. data/vendor/bundle/gems/redcarpet-3.4.0/test/stripdown_render_test.rb +0 -61
  2323. data/vendor/bundle/gems/redcarpet-3.4.0/test/test_helper.rb +0 -47
  2324. data/vendor/bundle/gems/regexp_parser-1.3.0/CHANGELOG.md +0 -285
  2325. data/vendor/bundle/gems/regexp_parser-1.3.0/Gemfile +0 -9
  2326. data/vendor/bundle/gems/regexp_parser-1.3.0/LICENSE +0 -22
  2327. data/vendor/bundle/gems/regexp_parser-1.3.0/README.md +0 -474
  2328. data/vendor/bundle/gems/regexp_parser-1.3.0/Rakefile +0 -88
  2329. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser.rb +0 -8
  2330. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression.rb +0 -188
  2331. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/classes/alternation.rb +0 -10
  2332. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/classes/anchor.rb +0 -26
  2333. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/classes/backref.rb +0 -47
  2334. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/classes/conditional.rb +0 -53
  2335. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/classes/escape.rb +0 -98
  2336. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/classes/free_space.rb +0 -17
  2337. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/classes/group.rb +0 -58
  2338. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/classes/keep.rb +0 -7
  2339. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/classes/literal.rb +0 -7
  2340. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/classes/posix_class.rb +0 -11
  2341. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/classes/property.rb +0 -120
  2342. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/classes/root.rb +0 -24
  2343. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/classes/set.rb +0 -27
  2344. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/classes/set/intersection.rb +0 -9
  2345. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/classes/set/range.rb +0 -23
  2346. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/classes/type.rb +0 -19
  2347. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/methods/strfregexp.rb +0 -115
  2348. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/methods/tests.rb +0 -106
  2349. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/methods/traverse.rb +0 -62
  2350. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/quantifier.rb +0 -44
  2351. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/sequence.rb +0 -70
  2352. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/sequence_operation.rb +0 -29
  2353. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/subexpression.rb +0 -61
  2354. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/lexer.rb +0 -141
  2355. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/parser.rb +0 -630
  2356. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/scanner.rb +0 -2935
  2357. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/scanner/char_type.rl +0 -31
  2358. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/scanner/properties/long.yml +0 -561
  2359. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/scanner/properties/short.yml +0 -225
  2360. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/scanner/property.rl +0 -30
  2361. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/scanner/scanner.rl +0 -1001
  2362. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax.rb +0 -9
  2363. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/any.rb +0 -15
  2364. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/base.rb +0 -95
  2365. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/tokens.rb +0 -53
  2366. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/tokens/anchor.rb +0 -15
  2367. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/tokens/assertion.rb +0 -13
  2368. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/tokens/backref.rb +0 -24
  2369. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/tokens/character_set.rb +0 -13
  2370. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/tokens/character_type.rb +0 -16
  2371. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/tokens/conditional.rb +0 -16
  2372. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/tokens/escape.rb +0 -30
  2373. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/tokens/group.rb +0 -23
  2374. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/tokens/keep.rb +0 -12
  2375. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/tokens/meta.rb +0 -13
  2376. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/tokens/posix_class.rb +0 -17
  2377. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/tokens/quantifier.rb +0 -35
  2378. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/tokens/unicode_property.rb +0 -624
  2379. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/version_lookup.rb +0 -82
  2380. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/versions.rb +0 -6
  2381. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/versions/1.8.6.rb +0 -21
  2382. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/versions/1.9.1.rb +0 -18
  2383. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/versions/1.9.3.rb +0 -11
  2384. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/versions/2.0.0.rb +0 -17
  2385. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/versions/2.2.0.rb +0 -10
  2386. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/versions/2.3.0.rb +0 -10
  2387. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/versions/2.4.0.rb +0 -10
  2388. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/versions/2.4.1.rb +0 -9
  2389. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/versions/2.5.0.rb +0 -10
  2390. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/token.rb +0 -35
  2391. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/version.rb +0 -5
  2392. data/vendor/bundle/gems/regexp_parser-1.3.0/regexp_parser.gemspec +0 -36
  2393. data/vendor/bundle/gems/regexp_parser-1.3.0/test/expression/test_all.rb +0 -12
  2394. data/vendor/bundle/gems/regexp_parser-1.3.0/test/expression/test_base.rb +0 -90
  2395. data/vendor/bundle/gems/regexp_parser-1.3.0/test/expression/test_clone.rb +0 -89
  2396. data/vendor/bundle/gems/regexp_parser-1.3.0/test/expression/test_conditionals.rb +0 -113
  2397. data/vendor/bundle/gems/regexp_parser-1.3.0/test/expression/test_free_space.rb +0 -35
  2398. data/vendor/bundle/gems/regexp_parser-1.3.0/test/expression/test_set.rb +0 -84
  2399. data/vendor/bundle/gems/regexp_parser-1.3.0/test/expression/test_strfregexp.rb +0 -230
  2400. data/vendor/bundle/gems/regexp_parser-1.3.0/test/expression/test_subexpression.rb +0 -58
  2401. data/vendor/bundle/gems/regexp_parser-1.3.0/test/expression/test_tests.rb +0 -99
  2402. data/vendor/bundle/gems/regexp_parser-1.3.0/test/expression/test_to_h.rb +0 -59
  2403. data/vendor/bundle/gems/regexp_parser-1.3.0/test/expression/test_to_s.rb +0 -104
  2404. data/vendor/bundle/gems/regexp_parser-1.3.0/test/expression/test_traverse.rb +0 -161
  2405. data/vendor/bundle/gems/regexp_parser-1.3.0/test/helpers.rb +0 -10
  2406. data/vendor/bundle/gems/regexp_parser-1.3.0/test/lexer/test_all.rb +0 -41
  2407. data/vendor/bundle/gems/regexp_parser-1.3.0/test/lexer/test_conditionals.rb +0 -127
  2408. data/vendor/bundle/gems/regexp_parser-1.3.0/test/lexer/test_keep.rb +0 -24
  2409. data/vendor/bundle/gems/regexp_parser-1.3.0/test/lexer/test_literals.rb +0 -130
  2410. data/vendor/bundle/gems/regexp_parser-1.3.0/test/lexer/test_nesting.rb +0 -132
  2411. data/vendor/bundle/gems/regexp_parser-1.3.0/test/lexer/test_refcalls.rb +0 -56
  2412. data/vendor/bundle/gems/regexp_parser-1.3.0/test/parser/set/test_intersections.rb +0 -127
  2413. data/vendor/bundle/gems/regexp_parser-1.3.0/test/parser/set/test_ranges.rb +0 -111
  2414. data/vendor/bundle/gems/regexp_parser-1.3.0/test/parser/test_all.rb +0 -64
  2415. data/vendor/bundle/gems/regexp_parser-1.3.0/test/parser/test_alternation.rb +0 -92
  2416. data/vendor/bundle/gems/regexp_parser-1.3.0/test/parser/test_anchors.rb +0 -34
  2417. data/vendor/bundle/gems/regexp_parser-1.3.0/test/parser/test_conditionals.rb +0 -187
  2418. data/vendor/bundle/gems/regexp_parser-1.3.0/test/parser/test_errors.rb +0 -63
  2419. data/vendor/bundle/gems/regexp_parser-1.3.0/test/parser/test_escapes.rb +0 -134
  2420. data/vendor/bundle/gems/regexp_parser-1.3.0/test/parser/test_free_space.rb +0 -139
  2421. data/vendor/bundle/gems/regexp_parser-1.3.0/test/parser/test_groups.rb +0 -289
  2422. data/vendor/bundle/gems/regexp_parser-1.3.0/test/parser/test_keep.rb +0 -21
  2423. data/vendor/bundle/gems/regexp_parser-1.3.0/test/parser/test_posix_classes.rb +0 -27
  2424. data/vendor/bundle/gems/regexp_parser-1.3.0/test/parser/test_properties.rb +0 -133
  2425. data/vendor/bundle/gems/regexp_parser-1.3.0/test/parser/test_quantifiers.rb +0 -301
  2426. data/vendor/bundle/gems/regexp_parser-1.3.0/test/parser/test_refcalls.rb +0 -186
  2427. data/vendor/bundle/gems/regexp_parser-1.3.0/test/parser/test_sets.rb +0 -179
  2428. data/vendor/bundle/gems/regexp_parser-1.3.0/test/parser/test_types.rb +0 -50
  2429. data/vendor/bundle/gems/regexp_parser-1.3.0/test/scanner/test_all.rb +0 -38
  2430. data/vendor/bundle/gems/regexp_parser-1.3.0/test/scanner/test_anchors.rb +0 -38
  2431. data/vendor/bundle/gems/regexp_parser-1.3.0/test/scanner/test_conditionals.rb +0 -184
  2432. data/vendor/bundle/gems/regexp_parser-1.3.0/test/scanner/test_errors.rb +0 -91
  2433. data/vendor/bundle/gems/regexp_parser-1.3.0/test/scanner/test_escapes.rb +0 -56
  2434. data/vendor/bundle/gems/regexp_parser-1.3.0/test/scanner/test_free_space.rb +0 -200
  2435. data/vendor/bundle/gems/regexp_parser-1.3.0/test/scanner/test_groups.rb +0 -79
  2436. data/vendor/bundle/gems/regexp_parser-1.3.0/test/scanner/test_keep.rb +0 -35
  2437. data/vendor/bundle/gems/regexp_parser-1.3.0/test/scanner/test_literals.rb +0 -89
  2438. data/vendor/bundle/gems/regexp_parser-1.3.0/test/scanner/test_meta.rb +0 -40
  2439. data/vendor/bundle/gems/regexp_parser-1.3.0/test/scanner/test_properties.rb +0 -312
  2440. data/vendor/bundle/gems/regexp_parser-1.3.0/test/scanner/test_quantifiers.rb +0 -37
  2441. data/vendor/bundle/gems/regexp_parser-1.3.0/test/scanner/test_refcalls.rb +0 -52
  2442. data/vendor/bundle/gems/regexp_parser-1.3.0/test/scanner/test_scripts.rb +0 -53
  2443. data/vendor/bundle/gems/regexp_parser-1.3.0/test/scanner/test_sets.rb +0 -119
  2444. data/vendor/bundle/gems/regexp_parser-1.3.0/test/scanner/test_types.rb +0 -35
  2445. data/vendor/bundle/gems/regexp_parser-1.3.0/test/scanner/test_unicode_blocks.rb +0 -30
  2446. data/vendor/bundle/gems/regexp_parser-1.3.0/test/support/disable_autotest.rb +0 -8
  2447. data/vendor/bundle/gems/regexp_parser-1.3.0/test/support/runner.rb +0 -41
  2448. data/vendor/bundle/gems/regexp_parser-1.3.0/test/support/warning_extractor.rb +0 -62
  2449. data/vendor/bundle/gems/regexp_parser-1.3.0/test/syntax/test_all.rb +0 -6
  2450. data/vendor/bundle/gems/regexp_parser-1.3.0/test/syntax/test_syntax.rb +0 -61
  2451. data/vendor/bundle/gems/regexp_parser-1.3.0/test/syntax/test_syntax_token_map.rb +0 -25
  2452. data/vendor/bundle/gems/regexp_parser-1.3.0/test/syntax/versions/test_1.8.rb +0 -55
  2453. data/vendor/bundle/gems/regexp_parser-1.3.0/test/syntax/versions/test_1.9.1.rb +0 -36
  2454. data/vendor/bundle/gems/regexp_parser-1.3.0/test/syntax/versions/test_1.9.3.rb +0 -32
  2455. data/vendor/bundle/gems/regexp_parser-1.3.0/test/syntax/versions/test_2.0.0.rb +0 -37
  2456. data/vendor/bundle/gems/regexp_parser-1.3.0/test/syntax/versions/test_2.2.0.rb +0 -32
  2457. data/vendor/bundle/gems/regexp_parser-1.3.0/test/syntax/versions/test_aliases.rb +0 -129
  2458. data/vendor/bundle/gems/regexp_parser-1.3.0/test/syntax/versions/test_all.rb +0 -5
  2459. data/vendor/bundle/gems/regexp_parser-1.3.0/test/test_all.rb +0 -5
  2460. data/vendor/bundle/gems/regexp_parser-1.3.0/test/token/test_all.rb +0 -2
  2461. data/vendor/bundle/gems/regexp_parser-1.3.0/test/token/test_token.rb +0 -107
  2462. data/vendor/bundle/gems/rspec-3.8.0/LICENSE.md +0 -27
  2463. data/vendor/bundle/gems/rspec-3.8.0/README.md +0 -43
  2464. data/vendor/bundle/gems/rspec-3.8.0/lib/rspec.rb +0 -3
  2465. data/vendor/bundle/gems/rspec-3.8.0/lib/rspec/version.rb +0 -5
  2466. data/vendor/bundle/gems/rspec-core-3.8.0/Changelog.md +0 -2221
  2467. data/vendor/bundle/gems/rspec-core-3.8.0/LICENSE.md +0 -26
  2468. data/vendor/bundle/gems/rspec-core-3.8.0/README.md +0 -384
  2469. data/vendor/bundle/gems/rspec-core-3.8.0/exe/rspec +0 -4
  2470. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/autorun.rb +0 -3
  2471. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core.rb +0 -185
  2472. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/backtrace_formatter.rb +0 -65
  2473. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/bisect/coordinator.rb +0 -62
  2474. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/bisect/example_minimizer.rb +0 -173
  2475. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/bisect/fork_runner.rb +0 -134
  2476. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/bisect/server.rb +0 -61
  2477. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/bisect/shell_command.rb +0 -126
  2478. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/bisect/shell_runner.rb +0 -73
  2479. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/bisect/utilities.rb +0 -58
  2480. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/configuration.rb +0 -2289
  2481. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/configuration_options.rb +0 -233
  2482. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/drb.rb +0 -113
  2483. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/dsl.rb +0 -98
  2484. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/example.rb +0 -653
  2485. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/example_group.rb +0 -885
  2486. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/example_status_persister.rb +0 -235
  2487. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/filter_manager.rb +0 -231
  2488. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/flat_map.rb +0 -20
  2489. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters.rb +0 -269
  2490. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/base_bisect_formatter.rb +0 -45
  2491. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/base_formatter.rb +0 -70
  2492. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/base_text_formatter.rb +0 -75
  2493. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/bisect_drb_formatter.rb +0 -29
  2494. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/bisect_progress_formatter.rb +0 -157
  2495. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/console_codes.rb +0 -68
  2496. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/deprecation_formatter.rb +0 -223
  2497. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/documentation_formatter.rb +0 -70
  2498. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/exception_presenter.rb +0 -497
  2499. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/fallback_message_formatter.rb +0 -28
  2500. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/helpers.rb +0 -110
  2501. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/html_formatter.rb +0 -153
  2502. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/html_printer.rb +0 -414
  2503. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/html_snippet_extractor.rb +0 -120
  2504. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/json_formatter.rb +0 -102
  2505. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/profile_formatter.rb +0 -68
  2506. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/progress_formatter.rb +0 -29
  2507. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/protocol.rb +0 -182
  2508. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/snippet_extractor.rb +0 -134
  2509. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/syntax_highlighter.rb +0 -91
  2510. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/hooks.rb +0 -624
  2511. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/invocations.rb +0 -87
  2512. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/memoized_helpers.rb +0 -535
  2513. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/metadata.rb +0 -499
  2514. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/metadata_filter.rb +0 -255
  2515. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/minitest_assertions_adapter.rb +0 -31
  2516. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/mocking_adapters/flexmock.rb +0 -31
  2517. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/mocking_adapters/mocha.rb +0 -57
  2518. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/mocking_adapters/null.rb +0 -14
  2519. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/mocking_adapters/rr.rb +0 -31
  2520. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/mocking_adapters/rspec.rb +0 -32
  2521. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/notifications.rb +0 -521
  2522. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/option_parser.rb +0 -309
  2523. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/ordering.rb +0 -158
  2524. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/output_wrapper.rb +0 -29
  2525. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/pending.rb +0 -165
  2526. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/profiler.rb +0 -34
  2527. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/project_initializer.rb +0 -48
  2528. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/project_initializer/spec/spec_helper.rb +0 -100
  2529. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/rake_task.rb +0 -168
  2530. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/reporter.rb +0 -257
  2531. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/ruby_project.rb +0 -53
  2532. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/runner.rb +0 -199
  2533. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/sandbox.rb +0 -37
  2534. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/set.rb +0 -54
  2535. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/shared_context.rb +0 -55
  2536. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/shared_example_group.rb +0 -269
  2537. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/shell_escape.rb +0 -49
  2538. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/test_unit_assertions_adapter.rb +0 -30
  2539. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/version.rb +0 -9
  2540. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/warnings.rb +0 -40
  2541. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/world.rb +0 -275
  2542. data/vendor/bundle/gems/rspec-expectations-3.8.2/Changelog.md +0 -1120
  2543. data/vendor/bundle/gems/rspec-expectations-3.8.2/LICENSE.md +0 -25
  2544. data/vendor/bundle/gems/rspec-expectations-3.8.2/README.md +0 -305
  2545. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/expectations.rb +0 -82
  2546. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/expectations/block_snippet_extractor.rb +0 -253
  2547. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/expectations/configuration.rb +0 -215
  2548. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/expectations/expectation_target.rb +0 -127
  2549. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/expectations/fail_with.rb +0 -39
  2550. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/expectations/failure_aggregator.rb +0 -194
  2551. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/expectations/handler.rb +0 -170
  2552. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/expectations/minitest_integration.rb +0 -58
  2553. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/expectations/syntax.rb +0 -132
  2554. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/expectations/version.rb +0 -8
  2555. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers.rb +0 -1034
  2556. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/aliased_matcher.rb +0 -116
  2557. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in.rb +0 -52
  2558. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/all.rb +0 -85
  2559. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/base_matcher.rb +0 -193
  2560. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/be.rb +0 -288
  2561. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/be_between.rb +0 -77
  2562. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/be_instance_of.rb +0 -22
  2563. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/be_kind_of.rb +0 -16
  2564. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/be_within.rb +0 -72
  2565. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/change.rb +0 -426
  2566. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/compound.rb +0 -271
  2567. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/contain_exactly.rb +0 -302
  2568. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/cover.rb +0 -24
  2569. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/eq.rb +0 -40
  2570. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/eql.rb +0 -34
  2571. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/equal.rb +0 -81
  2572. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/exist.rb +0 -90
  2573. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/has.rb +0 -103
  2574. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/have_attributes.rb +0 -114
  2575. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/include.rb +0 -149
  2576. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/match.rb +0 -106
  2577. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/operators.rb +0 -128
  2578. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/output.rb +0 -200
  2579. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/raise_error.rb +0 -230
  2580. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/respond_to.rb +0 -165
  2581. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/satisfy.rb +0 -60
  2582. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/start_or_end_with.rb +0 -94
  2583. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/throw_symbol.rb +0 -132
  2584. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/yield.rb +0 -432
  2585. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/composable.rb +0 -171
  2586. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/dsl.rb +0 -527
  2587. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/english_phrasing.rb +0 -58
  2588. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/expecteds_for_multiple_diffs.rb +0 -73
  2589. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/fail_matchers.rb +0 -42
  2590. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/generated_descriptions.rb +0 -41
  2591. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/matcher_delegator.rb +0 -35
  2592. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/matcher_protocol.rb +0 -99
  2593. data/vendor/bundle/gems/rspec-mocks-3.8.0/Changelog.md +0 -1100
  2594. data/vendor/bundle/gems/rspec-mocks-3.8.0/LICENSE.md +0 -25
  2595. data/vendor/bundle/gems/rspec-mocks-3.8.0/README.md +0 -460
  2596. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks.rb +0 -130
  2597. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/any_instance.rb +0 -11
  2598. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/any_instance/chain.rb +0 -110
  2599. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/any_instance/error_generator.rb +0 -31
  2600. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/any_instance/expect_chain_chain.rb +0 -31
  2601. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/any_instance/expectation_chain.rb +0 -50
  2602. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/any_instance/message_chains.rb +0 -83
  2603. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/any_instance/proxy.rb +0 -116
  2604. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/any_instance/recorder.rb +0 -289
  2605. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/any_instance/stub_chain.rb +0 -51
  2606. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/any_instance/stub_chain_chain.rb +0 -23
  2607. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/argument_list_matcher.rb +0 -100
  2608. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/argument_matchers.rb +0 -320
  2609. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/configuration.rb +0 -212
  2610. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/error_generator.rb +0 -369
  2611. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/example_methods.rb +0 -434
  2612. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/instance_method_stasher.rb +0 -146
  2613. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/marshal_extension.rb +0 -41
  2614. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/matchers/expectation_customization.rb +0 -20
  2615. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/matchers/have_received.rb +0 -134
  2616. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/matchers/receive.rb +0 -132
  2617. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/matchers/receive_message_chain.rb +0 -82
  2618. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/matchers/receive_messages.rb +0 -77
  2619. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/message_chain.rb +0 -87
  2620. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/message_expectation.rb +0 -741
  2621. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/method_double.rb +0 -287
  2622. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/method_reference.rb +0 -202
  2623. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/minitest_integration.rb +0 -68
  2624. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/mutate_const.rb +0 -339
  2625. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/object_reference.rb +0 -149
  2626. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/order_group.rb +0 -81
  2627. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/proxy.rb +0 -485
  2628. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/space.rb +0 -238
  2629. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/standalone.rb +0 -3
  2630. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/syntax.rb +0 -325
  2631. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/targets.rb +0 -124
  2632. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/test_double.rb +0 -171
  2633. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/verifying_double.rb +0 -129
  2634. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/verifying_message_expectation.rb +0 -54
  2635. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/verifying_proxy.rb +0 -220
  2636. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/version.rb +0 -9
  2637. data/vendor/bundle/gems/rspec-support-3.8.0/Changelog.md +0 -242
  2638. data/vendor/bundle/gems/rspec-support-3.8.0/LICENSE.md +0 -23
  2639. data/vendor/bundle/gems/rspec-support-3.8.0/README.md +0 -40
  2640. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support.rb +0 -149
  2641. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/caller_filter.rb +0 -83
  2642. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/comparable_version.rb +0 -46
  2643. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/differ.rb +0 -215
  2644. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/directory_maker.rb +0 -63
  2645. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/encoded_string.rb +0 -165
  2646. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/fuzzy_matcher.rb +0 -48
  2647. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/hunk_generator.rb +0 -47
  2648. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/matcher_definition.rb +0 -42
  2649. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/method_signature_verifier.rb +0 -426
  2650. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/mutex.rb +0 -73
  2651. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/object_formatter.rb +0 -275
  2652. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/recursive_const_methods.rb +0 -76
  2653. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/reentrant_mutex.rb +0 -53
  2654. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/ruby_features.rb +0 -176
  2655. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/source.rb +0 -75
  2656. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/source/location.rb +0 -21
  2657. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/source/node.rb +0 -110
  2658. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/source/token.rb +0 -87
  2659. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/spec.rb +0 -81
  2660. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/spec/deprecation_helpers.rb +0 -64
  2661. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/spec/formatting_support.rb +0 -9
  2662. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/spec/in_sub_process.rb +0 -69
  2663. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/spec/library_wide_checks.rb +0 -150
  2664. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/spec/shell_out.rb +0 -84
  2665. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/spec/stderr_splitter.rb +0 -63
  2666. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/spec/string_matcher.rb +0 -46
  2667. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/spec/with_isolated_directory.rb +0 -13
  2668. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/spec/with_isolated_stderr.rb +0 -13
  2669. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/version.rb +0 -7
  2670. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/warnings.rb +0 -39
  2671. data/vendor/bundle/gems/rubyzip-1.2.2/README.md +0 -313
  2672. data/vendor/bundle/gems/rubyzip-1.2.2/Rakefile +0 -18
  2673. data/vendor/bundle/gems/rubyzip-1.2.2/TODO +0 -15
  2674. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip.rb +0 -69
  2675. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/central_directory.rb +0 -208
  2676. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/compressor.rb +0 -9
  2677. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/constants.rb +0 -63
  2678. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/crypto/encryption.rb +0 -11
  2679. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/crypto/null_encryption.rb +0 -43
  2680. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/crypto/traditional_encryption.rb +0 -99
  2681. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/decompressor.rb +0 -13
  2682. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/deflater.rb +0 -34
  2683. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/dos_time.rb +0 -48
  2684. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/entry.rb +0 -687
  2685. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/entry_set.rb +0 -86
  2686. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/errors.rb +0 -17
  2687. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/extra_field.rb +0 -101
  2688. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/extra_field/generic.rb +0 -43
  2689. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/extra_field/ntfs.rb +0 -90
  2690. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/extra_field/old_unix.rb +0 -44
  2691. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/extra_field/universal_time.rb +0 -47
  2692. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/extra_field/unix.rb +0 -37
  2693. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/extra_field/zip64.rb +0 -68
  2694. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/extra_field/zip64_placeholder.rb +0 -15
  2695. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/file.rb +0 -423
  2696. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/filesystem.rb +0 -627
  2697. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/inflater.rb +0 -66
  2698. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/input_stream.rb +0 -173
  2699. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/ioextras.rb +0 -36
  2700. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/ioextras/abstract_input_stream.rb +0 -111
  2701. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/ioextras/abstract_output_stream.rb +0 -43
  2702. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/null_compressor.rb +0 -15
  2703. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/null_decompressor.rb +0 -27
  2704. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/null_input_stream.rb +0 -10
  2705. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/output_stream.rb +0 -189
  2706. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/pass_thru_compressor.rb +0 -23
  2707. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/pass_thru_decompressor.rb +0 -40
  2708. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/streamable_directory.rb +0 -15
  2709. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/streamable_stream.rb +0 -56
  2710. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/version.rb +0 -3
  2711. data/vendor/bundle/gems/rubyzip-1.2.2/samples/example.rb +0 -81
  2712. data/vendor/bundle/gems/rubyzip-1.2.2/samples/example_filesystem.rb +0 -31
  2713. data/vendor/bundle/gems/rubyzip-1.2.2/samples/example_recursive.rb +0 -54
  2714. data/vendor/bundle/gems/rubyzip-1.2.2/samples/gtk_ruby_zip.rb +0 -84
  2715. data/vendor/bundle/gems/rubyzip-1.2.2/samples/qtzip.rb +0 -92
  2716. data/vendor/bundle/gems/rubyzip-1.2.2/samples/write_simple.rb +0 -12
  2717. data/vendor/bundle/gems/rubyzip-1.2.2/samples/zipfind.rb +0 -66
  2718. data/vendor/bundle/gems/rubyzip-1.2.2/test/basic_zip_file_test.rb +0 -60
  2719. data/vendor/bundle/gems/rubyzip-1.2.2/test/case_sensitivity_test.rb +0 -69
  2720. data/vendor/bundle/gems/rubyzip-1.2.2/test/central_directory_entry_test.rb +0 -69
  2721. data/vendor/bundle/gems/rubyzip-1.2.2/test/central_directory_test.rb +0 -100
  2722. data/vendor/bundle/gems/rubyzip-1.2.2/test/crypto/null_encryption_test.rb +0 -57
  2723. data/vendor/bundle/gems/rubyzip-1.2.2/test/crypto/traditional_encryption_test.rb +0 -80
  2724. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/WarnInvalidDate.zip +0 -0
  2725. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/file1.txt +0 -46
  2726. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/file1.txt.deflatedData +0 -0
  2727. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/file2.txt +0 -1504
  2728. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/globTest.zip +0 -0
  2729. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/globTest/foo.txt +0 -0
  2730. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/globTest/foo/bar/baz/foo.txt +0 -0
  2731. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/globTest/food.txt +0 -0
  2732. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/gpbit3stored.zip +0 -0
  2733. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/mimetype +0 -1
  2734. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/notzippedruby.rb +0 -7
  2735. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/ntfs.zip +0 -0
  2736. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/oddExtraField.zip +0 -0
  2737. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/path_traversal/Makefile +0 -10
  2738. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/path_traversal/jwilk/README.md +0 -5
  2739. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/path_traversal/jwilk/absolute1.zip +0 -0
  2740. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/path_traversal/jwilk/absolute2.zip +0 -0
  2741. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/path_traversal/jwilk/dirsymlink.zip +0 -0
  2742. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/path_traversal/jwilk/dirsymlink2a.zip +0 -0
  2743. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/path_traversal/jwilk/dirsymlink2b.zip +0 -0
  2744. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/path_traversal/jwilk/relative0.zip +0 -0
  2745. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/path_traversal/jwilk/relative2.zip +0 -0
  2746. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/path_traversal/jwilk/symlink.zip +0 -0
  2747. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/path_traversal/relative1.zip +0 -0
  2748. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/path_traversal/tuzovakaoff/README.md +0 -3
  2749. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/path_traversal/tuzovakaoff/absolutepath.zip +0 -0
  2750. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/path_traversal/tuzovakaoff/symlink.zip +0 -0
  2751. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/rubycode.zip +0 -0
  2752. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/rubycode2.zip +0 -0
  2753. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/test.xls +0 -0
  2754. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/testDirectory.bin +0 -0
  2755. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/zip64-sample.zip +0 -0
  2756. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/zipWithDirs.zip +0 -0
  2757. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/zipWithEncryption.zip +0 -0
  2758. data/vendor/bundle/gems/rubyzip-1.2.2/test/deflater_test.rb +0 -65
  2759. data/vendor/bundle/gems/rubyzip-1.2.2/test/encryption_test.rb +0 -42
  2760. data/vendor/bundle/gems/rubyzip-1.2.2/test/entry_set_test.rb +0 -163
  2761. data/vendor/bundle/gems/rubyzip-1.2.2/test/entry_test.rb +0 -154
  2762. data/vendor/bundle/gems/rubyzip-1.2.2/test/errors_test.rb +0 -35
  2763. data/vendor/bundle/gems/rubyzip-1.2.2/test/extra_field_test.rb +0 -76
  2764. data/vendor/bundle/gems/rubyzip-1.2.2/test/file_extract_directory_test.rb +0 -54
  2765. data/vendor/bundle/gems/rubyzip-1.2.2/test/file_extract_test.rb +0 -83
  2766. data/vendor/bundle/gems/rubyzip-1.2.2/test/file_permissions_test.rb +0 -65
  2767. data/vendor/bundle/gems/rubyzip-1.2.2/test/file_split_test.rb +0 -57
  2768. data/vendor/bundle/gems/rubyzip-1.2.2/test/file_test.rb +0 -601
  2769. data/vendor/bundle/gems/rubyzip-1.2.2/test/filesystem/dir_iterator_test.rb +0 -58
  2770. data/vendor/bundle/gems/rubyzip-1.2.2/test/filesystem/directory_test.rb +0 -139
  2771. data/vendor/bundle/gems/rubyzip-1.2.2/test/filesystem/file_mutating_test.rb +0 -87
  2772. data/vendor/bundle/gems/rubyzip-1.2.2/test/filesystem/file_nonmutating_test.rb +0 -508
  2773. data/vendor/bundle/gems/rubyzip-1.2.2/test/filesystem/file_stat_test.rb +0 -64
  2774. data/vendor/bundle/gems/rubyzip-1.2.2/test/gentestfiles.rb +0 -126
  2775. data/vendor/bundle/gems/rubyzip-1.2.2/test/inflater_test.rb +0 -14
  2776. data/vendor/bundle/gems/rubyzip-1.2.2/test/input_stream_test.rb +0 -182
  2777. data/vendor/bundle/gems/rubyzip-1.2.2/test/ioextras/abstract_input_stream_test.rb +0 -102
  2778. data/vendor/bundle/gems/rubyzip-1.2.2/test/ioextras/abstract_output_stream_test.rb +0 -106
  2779. data/vendor/bundle/gems/rubyzip-1.2.2/test/ioextras/fake_io_test.rb +0 -18
  2780. data/vendor/bundle/gems/rubyzip-1.2.2/test/local_entry_test.rb +0 -154
  2781. data/vendor/bundle/gems/rubyzip-1.2.2/test/output_stream_test.rb +0 -128
  2782. data/vendor/bundle/gems/rubyzip-1.2.2/test/pass_thru_compressor_test.rb +0 -30
  2783. data/vendor/bundle/gems/rubyzip-1.2.2/test/pass_thru_decompressor_test.rb +0 -14
  2784. data/vendor/bundle/gems/rubyzip-1.2.2/test/path_traversal_test.rb +0 -134
  2785. data/vendor/bundle/gems/rubyzip-1.2.2/test/samples/example_recursive_test.rb +0 -37
  2786. data/vendor/bundle/gems/rubyzip-1.2.2/test/settings_test.rb +0 -95
  2787. data/vendor/bundle/gems/rubyzip-1.2.2/test/test_helper.rb +0 -234
  2788. data/vendor/bundle/gems/rubyzip-1.2.2/test/unicode_file_names_and_comments_test.rb +0 -62
  2789. data/vendor/bundle/gems/rubyzip-1.2.2/test/zip64_full_test.rb +0 -51
  2790. data/vendor/bundle/gems/rubyzip-1.2.2/test/zip64_support_test.rb +0 -14
  2791. data/vendor/bundle/gems/sawyer-0.8.1/Gemfile +0 -8
  2792. data/vendor/bundle/gems/sawyer-0.8.1/LICENSE.md +0 -20
  2793. data/vendor/bundle/gems/sawyer-0.8.1/README.md +0 -19
  2794. data/vendor/bundle/gems/sawyer-0.8.1/Rakefile +0 -12
  2795. data/vendor/bundle/gems/sawyer-0.8.1/lib/sawyer.rb +0 -17
  2796. data/vendor/bundle/gems/sawyer-0.8.1/lib/sawyer/agent.rb +0 -158
  2797. data/vendor/bundle/gems/sawyer-0.8.1/lib/sawyer/link_parsers/hal.rb +0 -15
  2798. data/vendor/bundle/gems/sawyer-0.8.1/lib/sawyer/link_parsers/simple.rb +0 -29
  2799. data/vendor/bundle/gems/sawyer-0.8.1/lib/sawyer/relation.rb +0 -271
  2800. data/vendor/bundle/gems/sawyer-0.8.1/lib/sawyer/resource.rb +0 -155
  2801. data/vendor/bundle/gems/sawyer-0.8.1/lib/sawyer/response.rb +0 -64
  2802. data/vendor/bundle/gems/sawyer-0.8.1/lib/sawyer/serializer.rb +0 -127
  2803. data/vendor/bundle/gems/sawyer-0.8.1/sawyer.gemspec +0 -32
  2804. data/vendor/bundle/gems/sawyer-0.8.1/script/bootstrap +0 -5
  2805. data/vendor/bundle/gems/sawyer-0.8.1/script/console +0 -8
  2806. data/vendor/bundle/gems/sawyer-0.8.1/script/package +0 -8
  2807. data/vendor/bundle/gems/sawyer-0.8.1/script/release +0 -16
  2808. data/vendor/bundle/gems/sawyer-0.8.1/script/test +0 -6
  2809. data/vendor/bundle/gems/sawyer-0.8.1/test/agent_test.rb +0 -195
  2810. data/vendor/bundle/gems/sawyer-0.8.1/test/helper.rb +0 -7
  2811. data/vendor/bundle/gems/sawyer-0.8.1/test/relation_test.rb +0 -174
  2812. data/vendor/bundle/gems/sawyer-0.8.1/test/resource_test.rb +0 -199
  2813. data/vendor/bundle/gems/sawyer-0.8.1/test/response_test.rb +0 -77
  2814. data/vendor/bundle/gems/selenium-webdriver-3.141.0/CHANGES +0 -1497
  2815. data/vendor/bundle/gems/selenium-webdriver-3.141.0/Gemfile +0 -2
  2816. data/vendor/bundle/gems/selenium-webdriver-3.141.0/LICENSE +0 -202
  2817. data/vendor/bundle/gems/selenium-webdriver-3.141.0/README.md +0 -35
  2818. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium-webdriver.rb +0 -18
  2819. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/server.rb +0 -270
  2820. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver.rb +0 -99
  2821. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/atoms.rb +0 -18
  2822. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/atoms/getAttribute.js +0 -8
  2823. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/atoms/isDisplayed.js +0 -101
  2824. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/chrome.rb +0 -48
  2825. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/chrome/bridge.rb +0 -48
  2826. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/chrome/driver.rb +0 -117
  2827. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/chrome/options.rb +0 -186
  2828. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/chrome/profile.rb +0 -109
  2829. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/chrome/service.rb +0 -59
  2830. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common.rb +0 -74
  2831. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/action_builder.rb +0 -363
  2832. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/alert.rb +0 -45
  2833. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/bridge_helper.rb +0 -79
  2834. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/driver.rb +0 -293
  2835. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/driver_extensions/downloads_files.rb +0 -43
  2836. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/driver_extensions/has_addons.rb +0 -48
  2837. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/driver_extensions/has_debugger.rb +0 -40
  2838. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/driver_extensions/has_location.rb +0 -40
  2839. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/driver_extensions/has_network_conditions.rb +0 -49
  2840. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/driver_extensions/has_network_connection.rb +0 -56
  2841. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/driver_extensions/has_permissions.rb +0 -49
  2842. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/driver_extensions/has_remote_status.rb +0 -28
  2843. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/driver_extensions/has_session_id.rb +0 -37
  2844. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/driver_extensions/has_touch_screen.rb +0 -34
  2845. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/driver_extensions/has_web_storage.rb +0 -36
  2846. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/driver_extensions/rotatable.rb +0 -59
  2847. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/driver_extensions/takes_screenshot.rb +0 -62
  2848. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/driver_extensions/uploads_files.rb +0 -60
  2849. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/element.rb +0 -333
  2850. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/error.rb +0 -327
  2851. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/file_reaper.rb +0 -65
  2852. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/html5/local_storage.rb +0 -57
  2853. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/html5/session_storage.rb +0 -59
  2854. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/html5/shared_web_storage.rb +0 -50
  2855. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/interactions/input_device.rb +0 -51
  2856. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/interactions/interaction.rb +0 -50
  2857. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/interactions/interactions.rb +0 -41
  2858. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/interactions/key_actions.rb +0 -143
  2859. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/interactions/key_input.rb +0 -62
  2860. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/interactions/none_input.rb +0 -33
  2861. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/interactions/pointer_actions.rb +0 -361
  2862. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/interactions/pointer_input.rb +0 -132
  2863. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/keyboard.rb +0 -67
  2864. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/keys.rb +0 -143
  2865. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/log_entry.rb +0 -46
  2866. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/logger.rb +0 -140
  2867. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/logs.rb +0 -38
  2868. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/mouse.rb +0 -86
  2869. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/navigation.rb +0 -58
  2870. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/options.rb +0 -151
  2871. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/platform.rb +0 -226
  2872. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/port_prober.rb +0 -62
  2873. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/profile_helper.rb +0 -81
  2874. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/proxy.rb +0 -154
  2875. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/search_context.rb +0 -110
  2876. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/service.rb +0 -161
  2877. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/socket_lock.rb +0 -75
  2878. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/socket_poller.rb +0 -118
  2879. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/target_locator.rb +0 -109
  2880. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/timeouts.rb +0 -53
  2881. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/touch_action_builder.rb +0 -79
  2882. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/touch_screen.rb +0 -120
  2883. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/w3c_action_builder.rb +0 -209
  2884. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/w3c_options.rb +0 -43
  2885. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/wait.rb +0 -75
  2886. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/window.rb +0 -161
  2887. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/zipper.rb +0 -97
  2888. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/edge.rb +0 -38
  2889. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/edge/bridge.rb +0 -74
  2890. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/edge/driver.rb +0 -73
  2891. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/edge/options.rb +0 -77
  2892. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/edge/service.rb +0 -56
  2893. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/firefox.rb +0 -60
  2894. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/firefox/binary.rb +0 -186
  2895. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/firefox/driver.rb +0 -48
  2896. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/firefox/extension.rb +0 -95
  2897. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/firefox/extension/prefs.json +0 -69
  2898. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/firefox/extension/webdriver.xpi +0 -0
  2899. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/firefox/launcher.rb +0 -108
  2900. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/firefox/legacy/driver.rb +0 -79
  2901. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/firefox/marionette/bridge.rb +0 -47
  2902. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/firefox/marionette/driver.rb +0 -96
  2903. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/firefox/native/linux/amd64/x_ignore_nofocus.so +0 -0
  2904. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/firefox/native/linux/x86/x_ignore_nofocus.so +0 -0
  2905. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/firefox/options.rb +0 -149
  2906. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/firefox/profile.rb +0 -282
  2907. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/firefox/profiles_ini.rb +0 -71
  2908. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/firefox/service.rb +0 -63
  2909. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/firefox/util.rb +0 -44
  2910. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/ie.rb +0 -35
  2911. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/ie/driver.rb +0 -91
  2912. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/ie/options.rb +0 -136
  2913. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/ie/service.rb +0 -58
  2914. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/remote.rb +0 -33
  2915. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/remote/bridge.rb +0 -193
  2916. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/remote/capabilities.rb +0 -272
  2917. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/remote/driver.rb +0 -49
  2918. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/remote/http/common.rb +0 -98
  2919. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/remote/http/curb.rb +0 -95
  2920. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/remote/http/default.rb +0 -176
  2921. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/remote/http/persistent.rb +0 -58
  2922. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/remote/oss/bridge.rb +0 -591
  2923. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/remote/oss/commands.rb +0 -221
  2924. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/remote/response.rb +0 -128
  2925. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/remote/server_error.rb +0 -32
  2926. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/remote/w3c/bridge.rb +0 -590
  2927. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/remote/w3c/capabilities.rb +0 -294
  2928. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/remote/w3c/commands.rb +0 -154
  2929. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/safari.rb +0 -58
  2930. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/safari/bridge.rb +0 -49
  2931. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/safari/driver.rb +0 -70
  2932. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/safari/options.rb +0 -58
  2933. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/safari/service.rb +0 -57
  2934. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/support.rb +0 -23
  2935. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/support/abstract_event_listener.rb +0 -85
  2936. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/support/block_event_listener.rb +0 -32
  2937. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/support/color.rb +0 -144
  2938. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/support/escaper.rb +0 -41
  2939. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/support/event_firing_bridge.rb +0 -127
  2940. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/support/select.rb +0 -269
  2941. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/version.rb +0 -22
  2942. data/vendor/bundle/gems/selenium-webdriver-3.141.0/selenium-webdriver.gemspec +0 -40
  2943. data/vendor/bundle/gems/sequel-5.18.0/CHANGELOG +0 -2427
  2944. data/vendor/bundle/gems/sequel-5.18.0/MIT-LICENSE +0 -19
  2945. data/vendor/bundle/gems/sequel-5.18.0/README.rdoc +0 -902
  2946. data/vendor/bundle/gems/sequel-5.18.0/Rakefile +0 -151
  2947. data/vendor/bundle/gems/sequel-5.18.0/bin/sequel +0 -267
  2948. data/vendor/bundle/gems/sequel-5.18.0/doc/advanced_associations.rdoc +0 -882
  2949. data/vendor/bundle/gems/sequel-5.18.0/doc/association_basics.rdoc +0 -1759
  2950. data/vendor/bundle/gems/sequel-5.18.0/doc/bin_sequel.rdoc +0 -146
  2951. data/vendor/bundle/gems/sequel-5.18.0/doc/cheat_sheet.rdoc +0 -246
  2952. data/vendor/bundle/gems/sequel-5.18.0/doc/code_order.rdoc +0 -104
  2953. data/vendor/bundle/gems/sequel-5.18.0/doc/core_extensions.rdoc +0 -405
  2954. data/vendor/bundle/gems/sequel-5.18.0/doc/dataset_basics.rdoc +0 -96
  2955. data/vendor/bundle/gems/sequel-5.18.0/doc/dataset_filtering.rdoc +0 -207
  2956. data/vendor/bundle/gems/sequel-5.18.0/doc/extensions.rdoc +0 -77
  2957. data/vendor/bundle/gems/sequel-5.18.0/doc/mass_assignment.rdoc +0 -98
  2958. data/vendor/bundle/gems/sequel-5.18.0/doc/migration.rdoc +0 -639
  2959. data/vendor/bundle/gems/sequel-5.18.0/doc/model_dataset_method_design.rdoc +0 -129
  2960. data/vendor/bundle/gems/sequel-5.18.0/doc/model_hooks.rdoc +0 -254
  2961. data/vendor/bundle/gems/sequel-5.18.0/doc/model_plugins.rdoc +0 -270
  2962. data/vendor/bundle/gems/sequel-5.18.0/doc/mssql_stored_procedures.rdoc +0 -43
  2963. data/vendor/bundle/gems/sequel-5.18.0/doc/object_model.rdoc +0 -563
  2964. data/vendor/bundle/gems/sequel-5.18.0/doc/opening_databases.rdoc +0 -407
  2965. data/vendor/bundle/gems/sequel-5.18.0/doc/postgresql.rdoc +0 -532
  2966. data/vendor/bundle/gems/sequel-5.18.0/doc/prepared_statements.rdoc +0 -144
  2967. data/vendor/bundle/gems/sequel-5.18.0/doc/querying.rdoc +0 -1063
  2968. data/vendor/bundle/gems/sequel-5.18.0/doc/reflection.rdoc +0 -120
  2969. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.0.0.txt +0 -262
  2970. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.1.0.txt +0 -85
  2971. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.10.0.txt +0 -226
  2972. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.11.0.txt +0 -147
  2973. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.12.0.txt +0 -105
  2974. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.13.0.txt +0 -169
  2975. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.14.0.txt +0 -68
  2976. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.15.0.txt +0 -56
  2977. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.16.0.txt +0 -36
  2978. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.17.0.txt +0 -38
  2979. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.18.0.txt +0 -36
  2980. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.19.0.txt +0 -45
  2981. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.2.0.txt +0 -129
  2982. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.20.0.txt +0 -79
  2983. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.21.0.txt +0 -94
  2984. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.22.0.txt +0 -72
  2985. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.23.0.txt +0 -65
  2986. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.24.0.txt +0 -99
  2987. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.25.0.txt +0 -181
  2988. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.26.0.txt +0 -44
  2989. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.27.0.txt +0 -78
  2990. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.28.0.txt +0 -57
  2991. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.29.0.txt +0 -41
  2992. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.3.0.txt +0 -40
  2993. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.30.0.txt +0 -37
  2994. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.31.0.txt +0 -57
  2995. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.32.0.txt +0 -132
  2996. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.33.0.txt +0 -88
  2997. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.34.0.txt +0 -86
  2998. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.35.0.txt +0 -130
  2999. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.36.0.txt +0 -116
  3000. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.37.0.txt +0 -50
  3001. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.38.0.txt +0 -67
  3002. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.39.0.txt +0 -127
  3003. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.4.0.txt +0 -92
  3004. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.40.0.txt +0 -179
  3005. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.41.0.txt +0 -77
  3006. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.42.0.txt +0 -221
  3007. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.43.0.txt +0 -87
  3008. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.44.0.txt +0 -125
  3009. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.45.0.txt +0 -370
  3010. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.46.0.txt +0 -404
  3011. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.47.0.txt +0 -56
  3012. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.48.0.txt +0 -293
  3013. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.49.0.txt +0 -222
  3014. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.5.0.txt +0 -34
  3015. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.6.0.txt +0 -30
  3016. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.7.0.txt +0 -103
  3017. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.8.0.txt +0 -175
  3018. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.9.0.txt +0 -190
  3019. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.0.0.txt +0 -159
  3020. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.1.0.txt +0 -31
  3021. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.10.0.txt +0 -84
  3022. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.11.0.txt +0 -83
  3023. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.12.0.txt +0 -141
  3024. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.13.0.txt +0 -27
  3025. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.14.0.txt +0 -63
  3026. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.15.0.txt +0 -39
  3027. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.16.0.txt +0 -110
  3028. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.17.0.txt +0 -31
  3029. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.18.0.txt +0 -69
  3030. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.2.0.txt +0 -33
  3031. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.3.0.txt +0 -121
  3032. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.4.0.txt +0 -80
  3033. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.5.0.txt +0 -61
  3034. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.6.0.txt +0 -31
  3035. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.7.0.txt +0 -108
  3036. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.8.0.txt +0 -170
  3037. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.9.0.txt +0 -99
  3038. data/vendor/bundle/gems/sequel-5.18.0/doc/schema_modification.rdoc +0 -679
  3039. data/vendor/bundle/gems/sequel-5.18.0/doc/security.rdoc +0 -443
  3040. data/vendor/bundle/gems/sequel-5.18.0/doc/sharding.rdoc +0 -270
  3041. data/vendor/bundle/gems/sequel-5.18.0/doc/sql.rdoc +0 -636
  3042. data/vendor/bundle/gems/sequel-5.18.0/doc/testing.rdoc +0 -171
  3043. data/vendor/bundle/gems/sequel-5.18.0/doc/thread_safety.rdoc +0 -15
  3044. data/vendor/bundle/gems/sequel-5.18.0/doc/transactions.rdoc +0 -220
  3045. data/vendor/bundle/gems/sequel-5.18.0/doc/validations.rdoc +0 -558
  3046. data/vendor/bundle/gems/sequel-5.18.0/doc/virtual_rows.rdoc +0 -265
  3047. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel.rb +0 -3
  3048. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/ado.rb +0 -275
  3049. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/ado/access.rb +0 -335
  3050. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/ado/mssql.rb +0 -62
  3051. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/amalgalite.rb +0 -171
  3052. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/ibmdb.rb +0 -422
  3053. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/jdbc.rb +0 -811
  3054. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/jdbc/db2.rb +0 -83
  3055. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/jdbc/derby.rb +0 -310
  3056. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/jdbc/h2.rb +0 -237
  3057. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/jdbc/hsqldb.rb +0 -220
  3058. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/jdbc/jtds.rb +0 -39
  3059. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/jdbc/mssql.rb +0 -30
  3060. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/jdbc/mysql.rb +0 -89
  3061. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/jdbc/oracle.rb +0 -146
  3062. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/jdbc/postgresql.rb +0 -242
  3063. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/jdbc/sqlanywhere.rb +0 -72
  3064. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/jdbc/sqlite.rb +0 -104
  3065. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/jdbc/sqlserver.rb +0 -88
  3066. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/jdbc/transactions.rb +0 -95
  3067. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/mock.rb +0 -381
  3068. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/mysql.rb +0 -355
  3069. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/mysql2.rb +0 -296
  3070. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/odbc.rb +0 -148
  3071. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/odbc/db2.rb +0 -11
  3072. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/odbc/mssql.rb +0 -57
  3073. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/odbc/oracle.rb +0 -11
  3074. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/oracle.rb +0 -409
  3075. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/postgres.rb +0 -814
  3076. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/postgresql.rb +0 -3
  3077. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/shared/access.rb +0 -290
  3078. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/shared/db2.rb +0 -462
  3079. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/shared/mssql.rb +0 -1084
  3080. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/shared/mysql.rb +0 -1061
  3081. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/shared/oracle.rb +0 -646
  3082. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/shared/postgres.rb +0 -1961
  3083. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/shared/sqlanywhere.rb +0 -454
  3084. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/shared/sqlite.rb +0 -885
  3085. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/sqlanywhere.rb +0 -176
  3086. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/sqlite.rb +0 -369
  3087. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/tinytds.rb +0 -246
  3088. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/utils/emulate_offset_with_reverse_and_count.rb +0 -74
  3089. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/utils/emulate_offset_with_row_number.rb +0 -93
  3090. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/utils/mysql_mysql2.rb +0 -84
  3091. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/utils/mysql_prepared_statements.rb +0 -56
  3092. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/utils/replace.rb +0 -35
  3093. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/utils/split_alter_table.rb +0 -46
  3094. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/utils/stored_procedures.rb +0 -61
  3095. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/utils/unmodified_identifiers.rb +0 -28
  3096. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/ast_transformer.rb +0 -124
  3097. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/connection_pool.rb +0 -148
  3098. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/connection_pool/sharded_single.rb +0 -112
  3099. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/connection_pool/sharded_threaded.rb +0 -371
  3100. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/connection_pool/single.rb +0 -59
  3101. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/connection_pool/threaded.rb +0 -285
  3102. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/core.rb +0 -434
  3103. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/database.rb +0 -37
  3104. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/database/connecting.rb +0 -332
  3105. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/database/dataset.rb +0 -79
  3106. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/database/dataset_defaults.rb +0 -93
  3107. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/database/features.rb +0 -150
  3108. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/database/logging.rb +0 -85
  3109. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/database/misc.rb +0 -550
  3110. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/database/query.rb +0 -363
  3111. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/database/schema_generator.rb +0 -643
  3112. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/database/schema_methods.rb +0 -1054
  3113. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/database/transactions.rb +0 -495
  3114. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/dataset.rb +0 -54
  3115. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/dataset/actions.rb +0 -1238
  3116. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/dataset/dataset_module.rb +0 -46
  3117. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/dataset/features.rb +0 -249
  3118. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/dataset/graph.rb +0 -296
  3119. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/dataset/misc.rb +0 -371
  3120. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/dataset/placeholder_literalizer.rb +0 -220
  3121. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/dataset/prepared_statements.rb +0 -427
  3122. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/dataset/query.rb +0 -1365
  3123. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/dataset/sql.rb +0 -1668
  3124. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/deprecated.rb +0 -68
  3125. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/exceptions.rb +0 -123
  3126. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/_model_constraint_validations.rb +0 -16
  3127. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/_model_pg_row.rb +0 -43
  3128. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/_pretty_table.rb +0 -86
  3129. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/arbitrary_servers.rb +0 -114
  3130. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/auto_literal_strings.rb +0 -74
  3131. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/blank.rb +0 -49
  3132. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/caller_logging.rb +0 -79
  3133. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/columns_introspection.rb +0 -89
  3134. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/connection_expiration.rb +0 -99
  3135. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/connection_validator.rb +0 -123
  3136. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/constant_sql_override.rb +0 -65
  3137. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/constraint_validations.rb +0 -496
  3138. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/core_extensions.rb +0 -222
  3139. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/core_refinements.rb +0 -217
  3140. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/current_datetime_timestamp.rb +0 -59
  3141. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/dataset_source_alias.rb +0 -95
  3142. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/date_arithmetic.rb +0 -214
  3143. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/datetime_parse_to_time.rb +0 -37
  3144. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/duplicate_columns_handler.rb +0 -92
  3145. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/empty_array_consider_nulls.rb +0 -39
  3146. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/error_sql.rb +0 -76
  3147. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/escaped_like.rb +0 -100
  3148. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/eval_inspect.rb +0 -181
  3149. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/freeze_datasets.rb +0 -3
  3150. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/from_block.rb +0 -3
  3151. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/graph_each.rb +0 -88
  3152. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/identifier_mangling.rb +0 -180
  3153. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/implicit_subquery.rb +0 -48
  3154. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/index_caching.rb +0 -107
  3155. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/inflector.rb +0 -250
  3156. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/integer64.rb +0 -30
  3157. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/looser_typecasting.rb +0 -54
  3158. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/migration.rb +0 -786
  3159. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/mssql_emulate_lateral_with_apply.rb +0 -84
  3160. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/named_timezones.rb +0 -120
  3161. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/no_auto_literal_strings.rb +0 -4
  3162. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/null_dataset.rb +0 -109
  3163. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pagination.rb +0 -140
  3164. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_array.rb +0 -522
  3165. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_array_ops.rb +0 -328
  3166. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_enum.rb +0 -184
  3167. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_extended_date_support.rb +0 -250
  3168. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_hstore.rb +0 -342
  3169. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_hstore_ops.rb +0 -361
  3170. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_inet.rb +0 -127
  3171. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_inet_ops.rb +0 -204
  3172. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_interval.rb +0 -196
  3173. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_json.rb +0 -382
  3174. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_json_ops.rb +0 -513
  3175. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_loose_count.rb +0 -37
  3176. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_range.rb +0 -565
  3177. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_range_ops.rb +0 -165
  3178. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_row.rb +0 -580
  3179. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_row_ops.rb +0 -193
  3180. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_static_cache_updater.rb +0 -144
  3181. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_timestamptz.rb +0 -26
  3182. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pretty_table.rb +0 -40
  3183. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/query.rb +0 -82
  3184. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/round_timestamps.rb +0 -49
  3185. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/s.rb +0 -57
  3186. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/schema_caching.rb +0 -88
  3187. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/schema_dumper.rb +0 -498
  3188. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/select_remove.rb +0 -52
  3189. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/sequel_4_dataset_methods.rb +0 -85
  3190. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/server_block.rb +0 -171
  3191. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/server_logging.rb +0 -61
  3192. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/split_array_nil.rb +0 -70
  3193. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/sql_comments.rb +0 -96
  3194. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/sql_expr.rb +0 -23
  3195. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/string_agg.rb +0 -181
  3196. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/string_date_time.rb +0 -52
  3197. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/symbol_aref.rb +0 -53
  3198. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/symbol_aref_refinement.rb +0 -41
  3199. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/symbol_as.rb +0 -23
  3200. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/symbol_as_refinement.rb +0 -35
  3201. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/synchronize_sql.rb +0 -45
  3202. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/thread_local_timezones.rb +0 -59
  3203. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/to_dot.rb +0 -158
  3204. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/virtual_row_method_block.rb +0 -44
  3205. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/model.rb +0 -83
  3206. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/model/associations.rb +0 -3735
  3207. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/model/base.rb +0 -2225
  3208. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/model/dataset_module.rb +0 -33
  3209. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/model/default_inflections.rb +0 -47
  3210. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/model/errors.rb +0 -58
  3211. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/model/exceptions.rb +0 -55
  3212. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/model/inflections.rb +0 -151
  3213. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/model/plugins.rb +0 -55
  3214. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/accessed_columns.rb +0 -63
  3215. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/active_model.rb +0 -124
  3216. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/after_initialize.rb +0 -39
  3217. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/association_dependencies.rb +0 -106
  3218. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/association_pks.rb +0 -264
  3219. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/association_proxies.rb +0 -125
  3220. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/auto_validations.rb +0 -230
  3221. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/before_after_save.rb +0 -8
  3222. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/blacklist_security.rb +0 -105
  3223. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/boolean_readers.rb +0 -59
  3224. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/boolean_subsets.rb +0 -61
  3225. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/caching.rb +0 -161
  3226. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/class_table_inheritance.rb +0 -433
  3227. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/column_conflicts.rb +0 -108
  3228. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/column_select.rb +0 -61
  3229. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/columns_updated.rb +0 -42
  3230. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/composition.rb +0 -195
  3231. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/constraint_validations.rb +0 -250
  3232. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/csv_serializer.rb +0 -177
  3233. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/dataset_associations.rb +0 -149
  3234. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/def_dataset_method.rb +0 -90
  3235. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/defaults_setter.rb +0 -130
  3236. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/delay_add_association.rb +0 -53
  3237. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/dirty.rb +0 -238
  3238. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/eager_each.rb +0 -88
  3239. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/eager_graph_eager.rb +0 -139
  3240. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/error_splitter.rb +0 -61
  3241. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/finder.rb +0 -246
  3242. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/force_encoding.rb +0 -78
  3243. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/hook_class_methods.rb +0 -98
  3244. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/input_transformer.rb +0 -89
  3245. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/insert_returning_select.rb +0 -72
  3246. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/instance_filters.rb +0 -135
  3247. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/instance_hooks.rb +0 -115
  3248. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/inverted_subsets.rb +0 -59
  3249. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/json_serializer.rb +0 -429
  3250. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/lazy_attributes.rb +0 -123
  3251. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/list.rb +0 -203
  3252. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/many_through_many.rb +0 -338
  3253. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/modification_detection.rb +0 -102
  3254. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/mssql_optimistic_locking.rb +0 -95
  3255. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/nested_attributes.rb +0 -323
  3256. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/optimistic_locking.rb +0 -85
  3257. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/pg_array_associations.rb +0 -559
  3258. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/pg_auto_constraint_validations.rb +0 -260
  3259. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/pg_row.rb +0 -79
  3260. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/prepared_statements.rb +0 -192
  3261. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/prepared_statements_safe.rb +0 -83
  3262. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/rcte_tree.rb +0 -332
  3263. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/serialization.rb +0 -230
  3264. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/serialization_modification_detection.rb +0 -86
  3265. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/sharding.rb +0 -120
  3266. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/single_table_inheritance.rb +0 -256
  3267. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/singular_table_names.rb +0 -33
  3268. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/skip_create_refresh.rb +0 -37
  3269. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/split_values.rb +0 -71
  3270. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/static_cache.rb +0 -259
  3271. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/string_stripper.rb +0 -59
  3272. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/subclasses.rb +0 -77
  3273. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/subset_conditions.rb +0 -48
  3274. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/table_select.rb +0 -43
  3275. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/tactical_eager_loading.rb +0 -199
  3276. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/throw_failures.rb +0 -110
  3277. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/timestamps.rb +0 -109
  3278. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/touch.rb +0 -153
  3279. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/tree.rb +0 -183
  3280. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/typecast_on_load.rb +0 -89
  3281. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/unlimited_update.rb +0 -27
  3282. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/update_or_create.rb +0 -64
  3283. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/update_primary_key.rb +0 -72
  3284. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/update_refresh.rb +0 -88
  3285. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/uuid.rb +0 -70
  3286. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/validate_associated.rb +0 -75
  3287. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/validation_class_methods.rb +0 -454
  3288. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/validation_contexts.rb +0 -49
  3289. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/validation_helpers.rb +0 -317
  3290. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/whitelist_security.rb +0 -122
  3291. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/xml_serializer.rb +0 -411
  3292. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/sql.rb +0 -2034
  3293. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/timezones.rb +0 -210
  3294. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/version.rb +0 -25
  3295. data/vendor/bundle/gems/sequel-5.18.0/spec/adapter_spec.rb +0 -4
  3296. data/vendor/bundle/gems/sequel-5.18.0/spec/adapters/db2_spec.rb +0 -170
  3297. data/vendor/bundle/gems/sequel-5.18.0/spec/adapters/mssql_spec.rb +0 -804
  3298. data/vendor/bundle/gems/sequel-5.18.0/spec/adapters/mysql_spec.rb +0 -1065
  3299. data/vendor/bundle/gems/sequel-5.18.0/spec/adapters/oracle_spec.rb +0 -371
  3300. data/vendor/bundle/gems/sequel-5.18.0/spec/adapters/postgres_spec.rb +0 -4085
  3301. data/vendor/bundle/gems/sequel-5.18.0/spec/adapters/spec_helper.rb +0 -44
  3302. data/vendor/bundle/gems/sequel-5.18.0/spec/adapters/sqlanywhere_spec.rb +0 -97
  3303. data/vendor/bundle/gems/sequel-5.18.0/spec/adapters/sqlite_spec.rb +0 -652
  3304. data/vendor/bundle/gems/sequel-5.18.0/spec/bin_spec.rb +0 -278
  3305. data/vendor/bundle/gems/sequel-5.18.0/spec/core/connection_pool_spec.rb +0 -1250
  3306. data/vendor/bundle/gems/sequel-5.18.0/spec/core/database_spec.rb +0 -2794
  3307. data/vendor/bundle/gems/sequel-5.18.0/spec/core/dataset_spec.rb +0 -5515
  3308. data/vendor/bundle/gems/sequel-5.18.0/spec/core/deprecated_spec.rb +0 -70
  3309. data/vendor/bundle/gems/sequel-5.18.0/spec/core/expression_filters_spec.rb +0 -1455
  3310. data/vendor/bundle/gems/sequel-5.18.0/spec/core/mock_adapter_spec.rb +0 -722
  3311. data/vendor/bundle/gems/sequel-5.18.0/spec/core/object_graph_spec.rb +0 -336
  3312. data/vendor/bundle/gems/sequel-5.18.0/spec/core/placeholder_literalizer_spec.rb +0 -166
  3313. data/vendor/bundle/gems/sequel-5.18.0/spec/core/schema_generator_spec.rb +0 -214
  3314. data/vendor/bundle/gems/sequel-5.18.0/spec/core/schema_spec.rb +0 -1820
  3315. data/vendor/bundle/gems/sequel-5.18.0/spec/core/spec_helper.rb +0 -24
  3316. data/vendor/bundle/gems/sequel-5.18.0/spec/core/version_spec.rb +0 -14
  3317. data/vendor/bundle/gems/sequel-5.18.0/spec/core_extensions_spec.rb +0 -763
  3318. data/vendor/bundle/gems/sequel-5.18.0/spec/core_model_spec.rb +0 -2
  3319. data/vendor/bundle/gems/sequel-5.18.0/spec/core_spec.rb +0 -1
  3320. data/vendor/bundle/gems/sequel-5.18.0/spec/deprecation_helper.rb +0 -30
  3321. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/accessed_columns_spec.rb +0 -51
  3322. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/active_model_spec.rb +0 -99
  3323. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/after_initialize_spec.rb +0 -28
  3324. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/arbitrary_servers_spec.rb +0 -109
  3325. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/association_dependencies_spec.rb +0 -125
  3326. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/association_pks_spec.rb +0 -423
  3327. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/association_proxies_spec.rb +0 -100
  3328. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/auto_literal_strings_spec.rb +0 -205
  3329. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/auto_validations_spec.rb +0 -229
  3330. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/blacklist_security_spec.rb +0 -95
  3331. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/blank_spec.rb +0 -69
  3332. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/boolean_readers_spec.rb +0 -93
  3333. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/boolean_subsets_spec.rb +0 -47
  3334. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/caching_spec.rb +0 -273
  3335. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/caller_logging_spec.rb +0 -52
  3336. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/class_table_inheritance_spec.rb +0 -728
  3337. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/column_conflicts_spec.rb +0 -75
  3338. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/column_select_spec.rb +0 -129
  3339. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/columns_introspection_spec.rb +0 -90
  3340. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/columns_updated_spec.rb +0 -35
  3341. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/composition_spec.rb +0 -248
  3342. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/connection_expiration_spec.rb +0 -151
  3343. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/connection_validator_spec.rb +0 -144
  3344. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/constant_sql_override_spec.rb +0 -24
  3345. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/constraint_validations_plugin_spec.rb +0 -300
  3346. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/constraint_validations_spec.rb +0 -421
  3347. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/core_refinements_spec.rb +0 -528
  3348. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/csv_serializer_spec.rb +0 -183
  3349. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/current_datetime_timestamp_spec.rb +0 -27
  3350. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/dataset_associations_spec.rb +0 -365
  3351. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/dataset_source_alias_spec.rb +0 -51
  3352. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/date_arithmetic_spec.rb +0 -181
  3353. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/datetime_parse_to_time_spec.rb +0 -169
  3354. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/def_dataset_method_spec.rb +0 -100
  3355. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/defaults_setter_spec.rb +0 -150
  3356. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/delay_add_association_spec.rb +0 -73
  3357. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/dirty_spec.rb +0 -189
  3358. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/duplicate_columns_handler_spec.rb +0 -104
  3359. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/eager_each_spec.rb +0 -62
  3360. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/eager_graph_eager_spec.rb +0 -100
  3361. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/empty_array_consider_nulls_spec.rb +0 -24
  3362. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/error_splitter_spec.rb +0 -18
  3363. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/error_sql_spec.rb +0 -20
  3364. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/escaped_like_spec.rb +0 -40
  3365. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/eval_inspect_spec.rb +0 -81
  3366. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/finder_spec.rb +0 -260
  3367. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/force_encoding_spec.rb +0 -126
  3368. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/freeze_datasets_spec.rb +0 -31
  3369. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/graph_each_spec.rb +0 -113
  3370. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/hook_class_methods_spec.rb +0 -380
  3371. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/identifier_mangling_spec.rb +0 -201
  3372. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/implicit_subquery_spec.rb +0 -58
  3373. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/index_caching_spec.rb +0 -66
  3374. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/inflector_spec.rb +0 -183
  3375. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/input_transformer_spec.rb +0 -69
  3376. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/insert_returning_select_spec.rb +0 -72
  3377. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/instance_filters_spec.rb +0 -79
  3378. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/instance_hooks_spec.rb +0 -246
  3379. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/integer64_spec.rb +0 -22
  3380. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/inverted_subsets_spec.rb +0 -33
  3381. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/json_serializer_spec.rb +0 -336
  3382. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/lazy_attributes_spec.rb +0 -183
  3383. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/list_spec.rb +0 -291
  3384. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/looser_typecasting_spec.rb +0 -43
  3385. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/many_through_many_spec.rb +0 -2177
  3386. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/migration_spec.rb +0 -851
  3387. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/modification_detection_spec.rb +0 -93
  3388. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/mssql_optimistic_locking_spec.rb +0 -92
  3389. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/named_timezones_spec.rb +0 -111
  3390. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/nested_attributes_spec.rb +0 -767
  3391. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/null_dataset_spec.rb +0 -85
  3392. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/optimistic_locking_spec.rb +0 -127
  3393. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pagination_spec.rb +0 -116
  3394. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_array_associations_spec.rb +0 -802
  3395. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_array_ops_spec.rb +0 -144
  3396. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_array_spec.rb +0 -398
  3397. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_auto_constraint_validations_spec.rb +0 -164
  3398. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_enum_spec.rb +0 -113
  3399. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_extended_date_support_spec.rb +0 -126
  3400. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_hstore_ops_spec.rb +0 -238
  3401. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_hstore_spec.rb +0 -219
  3402. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_inet_ops_spec.rb +0 -102
  3403. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_inet_spec.rb +0 -72
  3404. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_interval_spec.rb +0 -103
  3405. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_json_ops_spec.rb +0 -289
  3406. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_json_spec.rb +0 -262
  3407. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_loose_count_spec.rb +0 -23
  3408. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_range_ops_spec.rb +0 -60
  3409. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_range_spec.rb +0 -519
  3410. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_row_ops_spec.rb +0 -61
  3411. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_row_plugin_spec.rb +0 -60
  3412. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_row_spec.rb +0 -363
  3413. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_static_cache_updater_spec.rb +0 -93
  3414. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_timestamptz_spec.rb +0 -17
  3415. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/prepared_statements_safe_spec.rb +0 -66
  3416. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/prepared_statements_spec.rb +0 -177
  3417. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pretty_table_spec.rb +0 -123
  3418. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/query_spec.rb +0 -94
  3419. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/rcte_tree_spec.rb +0 -381
  3420. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/round_timestamps_spec.rb +0 -39
  3421. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/s_spec.rb +0 -60
  3422. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/schema_caching_spec.rb +0 -64
  3423. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/schema_dumper_spec.rb +0 -868
  3424. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/select_remove_spec.rb +0 -38
  3425. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/sequel_4_dataset_methods_spec.rb +0 -121
  3426. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/serialization_modification_detection_spec.rb +0 -98
  3427. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/serialization_spec.rb +0 -365
  3428. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/server_block_spec.rb +0 -97
  3429. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/server_logging_spec.rb +0 -45
  3430. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/sharding_spec.rb +0 -189
  3431. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/shared_caching_spec.rb +0 -151
  3432. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/single_table_inheritance_spec.rb +0 -347
  3433. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/singular_table_names_spec.rb +0 -22
  3434. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/skip_create_refresh_spec.rb +0 -18
  3435. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/spec_helper.rb +0 -63
  3436. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/split_array_nil_spec.rb +0 -24
  3437. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/split_values_spec.rb +0 -57
  3438. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/sql_comments_spec.rb +0 -33
  3439. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/sql_expr_spec.rb +0 -59
  3440. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/static_cache_spec.rb +0 -471
  3441. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/string_agg_spec.rb +0 -90
  3442. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/string_date_time_spec.rb +0 -95
  3443. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/string_stripper_spec.rb +0 -68
  3444. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/subclasses_spec.rb +0 -79
  3445. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/subset_conditions_spec.rb +0 -38
  3446. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/symbol_aref_refinement_spec.rb +0 -28
  3447. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/symbol_as_refinement_spec.rb +0 -21
  3448. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/synchronize_sql_spec.rb +0 -124
  3449. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/table_select_spec.rb +0 -83
  3450. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/tactical_eager_loading_spec.rb +0 -402
  3451. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/thread_local_timezones_spec.rb +0 -67
  3452. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/throw_failures_spec.rb +0 -74
  3453. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/timestamps_spec.rb +0 -209
  3454. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/to_dot_spec.rb +0 -153
  3455. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/touch_spec.rb +0 -226
  3456. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/tree_spec.rb +0 -334
  3457. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/typecast_on_load_spec.rb +0 -86
  3458. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/unlimited_update_spec.rb +0 -21
  3459. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/update_or_create_spec.rb +0 -83
  3460. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/update_primary_key_spec.rb +0 -105
  3461. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/update_refresh_spec.rb +0 -59
  3462. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/uuid_spec.rb +0 -101
  3463. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/validate_associated_spec.rb +0 -52
  3464. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/validation_class_methods_spec.rb +0 -1040
  3465. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/validation_contexts_spec.rb +0 -31
  3466. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/validation_helpers_spec.rb +0 -525
  3467. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/whitelist_security_spec.rb +0 -157
  3468. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/xml_serializer_spec.rb +0 -213
  3469. data/vendor/bundle/gems/sequel-5.18.0/spec/files/bad_down_migration/001_create_alt_basic.rb +0 -4
  3470. data/vendor/bundle/gems/sequel-5.18.0/spec/files/bad_down_migration/002_create_alt_advanced.rb +0 -4
  3471. data/vendor/bundle/gems/sequel-5.18.0/spec/files/bad_timestamped_migrations/1273253849_create_sessions.rb +0 -9
  3472. data/vendor/bundle/gems/sequel-5.18.0/spec/files/bad_timestamped_migrations/1273253851_create_nodes.rb +0 -9
  3473. data/vendor/bundle/gems/sequel-5.18.0/spec/files/bad_timestamped_migrations/1273253853_3_create_users.rb +0 -3
  3474. data/vendor/bundle/gems/sequel-5.18.0/spec/files/bad_up_migration/001_create_alt_basic.rb +0 -4
  3475. data/vendor/bundle/gems/sequel-5.18.0/spec/files/bad_up_migration/002_create_alt_advanced.rb +0 -3
  3476. data/vendor/bundle/gems/sequel-5.18.0/spec/files/convert_to_timestamp_migrations/001_create_sessions.rb +0 -9
  3477. data/vendor/bundle/gems/sequel-5.18.0/spec/files/convert_to_timestamp_migrations/002_create_nodes.rb +0 -9
  3478. data/vendor/bundle/gems/sequel-5.18.0/spec/files/convert_to_timestamp_migrations/003_3_create_users.rb +0 -4
  3479. data/vendor/bundle/gems/sequel-5.18.0/spec/files/convert_to_timestamp_migrations/1273253850_create_artists.rb +0 -9
  3480. data/vendor/bundle/gems/sequel-5.18.0/spec/files/convert_to_timestamp_migrations/1273253852_create_albums.rb +0 -9
  3481. data/vendor/bundle/gems/sequel-5.18.0/spec/files/double_migration/001_create_sessions.rb +0 -9
  3482. data/vendor/bundle/gems/sequel-5.18.0/spec/files/double_migration/002_create_nodes.rb +0 -19
  3483. data/vendor/bundle/gems/sequel-5.18.0/spec/files/double_migration/003_3_create_users.rb +0 -4
  3484. data/vendor/bundle/gems/sequel-5.18.0/spec/files/duplicate_integer_migrations/001_create_alt_advanced.rb +0 -4
  3485. data/vendor/bundle/gems/sequel-5.18.0/spec/files/duplicate_integer_migrations/001_create_alt_basic.rb +0 -4
  3486. data/vendor/bundle/gems/sequel-5.18.0/spec/files/duplicate_timestamped_migrations/1273253849_create_sessions.rb +0 -9
  3487. data/vendor/bundle/gems/sequel-5.18.0/spec/files/duplicate_timestamped_migrations/1273253853_create_nodes.rb +0 -9
  3488. data/vendor/bundle/gems/sequel-5.18.0/spec/files/duplicate_timestamped_migrations/1273253853_create_users.rb +0 -4
  3489. data/vendor/bundle/gems/sequel-5.18.0/spec/files/empty_migration/001_create_sessions.rb +0 -9
  3490. data/vendor/bundle/gems/sequel-5.18.0/spec/files/empty_migration/002_create_nodes.rb +0 -0
  3491. data/vendor/bundle/gems/sequel-5.18.0/spec/files/empty_migration/003_3_create_users.rb +0 -4
  3492. data/vendor/bundle/gems/sequel-5.18.0/spec/files/integer_migrations/001_create_sessions.rb +0 -9
  3493. data/vendor/bundle/gems/sequel-5.18.0/spec/files/integer_migrations/002_create_nodes.rb +0 -9
  3494. data/vendor/bundle/gems/sequel-5.18.0/spec/files/integer_migrations/003_3_create_users.rb +0 -4
  3495. data/vendor/bundle/gems/sequel-5.18.0/spec/files/interleaved_timestamped_migrations/1273253849_create_sessions.rb +0 -9
  3496. data/vendor/bundle/gems/sequel-5.18.0/spec/files/interleaved_timestamped_migrations/1273253850_create_artists.rb +0 -9
  3497. data/vendor/bundle/gems/sequel-5.18.0/spec/files/interleaved_timestamped_migrations/1273253851_create_nodes.rb +0 -9
  3498. data/vendor/bundle/gems/sequel-5.18.0/spec/files/interleaved_timestamped_migrations/1273253852_create_albums.rb +0 -9
  3499. data/vendor/bundle/gems/sequel-5.18.0/spec/files/interleaved_timestamped_migrations/1273253853_3_create_users.rb +0 -4
  3500. data/vendor/bundle/gems/sequel-5.18.0/spec/files/missing_integer_migrations/001_create_alt_basic.rb +0 -4
  3501. data/vendor/bundle/gems/sequel-5.18.0/spec/files/missing_integer_migrations/003_create_alt_advanced.rb +0 -4
  3502. data/vendor/bundle/gems/sequel-5.18.0/spec/files/missing_timestamped_migrations/1273253849_create_sessions.rb +0 -9
  3503. data/vendor/bundle/gems/sequel-5.18.0/spec/files/missing_timestamped_migrations/1273253853_3_create_users.rb +0 -4
  3504. data/vendor/bundle/gems/sequel-5.18.0/spec/files/reversible_migrations/001_reversible.rb +0 -5
  3505. data/vendor/bundle/gems/sequel-5.18.0/spec/files/reversible_migrations/002_reversible.rb +0 -5
  3506. data/vendor/bundle/gems/sequel-5.18.0/spec/files/reversible_migrations/003_reversible.rb +0 -5
  3507. data/vendor/bundle/gems/sequel-5.18.0/spec/files/reversible_migrations/004_reversible.rb +0 -5
  3508. data/vendor/bundle/gems/sequel-5.18.0/spec/files/reversible_migrations/005_reversible.rb +0 -10
  3509. data/vendor/bundle/gems/sequel-5.18.0/spec/files/reversible_migrations/006_reversible.rb +0 -10
  3510. data/vendor/bundle/gems/sequel-5.18.0/spec/files/reversible_migrations/007_reversible.rb +0 -10
  3511. data/vendor/bundle/gems/sequel-5.18.0/spec/files/timestamped_migrations/1273253849_create_sessions.rb +0 -9
  3512. data/vendor/bundle/gems/sequel-5.18.0/spec/files/timestamped_migrations/1273253851_create_nodes.rb +0 -9
  3513. data/vendor/bundle/gems/sequel-5.18.0/spec/files/timestamped_migrations/1273253853_3_create_users.rb +0 -4
  3514. data/vendor/bundle/gems/sequel-5.18.0/spec/files/transaction_specified_migrations/001_create_alt_basic.rb +0 -4
  3515. data/vendor/bundle/gems/sequel-5.18.0/spec/files/transaction_specified_migrations/002_create_basic.rb +0 -4
  3516. data/vendor/bundle/gems/sequel-5.18.0/spec/files/transaction_unspecified_migrations/001_create_alt_basic.rb +0 -3
  3517. data/vendor/bundle/gems/sequel-5.18.0/spec/files/transaction_unspecified_migrations/002_create_basic.rb +0 -3
  3518. data/vendor/bundle/gems/sequel-5.18.0/spec/files/uppercase_timestamped_migrations/1273253849_CREATE_SESSIONS.RB +0 -9
  3519. data/vendor/bundle/gems/sequel-5.18.0/spec/files/uppercase_timestamped_migrations/1273253851_CREATE_NODES.RB +0 -9
  3520. data/vendor/bundle/gems/sequel-5.18.0/spec/files/uppercase_timestamped_migrations/1273253853_3_CREATE_USERS.RB +0 -4
  3521. data/vendor/bundle/gems/sequel-5.18.0/spec/guards_helper.rb +0 -59
  3522. data/vendor/bundle/gems/sequel-5.18.0/spec/integration/associations_test.rb +0 -2597
  3523. data/vendor/bundle/gems/sequel-5.18.0/spec/integration/database_test.rb +0 -113
  3524. data/vendor/bundle/gems/sequel-5.18.0/spec/integration/dataset_test.rb +0 -1981
  3525. data/vendor/bundle/gems/sequel-5.18.0/spec/integration/eager_loader_test.rb +0 -687
  3526. data/vendor/bundle/gems/sequel-5.18.0/spec/integration/migrator_test.rb +0 -262
  3527. data/vendor/bundle/gems/sequel-5.18.0/spec/integration/model_test.rb +0 -203
  3528. data/vendor/bundle/gems/sequel-5.18.0/spec/integration/plugin_test.rb +0 -2381
  3529. data/vendor/bundle/gems/sequel-5.18.0/spec/integration/prepared_statement_test.rb +0 -405
  3530. data/vendor/bundle/gems/sequel-5.18.0/spec/integration/schema_test.rb +0 -889
  3531. data/vendor/bundle/gems/sequel-5.18.0/spec/integration/spec_helper.rb +0 -65
  3532. data/vendor/bundle/gems/sequel-5.18.0/spec/integration/timezone_test.rb +0 -86
  3533. data/vendor/bundle/gems/sequel-5.18.0/spec/integration/transaction_test.rb +0 -553
  3534. data/vendor/bundle/gems/sequel-5.18.0/spec/integration/type_test.rb +0 -127
  3535. data/vendor/bundle/gems/sequel-5.18.0/spec/model/association_reflection_spec.rb +0 -803
  3536. data/vendor/bundle/gems/sequel-5.18.0/spec/model/associations_spec.rb +0 -4658
  3537. data/vendor/bundle/gems/sequel-5.18.0/spec/model/base_spec.rb +0 -875
  3538. data/vendor/bundle/gems/sequel-5.18.0/spec/model/class_dataset_methods_spec.rb +0 -146
  3539. data/vendor/bundle/gems/sequel-5.18.0/spec/model/dataset_methods_spec.rb +0 -198
  3540. data/vendor/bundle/gems/sequel-5.18.0/spec/model/eager_loading_spec.rb +0 -2377
  3541. data/vendor/bundle/gems/sequel-5.18.0/spec/model/hooks_spec.rb +0 -370
  3542. data/vendor/bundle/gems/sequel-5.18.0/spec/model/inflector_spec.rb +0 -26
  3543. data/vendor/bundle/gems/sequel-5.18.0/spec/model/model_spec.rb +0 -956
  3544. data/vendor/bundle/gems/sequel-5.18.0/spec/model/plugins_spec.rb +0 -318
  3545. data/vendor/bundle/gems/sequel-5.18.0/spec/model/record_spec.rb +0 -2118
  3546. data/vendor/bundle/gems/sequel-5.18.0/spec/model/spec_helper.rb +0 -46
  3547. data/vendor/bundle/gems/sequel-5.18.0/spec/model/validations_spec.rb +0 -220
  3548. data/vendor/bundle/gems/sequel-5.18.0/spec/model_no_assoc_spec.rb +0 -1
  3549. data/vendor/bundle/gems/sequel-5.18.0/spec/model_spec.rb +0 -1
  3550. data/vendor/bundle/gems/sequel-5.18.0/spec/plugin_spec.rb +0 -1
  3551. data/vendor/bundle/gems/sequel-5.18.0/spec/sequel_coverage.rb +0 -15
  3552. data/vendor/bundle/gems/sequel-5.18.0/spec/sequel_warning.rb +0 -4
  3553. data/vendor/bundle/gems/sequel-5.18.0/spec/spec_config.rb +0 -12
  3554. data/vendor/bundle/gems/simplecov-0.16.1/CHANGELOG.md +0 -481
  3555. data/vendor/bundle/gems/simplecov-0.16.1/CONTRIBUTING.md +0 -51
  3556. data/vendor/bundle/gems/simplecov-0.16.1/ISSUE_TEMPLATE.md +0 -23
  3557. data/vendor/bundle/gems/simplecov-0.16.1/LICENSE +0 -20
  3558. data/vendor/bundle/gems/simplecov-0.16.1/README.md +0 -710
  3559. data/vendor/bundle/gems/simplecov-0.16.1/doc/alternate-formatters.md +0 -51
  3560. data/vendor/bundle/gems/simplecov-0.16.1/doc/commercial-services.md +0 -20
  3561. data/vendor/bundle/gems/simplecov-0.16.1/doc/editor-integration.md +0 -18
  3562. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov.rb +0 -281
  3563. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/command_guesser.rb +0 -61
  3564. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/configuration.rb +0 -305
  3565. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/defaults.rb +0 -50
  3566. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/exit_codes.rb +0 -10
  3567. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/file_list.rb +0 -61
  3568. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/filter.rb +0 -91
  3569. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/formatter.rb +0 -10
  3570. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/formatter/multi_formatter.rb +0 -34
  3571. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/formatter/simple_formatter.rb +0 -25
  3572. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/jruby_fix.rb +0 -44
  3573. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/last_run.rb +0 -26
  3574. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/lines_classifier.rb +0 -48
  3575. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/load_global_config.rb +0 -8
  3576. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/no_defaults.rb +0 -4
  3577. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/profiles.rb +0 -33
  3578. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/profiles/bundler_filter.rb +0 -5
  3579. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/profiles/rails.rb +0 -18
  3580. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/profiles/root_filter.rb +0 -10
  3581. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/profiles/test_frameworks.rb +0 -8
  3582. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/railtie.rb +0 -9
  3583. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/railties/tasks.rake +0 -13
  3584. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/raw_coverage.rb +0 -41
  3585. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/result.rb +0 -88
  3586. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/result_merger.rb +0 -123
  3587. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/source_file.rb +0 -203
  3588. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/version.rb +0 -5
  3589. data/vendor/bundle/gems/simplecov-html-0.10.2/CHANGELOG.md +0 -13
  3590. data/vendor/bundle/gems/simplecov-html-0.10.2/Gemfile +0 -34
  3591. data/vendor/bundle/gems/simplecov-html-0.10.2/Guardfile +0 -12
  3592. data/vendor/bundle/gems/simplecov-html-0.10.2/LICENSE +0 -20
  3593. data/vendor/bundle/gems/simplecov-html-0.10.2/README.md +0 -30
  3594. data/vendor/bundle/gems/simplecov-html-0.10.2/Rakefile +0 -41
  3595. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/javascripts/application.js +0 -127
  3596. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/javascripts/libraries/jquery-1.6.2.min.js +0 -18
  3597. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/javascripts/plugins/highlight.pack.js +0 -1
  3598. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/javascripts/plugins/jquery.colorbox.js +0 -1090
  3599. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/javascripts/plugins/jquery.dataTables.min.js +0 -152
  3600. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/javascripts/plugins/jquery.timeago.js +0 -141
  3601. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/javascripts/plugins/jquery.url.js +0 -174
  3602. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/stylesheets/application.css +0 -3
  3603. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/stylesheets/plugins/highlight.css +0 -129
  3604. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/stylesheets/plugins/jquery-ui-1.8.4.custom.css +0 -295
  3605. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/stylesheets/plugins/jquery.colorbox.css +0 -52
  3606. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/stylesheets/reset.css +0 -103
  3607. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/stylesheets/screen.css.sass +0 -220
  3608. data/vendor/bundle/gems/simplecov-html-0.10.2/lib/simplecov-html.rb +0 -110
  3609. data/vendor/bundle/gems/simplecov-html-0.10.2/lib/simplecov-html/version.rb +0 -7
  3610. data/vendor/bundle/gems/simplecov-html-0.10.2/public/application.css +0 -799
  3611. data/vendor/bundle/gems/simplecov-html-0.10.2/public/application.js +0 -1707
  3612. data/vendor/bundle/gems/simplecov-html-0.10.2/public/colorbox/border.png +0 -0
  3613. data/vendor/bundle/gems/simplecov-html-0.10.2/public/colorbox/controls.png +0 -0
  3614. data/vendor/bundle/gems/simplecov-html-0.10.2/public/colorbox/loading.gif +0 -0
  3615. data/vendor/bundle/gems/simplecov-html-0.10.2/public/colorbox/loading_background.png +0 -0
  3616. data/vendor/bundle/gems/simplecov-html-0.10.2/public/favicon_green.png +0 -0
  3617. data/vendor/bundle/gems/simplecov-html-0.10.2/public/favicon_red.png +0 -0
  3618. data/vendor/bundle/gems/simplecov-html-0.10.2/public/favicon_yellow.png +0 -0
  3619. data/vendor/bundle/gems/simplecov-html-0.10.2/public/loading.gif +0 -0
  3620. data/vendor/bundle/gems/simplecov-html-0.10.2/public/magnify.png +0 -0
  3621. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  3622. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  3623. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  3624. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  3625. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  3626. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  3627. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  3628. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  3629. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-icons_222222_256x240.png +0 -0
  3630. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-icons_2e83ff_256x240.png +0 -0
  3631. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-icons_454545_256x240.png +0 -0
  3632. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-icons_888888_256x240.png +0 -0
  3633. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-icons_cd0a0a_256x240.png +0 -0
  3634. data/vendor/bundle/gems/simplecov-html-0.10.2/simplecov-html.gemspec +0 -22
  3635. data/vendor/bundle/gems/simplecov-html-0.10.2/test/helper.rb +0 -4
  3636. data/vendor/bundle/gems/simplecov-html-0.10.2/test/test_simple_cov-html.rb +0 -8
  3637. data/vendor/bundle/gems/simplecov-html-0.10.2/views/file_list.erb +0 -45
  3638. data/vendor/bundle/gems/simplecov-html-0.10.2/views/layout.erb +0 -41
  3639. data/vendor/bundle/gems/simplecov-html-0.10.2/views/source_file.erb +0 -23
  3640. data/vendor/bundle/gems/sqlite3-1.4.0/API_CHANGES.rdoc +0 -50
  3641. data/vendor/bundle/gems/sqlite3-1.4.0/CHANGELOG.rdoc +0 -306
  3642. data/vendor/bundle/gems/sqlite3-1.4.0/ChangeLog.cvs +0 -88
  3643. data/vendor/bundle/gems/sqlite3-1.4.0/Gemfile +0 -17
  3644. data/vendor/bundle/gems/sqlite3-1.4.0/LICENSE +0 -27
  3645. data/vendor/bundle/gems/sqlite3-1.4.0/Manifest.txt +0 -60
  3646. data/vendor/bundle/gems/sqlite3-1.4.0/README.rdoc +0 -118
  3647. data/vendor/bundle/gems/sqlite3-1.4.0/Rakefile +0 -8
  3648. data/vendor/bundle/gems/sqlite3-1.4.0/appveyor.yml +0 -36
  3649. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/Makefile +0 -265
  3650. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/aggregator.c +0 -273
  3651. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/aggregator.h +0 -12
  3652. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/aggregator.o +0 -0
  3653. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/backup.c +0 -168
  3654. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/backup.h +0 -15
  3655. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/backup.o +0 -0
  3656. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/database.c +0 -823
  3657. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/database.h +0 -17
  3658. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/database.o +0 -0
  3659. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/exception.c +0 -98
  3660. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/exception.h +0 -8
  3661. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/exception.o +0 -0
  3662. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/extconf.rb +0 -100
  3663. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/sqlite3.c +0 -161
  3664. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/sqlite3.o +0 -0
  3665. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/sqlite3_native.so +0 -0
  3666. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/sqlite3_ruby.h +0 -45
  3667. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/statement.c +0 -442
  3668. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/statement.h +0 -16
  3669. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/statement.o +0 -0
  3670. data/vendor/bundle/gems/sqlite3-1.4.0/faq/faq.rb +0 -145
  3671. data/vendor/bundle/gems/sqlite3-1.4.0/faq/faq.yml +0 -426
  3672. data/vendor/bundle/gems/sqlite3-1.4.0/lib/sqlite3.rb +0 -15
  3673. data/vendor/bundle/gems/sqlite3-1.4.0/lib/sqlite3/constants.rb +0 -50
  3674. data/vendor/bundle/gems/sqlite3-1.4.0/lib/sqlite3/database.rb +0 -736
  3675. data/vendor/bundle/gems/sqlite3-1.4.0/lib/sqlite3/errors.rb +0 -35
  3676. data/vendor/bundle/gems/sqlite3-1.4.0/lib/sqlite3/pragmas.rb +0 -588
  3677. data/vendor/bundle/gems/sqlite3-1.4.0/lib/sqlite3/resultset.rb +0 -187
  3678. data/vendor/bundle/gems/sqlite3-1.4.0/lib/sqlite3/sqlite3_native.so +0 -0
  3679. data/vendor/bundle/gems/sqlite3-1.4.0/lib/sqlite3/statement.rb +0 -144
  3680. data/vendor/bundle/gems/sqlite3-1.4.0/lib/sqlite3/translator.rb +0 -118
  3681. data/vendor/bundle/gems/sqlite3-1.4.0/lib/sqlite3/value.rb +0 -57
  3682. data/vendor/bundle/gems/sqlite3-1.4.0/lib/sqlite3/version.rb +0 -25
  3683. data/vendor/bundle/gems/sqlite3-1.4.0/rakelib/faq.rake +0 -9
  3684. data/vendor/bundle/gems/sqlite3-1.4.0/rakelib/gem.rake +0 -40
  3685. data/vendor/bundle/gems/sqlite3-1.4.0/rakelib/native.rake +0 -56
  3686. data/vendor/bundle/gems/sqlite3-1.4.0/rakelib/vendor_sqlite3.rake +0 -97
  3687. data/vendor/bundle/gems/sqlite3-1.4.0/setup.rb +0 -1333
  3688. data/vendor/bundle/gems/sqlite3-1.4.0/test/helper.rb +0 -18
  3689. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_backup.rb +0 -33
  3690. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_collation.rb +0 -82
  3691. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_database.rb +0 -503
  3692. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_database_flags.rb +0 -95
  3693. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_database_readonly.rb +0 -36
  3694. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_database_readwrite.rb +0 -41
  3695. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_deprecated.rb +0 -44
  3696. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_encoding.rb +0 -155
  3697. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_integration.rb +0 -507
  3698. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_integration_aggregate.rb +0 -336
  3699. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_integration_open_close.rb +0 -30
  3700. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_integration_pending.rb +0 -115
  3701. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_integration_resultset.rb +0 -159
  3702. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_integration_statement.rb +0 -194
  3703. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_result_set.rb +0 -37
  3704. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_sqlite3.rb +0 -21
  3705. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_statement.rb +0 -268
  3706. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_statement_execute.rb +0 -35
  3707. data/vendor/bundle/gems/term-ansicolor-1.7.1/CHANGES +0 -69
  3708. data/vendor/bundle/gems/term-ansicolor-1.7.1/COPYING +0 -202
  3709. data/vendor/bundle/gems/term-ansicolor-1.7.1/Gemfile +0 -5
  3710. data/vendor/bundle/gems/term-ansicolor-1.7.1/README.md +0 -42
  3711. data/vendor/bundle/gems/term-ansicolor-1.7.1/Rakefile +0 -28
  3712. data/vendor/bundle/gems/term-ansicolor-1.7.1/VERSION +0 -1
  3713. data/vendor/bundle/gems/term-ansicolor-1.7.1/bin/term_cdiff +0 -19
  3714. data/vendor/bundle/gems/term-ansicolor-1.7.1/bin/term_colortab +0 -49
  3715. data/vendor/bundle/gems/term-ansicolor-1.7.1/bin/term_decolor +0 -12
  3716. data/vendor/bundle/gems/term-ansicolor-1.7.1/bin/term_display +0 -91
  3717. data/vendor/bundle/gems/term-ansicolor-1.7.1/bin/term_mandel +0 -52
  3718. data/vendor/bundle/gems/term-ansicolor-1.7.1/bin/term_snow +0 -72
  3719. data/vendor/bundle/gems/term-ansicolor-1.7.1/examples/example.rb +0 -90
  3720. data/vendor/bundle/gems/term-ansicolor-1.7.1/examples/lambda-red-plain.ppm +0 -135
  3721. data/vendor/bundle/gems/term-ansicolor-1.7.1/examples/lambda-red.png +0 -0
  3722. data/vendor/bundle/gems/term-ansicolor-1.7.1/examples/lambda-red.ppm +0 -4
  3723. data/vendor/bundle/gems/term-ansicolor-1.7.1/lib/term/ansicolor.rb +0 -127
  3724. data/vendor/bundle/gems/term-ansicolor-1.7.1/lib/term/ansicolor/attribute.rb +0 -142
  3725. data/vendor/bundle/gems/term-ansicolor-1.7.1/lib/term/ansicolor/attribute/color256.rb +0 -69
  3726. data/vendor/bundle/gems/term-ansicolor-1.7.1/lib/term/ansicolor/attribute/color8.rb +0 -25
  3727. data/vendor/bundle/gems/term-ansicolor-1.7.1/lib/term/ansicolor/attribute/intense_color8.rb +0 -43
  3728. data/vendor/bundle/gems/term-ansicolor-1.7.1/lib/term/ansicolor/attribute/text.rb +0 -23
  3729. data/vendor/bundle/gems/term-ansicolor-1.7.1/lib/term/ansicolor/hsl_triple.rb +0 -169
  3730. data/vendor/bundle/gems/term-ansicolor-1.7.1/lib/term/ansicolor/movement.rb +0 -108
  3731. data/vendor/bundle/gems/term-ansicolor-1.7.1/lib/term/ansicolor/ppm_reader.rb +0 -96
  3732. data/vendor/bundle/gems/term-ansicolor-1.7.1/lib/term/ansicolor/rgb_color_metrics.rb +0 -161
  3733. data/vendor/bundle/gems/term-ansicolor-1.7.1/lib/term/ansicolor/rgb_triple.rb +0 -179
  3734. data/vendor/bundle/gems/term-ansicolor-1.7.1/lib/term/ansicolor/version.rb +0 -8
  3735. data/vendor/bundle/gems/term-ansicolor-1.7.1/term-ansicolor.gemspec +0 -45
  3736. data/vendor/bundle/gems/term-ansicolor-1.7.1/tests/ansicolor_test.rb +0 -160
  3737. data/vendor/bundle/gems/term-ansicolor-1.7.1/tests/attribute_test.rb +0 -73
  3738. data/vendor/bundle/gems/term-ansicolor-1.7.1/tests/hsl_triple_test.rb +0 -85
  3739. data/vendor/bundle/gems/term-ansicolor-1.7.1/tests/ppm_reader_test.rb +0 -46
  3740. data/vendor/bundle/gems/term-ansicolor-1.7.1/tests/rgb_color_metrics_test.rb +0 -100
  3741. data/vendor/bundle/gems/term-ansicolor-1.7.1/tests/rgb_triple_test.rb +0 -101
  3742. data/vendor/bundle/gems/term-ansicolor-1.7.1/tests/test_helper.rb +0 -8
  3743. data/vendor/bundle/gems/test-unit-3.3.1/COPYING +0 -67
  3744. data/vendor/bundle/gems/test-unit-3.3.1/GPL +0 -339
  3745. data/vendor/bundle/gems/test-unit-3.3.1/LGPL +0 -502
  3746. data/vendor/bundle/gems/test-unit-3.3.1/PSFL +0 -271
  3747. data/vendor/bundle/gems/test-unit-3.3.1/README.md +0 -101
  3748. data/vendor/bundle/gems/test-unit-3.3.1/Rakefile +0 -80
  3749. data/vendor/bundle/gems/test-unit-3.3.1/doc/text/getting-started.md +0 -246
  3750. data/vendor/bundle/gems/test-unit-3.3.1/doc/text/how-to.md +0 -90
  3751. data/vendor/bundle/gems/test-unit-3.3.1/doc/text/news.md +0 -1417
  3752. data/vendor/bundle/gems/test-unit-3.3.1/lib/test-unit.rb +0 -34
  3753. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit.rb +0 -505
  3754. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/assertion-failed-error.rb +0 -25
  3755. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/assertions.rb +0 -2256
  3756. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/attribute-matcher.rb +0 -26
  3757. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/attribute.rb +0 -227
  3758. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/auto-runner-loader.rb +0 -17
  3759. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/autorunner.rb +0 -537
  3760. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/code-snippet-fetcher.rb +0 -56
  3761. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/collector.rb +0 -73
  3762. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/collector/descendant.rb +0 -19
  3763. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/collector/dir.rb +0 -108
  3764. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/collector/load.rb +0 -199
  3765. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/collector/objectspace.rb +0 -34
  3766. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/collector/xml.rb +0 -249
  3767. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/color-scheme.rb +0 -198
  3768. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/color.rb +0 -134
  3769. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/data-sets.rb +0 -116
  3770. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/data.rb +0 -371
  3771. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/diff.rb +0 -746
  3772. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/error.rb +0 -158
  3773. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/exception-handler.rb +0 -82
  3774. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/failure.rb +0 -169
  3775. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/fault-location-detector.rb +0 -100
  3776. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/fixture.rb +0 -298
  3777. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/notification.rb +0 -136
  3778. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/omission.rb +0 -195
  3779. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/pending.rb +0 -154
  3780. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/priority.rb +0 -192
  3781. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/runner/console.rb +0 -84
  3782. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/runner/emacs.rb +0 -8
  3783. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/runner/xml.rb +0 -15
  3784. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/test-suite-creator.rb +0 -103
  3785. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/testcase.rb +0 -884
  3786. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/testresult.rb +0 -132
  3787. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/testsuite.rb +0 -175
  3788. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/ui/console/outputlevel.rb +0 -15
  3789. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/ui/console/testrunner.rb +0 -750
  3790. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/ui/emacs/testrunner.rb +0 -49
  3791. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/ui/testrunner.rb +0 -53
  3792. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/ui/testrunnermediator.rb +0 -114
  3793. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/ui/testrunnerutilities.rb +0 -41
  3794. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/ui/xml/testrunner.rb +0 -224
  3795. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/util/backtracefilter.rb +0 -59
  3796. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/util/method-owner-finder.rb +0 -28
  3797. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/util/observable.rb +0 -90
  3798. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/util/output.rb +0 -31
  3799. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/util/procwrapper.rb +0 -48
  3800. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/version.rb +0 -5
  3801. data/vendor/bundle/gems/test-unit-3.3.1/sample/adder.rb +0 -13
  3802. data/vendor/bundle/gems/test-unit-3.3.1/sample/subtracter.rb +0 -12
  3803. data/vendor/bundle/gems/test-unit-3.3.1/sample/test_adder.rb +0 -20
  3804. data/vendor/bundle/gems/test-unit-3.3.1/sample/test_subtracter.rb +0 -20
  3805. data/vendor/bundle/gems/test-unit-3.3.1/sample/test_user.rb +0 -23
  3806. data/vendor/bundle/gems/test-unit-3.3.1/test/collector/test-descendant.rb +0 -182
  3807. data/vendor/bundle/gems/test-unit-3.3.1/test/collector/test-load.rb +0 -442
  3808. data/vendor/bundle/gems/test-unit-3.3.1/test/collector/test_dir.rb +0 -407
  3809. data/vendor/bundle/gems/test-unit-3.3.1/test/collector/test_objectspace.rb +0 -102
  3810. data/vendor/bundle/gems/test-unit-3.3.1/test/fixtures/header-label.csv +0 -3
  3811. data/vendor/bundle/gems/test-unit-3.3.1/test/fixtures/header-label.tsv +0 -3
  3812. data/vendor/bundle/gems/test-unit-3.3.1/test/fixtures/header.csv +0 -3
  3813. data/vendor/bundle/gems/test-unit-3.3.1/test/fixtures/header.tsv +0 -3
  3814. data/vendor/bundle/gems/test-unit-3.3.1/test/fixtures/no-header.csv +0 -2
  3815. data/vendor/bundle/gems/test-unit-3.3.1/test/fixtures/no-header.tsv +0 -2
  3816. data/vendor/bundle/gems/test-unit-3.3.1/test/fixtures/plus.csv +0 -3
  3817. data/vendor/bundle/gems/test-unit-3.3.1/test/run-test.rb +0 -22
  3818. data/vendor/bundle/gems/test-unit-3.3.1/test/test-assertions.rb +0 -2182
  3819. data/vendor/bundle/gems/test-unit-3.3.1/test/test-attribute-matcher.rb +0 -38
  3820. data/vendor/bundle/gems/test-unit-3.3.1/test/test-attribute.rb +0 -123
  3821. data/vendor/bundle/gems/test-unit-3.3.1/test/test-code-snippet.rb +0 -79
  3822. data/vendor/bundle/gems/test-unit-3.3.1/test/test-color-scheme.rb +0 -82
  3823. data/vendor/bundle/gems/test-unit-3.3.1/test/test-color.rb +0 -47
  3824. data/vendor/bundle/gems/test-unit-3.3.1/test/test-data.rb +0 -419
  3825. data/vendor/bundle/gems/test-unit-3.3.1/test/test-diff.rb +0 -518
  3826. data/vendor/bundle/gems/test-unit-3.3.1/test/test-emacs-runner.rb +0 -60
  3827. data/vendor/bundle/gems/test-unit-3.3.1/test/test-error.rb +0 -26
  3828. data/vendor/bundle/gems/test-unit-3.3.1/test/test-failure.rb +0 -33
  3829. data/vendor/bundle/gems/test-unit-3.3.1/test/test-fault-location-detector.rb +0 -163
  3830. data/vendor/bundle/gems/test-unit-3.3.1/test/test-fixture.rb +0 -713
  3831. data/vendor/bundle/gems/test-unit-3.3.1/test/test-notification.rb +0 -33
  3832. data/vendor/bundle/gems/test-unit-3.3.1/test/test-omission.rb +0 -81
  3833. data/vendor/bundle/gems/test-unit-3.3.1/test/test-pending.rb +0 -70
  3834. data/vendor/bundle/gems/test-unit-3.3.1/test/test-priority.rb +0 -173
  3835. data/vendor/bundle/gems/test-unit-3.3.1/test/test-test-case.rb +0 -1279
  3836. data/vendor/bundle/gems/test-unit-3.3.1/test/test-test-result.rb +0 -113
  3837. data/vendor/bundle/gems/test-unit-3.3.1/test/test-test-suite-creator.rb +0 -97
  3838. data/vendor/bundle/gems/test-unit-3.3.1/test/test-test-suite.rb +0 -151
  3839. data/vendor/bundle/gems/test-unit-3.3.1/test/testunit-test-util.rb +0 -33
  3840. data/vendor/bundle/gems/test-unit-3.3.1/test/ui/test_testrunmediator.rb +0 -20
  3841. data/vendor/bundle/gems/test-unit-3.3.1/test/util/test-method-owner-finder.rb +0 -38
  3842. data/vendor/bundle/gems/test-unit-3.3.1/test/util/test-output.rb +0 -11
  3843. data/vendor/bundle/gems/test-unit-3.3.1/test/util/test_backtracefilter.rb +0 -52
  3844. data/vendor/bundle/gems/test-unit-3.3.1/test/util/test_observable.rb +0 -102
  3845. data/vendor/bundle/gems/test-unit-3.3.1/test/util/test_procwrapper.rb +0 -36
  3846. data/vendor/bundle/gems/thor-0.19.4/CHANGELOG.md +0 -163
  3847. data/vendor/bundle/gems/thor-0.19.4/CONTRIBUTING.md +0 -15
  3848. data/vendor/bundle/gems/thor-0.19.4/LICENSE.md +0 -20
  3849. data/vendor/bundle/gems/thor-0.19.4/README.md +0 -47
  3850. data/vendor/bundle/gems/thor-0.19.4/bin/thor +0 -6
  3851. data/vendor/bundle/gems/thor-0.19.4/lib/thor.rb +0 -492
  3852. data/vendor/bundle/gems/thor-0.19.4/lib/thor/actions.rb +0 -318
  3853. data/vendor/bundle/gems/thor-0.19.4/lib/thor/actions/create_file.rb +0 -103
  3854. data/vendor/bundle/gems/thor-0.19.4/lib/thor/actions/create_link.rb +0 -59
  3855. data/vendor/bundle/gems/thor-0.19.4/lib/thor/actions/directory.rb +0 -118
  3856. data/vendor/bundle/gems/thor-0.19.4/lib/thor/actions/empty_directory.rb +0 -135
  3857. data/vendor/bundle/gems/thor-0.19.4/lib/thor/actions/file_manipulation.rb +0 -327
  3858. data/vendor/bundle/gems/thor-0.19.4/lib/thor/actions/inject_into_file.rb +0 -103
  3859. data/vendor/bundle/gems/thor-0.19.4/lib/thor/base.rb +0 -656
  3860. data/vendor/bundle/gems/thor-0.19.4/lib/thor/command.rb +0 -133
  3861. data/vendor/bundle/gems/thor-0.19.4/lib/thor/core_ext/hash_with_indifferent_access.rb +0 -85
  3862. data/vendor/bundle/gems/thor-0.19.4/lib/thor/core_ext/io_binary_read.rb +0 -12
  3863. data/vendor/bundle/gems/thor-0.19.4/lib/thor/core_ext/ordered_hash.rb +0 -129
  3864. data/vendor/bundle/gems/thor-0.19.4/lib/thor/error.rb +0 -32
  3865. data/vendor/bundle/gems/thor-0.19.4/lib/thor/group.rb +0 -281
  3866. data/vendor/bundle/gems/thor-0.19.4/lib/thor/invocation.rb +0 -177
  3867. data/vendor/bundle/gems/thor-0.19.4/lib/thor/line_editor.rb +0 -17
  3868. data/vendor/bundle/gems/thor-0.19.4/lib/thor/line_editor/basic.rb +0 -35
  3869. data/vendor/bundle/gems/thor-0.19.4/lib/thor/line_editor/readline.rb +0 -88
  3870. data/vendor/bundle/gems/thor-0.19.4/lib/thor/parser.rb +0 -4
  3871. data/vendor/bundle/gems/thor-0.19.4/lib/thor/parser/argument.rb +0 -70
  3872. data/vendor/bundle/gems/thor-0.19.4/lib/thor/parser/arguments.rb +0 -175
  3873. data/vendor/bundle/gems/thor-0.19.4/lib/thor/parser/option.rb +0 -146
  3874. data/vendor/bundle/gems/thor-0.19.4/lib/thor/parser/options.rb +0 -220
  3875. data/vendor/bundle/gems/thor-0.19.4/lib/thor/rake_compat.rb +0 -71
  3876. data/vendor/bundle/gems/thor-0.19.4/lib/thor/runner.rb +0 -322
  3877. data/vendor/bundle/gems/thor-0.19.4/lib/thor/shell.rb +0 -81
  3878. data/vendor/bundle/gems/thor-0.19.4/lib/thor/shell/basic.rb +0 -436
  3879. data/vendor/bundle/gems/thor-0.19.4/lib/thor/shell/color.rb +0 -149
  3880. data/vendor/bundle/gems/thor-0.19.4/lib/thor/shell/html.rb +0 -126
  3881. data/vendor/bundle/gems/thor-0.19.4/lib/thor/util.rb +0 -268
  3882. data/vendor/bundle/gems/thor-0.19.4/lib/thor/version.rb +0 -3
  3883. data/vendor/bundle/gems/thor-0.19.4/thor.gemspec +0 -21
  3884. data/vendor/bundle/gems/tins-1.20.2/COPYING +0 -18
  3885. data/vendor/bundle/gems/tins-1.20.2/Gemfile +0 -10
  3886. data/vendor/bundle/gems/tins-1.20.2/README.md +0 -107
  3887. data/vendor/bundle/gems/tins-1.20.2/Rakefile +0 -23
  3888. data/vendor/bundle/gems/tins-1.20.2/TODO +0 -3
  3889. data/vendor/bundle/gems/tins-1.20.2/VERSION +0 -1
  3890. data/vendor/bundle/gems/tins-1.20.2/examples/add_one.png +0 -0
  3891. data/vendor/bundle/gems/tins-1.20.2/examples/add_one.stm +0 -13
  3892. data/vendor/bundle/gems/tins-1.20.2/examples/bb3.png +0 -0
  3893. data/vendor/bundle/gems/tins-1.20.2/examples/bb3.stm +0 -26
  3894. data/vendor/bundle/gems/tins-1.20.2/examples/concatenate_compare.mtm +0 -31
  3895. data/vendor/bundle/gems/tins-1.20.2/examples/concatenate_compare.png +0 -0
  3896. data/vendor/bundle/gems/tins-1.20.2/examples/length_difference.mtm +0 -17
  3897. data/vendor/bundle/gems/tins-1.20.2/examples/length_difference.png +0 -0
  3898. data/vendor/bundle/gems/tins-1.20.2/examples/let.rb +0 -62
  3899. data/vendor/bundle/gems/tins-1.20.2/examples/mail.rb +0 -73
  3900. data/vendor/bundle/gems/tins-1.20.2/examples/minsky.rb +0 -145
  3901. data/vendor/bundle/gems/tins-1.20.2/examples/multiply.reg +0 -42
  3902. data/vendor/bundle/gems/tins-1.20.2/examples/null_pattern.rb +0 -52
  3903. data/vendor/bundle/gems/tins-1.20.2/examples/ones_difference-mtm.png +0 -0
  3904. data/vendor/bundle/gems/tins-1.20.2/examples/ones_difference-stm.png +0 -0
  3905. data/vendor/bundle/gems/tins-1.20.2/examples/ones_difference.mtm +0 -12
  3906. data/vendor/bundle/gems/tins-1.20.2/examples/ones_difference.stm +0 -25
  3907. data/vendor/bundle/gems/tins-1.20.2/examples/prefix-equals-suffix-reversed-with-infix.png +0 -0
  3908. data/vendor/bundle/gems/tins-1.20.2/examples/prefix-equals-suffix-reversed-with-infix.stm +0 -38
  3909. data/vendor/bundle/gems/tins-1.20.2/examples/recipe.rb +0 -81
  3910. data/vendor/bundle/gems/tins-1.20.2/examples/recipe2.rb +0 -82
  3911. data/vendor/bundle/gems/tins-1.20.2/examples/recipe_common.rb +0 -65
  3912. data/vendor/bundle/gems/tins-1.20.2/examples/subtract.reg +0 -9
  3913. data/vendor/bundle/gems/tins-1.20.2/examples/turing-graph.rb +0 -17
  3914. data/vendor/bundle/gems/tins-1.20.2/examples/turing.rb +0 -310
  3915. data/vendor/bundle/gems/tins-1.20.2/lib/dslkit.rb +0 -2
  3916. data/vendor/bundle/gems/tins-1.20.2/lib/dslkit/polite.rb +0 -1
  3917. data/vendor/bundle/gems/tins-1.20.2/lib/dslkit/rude.rb +0 -1
  3918. data/vendor/bundle/gems/tins-1.20.2/lib/spruz.rb +0 -2
  3919. data/vendor/bundle/gems/tins-1.20.2/lib/tins.rb +0 -61
  3920. data/vendor/bundle/gems/tins-1.20.2/lib/tins/alias.rb +0 -1
  3921. data/vendor/bundle/gems/tins-1.20.2/lib/tins/annotate.rb +0 -38
  3922. data/vendor/bundle/gems/tins-1.20.2/lib/tins/ask_and_send.rb +0 -31
  3923. data/vendor/bundle/gems/tins-1.20.2/lib/tins/attempt.rb +0 -88
  3924. data/vendor/bundle/gems/tins-1.20.2/lib/tins/bijection.rb +0 -46
  3925. data/vendor/bundle/gems/tins-1.20.2/lib/tins/case_predicate.rb +0 -7
  3926. data/vendor/bundle/gems/tins-1.20.2/lib/tins/complete.rb +0 -18
  3927. data/vendor/bundle/gems/tins-1.20.2/lib/tins/concern.rb +0 -30
  3928. data/vendor/bundle/gems/tins-1.20.2/lib/tins/count_by.rb +0 -8
  3929. data/vendor/bundle/gems/tins-1.20.2/lib/tins/date_dummy.rb +0 -53
  3930. data/vendor/bundle/gems/tins-1.20.2/lib/tins/date_time_dummy.rb +0 -51
  3931. data/vendor/bundle/gems/tins-1.20.2/lib/tins/deep_const_get.rb +0 -42
  3932. data/vendor/bundle/gems/tins-1.20.2/lib/tins/deep_dup.rb +0 -11
  3933. data/vendor/bundle/gems/tins-1.20.2/lib/tins/dslkit.rb +0 -636
  3934. data/vendor/bundle/gems/tins-1.20.2/lib/tins/duration.rb +0 -87
  3935. data/vendor/bundle/gems/tins-1.20.2/lib/tins/expose.rb +0 -27
  3936. data/vendor/bundle/gems/tins-1.20.2/lib/tins/extract_last_argument_options.rb +0 -14
  3937. data/vendor/bundle/gems/tins-1.20.2/lib/tins/file_binary.rb +0 -83
  3938. data/vendor/bundle/gems/tins-1.20.2/lib/tins/find.rb +0 -149
  3939. data/vendor/bundle/gems/tins-1.20.2/lib/tins/generator.rb +0 -68
  3940. data/vendor/bundle/gems/tins-1.20.2/lib/tins/go.rb +0 -96
  3941. data/vendor/bundle/gems/tins-1.20.2/lib/tins/hash_symbolize_keys_recursive.rb +0 -27
  3942. data/vendor/bundle/gems/tins-1.20.2/lib/tins/hash_union.rb +0 -15
  3943. data/vendor/bundle/gems/tins-1.20.2/lib/tins/if_predicate.rb +0 -7
  3944. data/vendor/bundle/gems/tins-1.20.2/lib/tins/implement.rb +0 -40
  3945. data/vendor/bundle/gems/tins-1.20.2/lib/tins/limited.rb +0 -38
  3946. data/vendor/bundle/gems/tins-1.20.2/lib/tins/lines_file.rb +0 -123
  3947. data/vendor/bundle/gems/tins-1.20.2/lib/tins/memoize.rb +0 -91
  3948. data/vendor/bundle/gems/tins-1.20.2/lib/tins/method_description.rb +0 -143
  3949. data/vendor/bundle/gems/tins-1.20.2/lib/tins/minimize.rb +0 -55
  3950. data/vendor/bundle/gems/tins-1.20.2/lib/tins/module_group.rb +0 -13
  3951. data/vendor/bundle/gems/tins-1.20.2/lib/tins/named_set.rb +0 -12
  3952. data/vendor/bundle/gems/tins-1.20.2/lib/tins/null.rb +0 -99
  3953. data/vendor/bundle/gems/tins-1.20.2/lib/tins/once.rb +0 -25
  3954. data/vendor/bundle/gems/tins-1.20.2/lib/tins/p.rb +0 -23
  3955. data/vendor/bundle/gems/tins-1.20.2/lib/tins/partial_application.rb +0 -31
  3956. data/vendor/bundle/gems/tins-1.20.2/lib/tins/proc_compose.rb +0 -15
  3957. data/vendor/bundle/gems/tins-1.20.2/lib/tins/proc_prelude.rb +0 -73
  3958. data/vendor/bundle/gems/tins-1.20.2/lib/tins/range_plus.rb +0 -9
  3959. data/vendor/bundle/gems/tins-1.20.2/lib/tins/require_maybe.rb +0 -9
  3960. data/vendor/bundle/gems/tins-1.20.2/lib/tins/responding.rb +0 -19
  3961. data/vendor/bundle/gems/tins-1.20.2/lib/tins/secure_write.rb +0 -27
  3962. data/vendor/bundle/gems/tins-1.20.2/lib/tins/sexy_singleton.rb +0 -39
  3963. data/vendor/bundle/gems/tins-1.20.2/lib/tins/string_byte_order_mark.rb +0 -20
  3964. data/vendor/bundle/gems/tins-1.20.2/lib/tins/string_camelize.rb +0 -16
  3965. data/vendor/bundle/gems/tins-1.20.2/lib/tins/string_underscore.rb +0 -15
  3966. data/vendor/bundle/gems/tins-1.20.2/lib/tins/string_version.rb +0 -104
  3967. data/vendor/bundle/gems/tins-1.20.2/lib/tins/subhash.rb +0 -42
  3968. data/vendor/bundle/gems/tins-1.20.2/lib/tins/temp_io.rb +0 -26
  3969. data/vendor/bundle/gems/tins-1.20.2/lib/tins/temp_io_enum.rb +0 -26
  3970. data/vendor/bundle/gems/tins-1.20.2/lib/tins/terminal.rb +0 -42
  3971. data/vendor/bundle/gems/tins-1.20.2/lib/tins/thread_local.rb +0 -57
  3972. data/vendor/bundle/gems/tins-1.20.2/lib/tins/time_dummy.rb +0 -57
  3973. data/vendor/bundle/gems/tins-1.20.2/lib/tins/to.rb +0 -8
  3974. data/vendor/bundle/gems/tins-1.20.2/lib/tins/to_proc.rb +0 -12
  3975. data/vendor/bundle/gems/tins-1.20.2/lib/tins/token.rb +0 -36
  3976. data/vendor/bundle/gems/tins-1.20.2/lib/tins/uniq_by.rb +0 -10
  3977. data/vendor/bundle/gems/tins-1.20.2/lib/tins/unit.rb +0 -179
  3978. data/vendor/bundle/gems/tins-1.20.2/lib/tins/version.rb +0 -8
  3979. data/vendor/bundle/gems/tins-1.20.2/lib/tins/write.rb +0 -19
  3980. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt.rb +0 -45
  3981. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/annotate.rb +0 -5
  3982. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/ask_and_send.rb +0 -7
  3983. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/attempt.rb +0 -7
  3984. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/blank.rb +0 -67
  3985. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/case_predicate.rb +0 -8
  3986. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/complete.rb +0 -7
  3987. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/concern.rb +0 -20
  3988. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/count_by.rb +0 -11
  3989. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/date_dummy.rb +0 -7
  3990. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/date_time_dummy.rb +0 -7
  3991. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/deep_const_get.rb +0 -7
  3992. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/deep_dup.rb +0 -7
  3993. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/dslkit.rb +0 -22
  3994. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/expose.rb +0 -5
  3995. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/extract_last_argument_options.rb +0 -7
  3996. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/file_binary.rb +0 -7
  3997. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/full.rb +0 -39
  3998. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/hash_symbolize_keys_recursive.rb +0 -7
  3999. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/hash_union.rb +0 -11
  4000. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/if_predicate.rb +0 -7
  4001. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/implement.rb +0 -5
  4002. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/irb.rb +0 -23
  4003. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/method_description.rb +0 -23
  4004. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/named.rb +0 -23
  4005. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/null.rb +0 -9
  4006. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/p.rb +0 -7
  4007. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/partial_application.rb +0 -11
  4008. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/proc_compose.rb +0 -7
  4009. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/proc_prelude.rb +0 -7
  4010. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/range_plus.rb +0 -12
  4011. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/require_maybe.rb +0 -7
  4012. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/responding.rb +0 -7
  4013. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/secure_write.rb +0 -11
  4014. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/sexy_singleton.rb +0 -3
  4015. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/string.rb +0 -6
  4016. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/string_byte_order_mark.rb +0 -7
  4017. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/string_camelize.rb +0 -6
  4018. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/string_underscore.rb +0 -6
  4019. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/string_version.rb +0 -7
  4020. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/subhash.rb +0 -11
  4021. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/temp_io.rb +0 -5
  4022. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/time_dummy.rb +0 -7
  4023. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/time_freezer.rb +0 -15
  4024. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/to.rb +0 -5
  4025. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/uniq_by.rb +0 -15
  4026. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/write.rb +0 -11
  4027. data/vendor/bundle/gems/tins-1.20.2/tests/annotate_test.rb +0 -68
  4028. data/vendor/bundle/gems/tins-1.20.2/tests/ask_and_send_test.rb +0 -46
  4029. data/vendor/bundle/gems/tins-1.20.2/tests/attempt_test.rb +0 -109
  4030. data/vendor/bundle/gems/tins-1.20.2/tests/bijection_test.rb +0 -19
  4031. data/vendor/bundle/gems/tins-1.20.2/tests/blank_full_test.rb +0 -77
  4032. data/vendor/bundle/gems/tins-1.20.2/tests/case_predicate_test.rb +0 -29
  4033. data/vendor/bundle/gems/tins-1.20.2/tests/concern_test.rb +0 -35
  4034. data/vendor/bundle/gems/tins-1.20.2/tests/count_by_test.rb +0 -17
  4035. data/vendor/bundle/gems/tins-1.20.2/tests/date_dummy_test.rb +0 -31
  4036. data/vendor/bundle/gems/tins-1.20.2/tests/date_time_dummy_test.rb +0 -31
  4037. data/vendor/bundle/gems/tins-1.20.2/tests/deep_const_get_test.rb +0 -37
  4038. data/vendor/bundle/gems/tins-1.20.2/tests/deep_dup_test.rb +0 -20
  4039. data/vendor/bundle/gems/tins-1.20.2/tests/delegate_test.rb +0 -49
  4040. data/vendor/bundle/gems/tins-1.20.2/tests/dslkit_test.rb +0 -314
  4041. data/vendor/bundle/gems/tins-1.20.2/tests/duration_test.rb +0 -73
  4042. data/vendor/bundle/gems/tins-1.20.2/tests/dynamic_scope_test.rb +0 -31
  4043. data/vendor/bundle/gems/tins-1.20.2/tests/expose_test.rb +0 -43
  4044. data/vendor/bundle/gems/tins-1.20.2/tests/extract_last_argument_options_test.rb +0 -30
  4045. data/vendor/bundle/gems/tins-1.20.2/tests/file_binary_test.rb +0 -65
  4046. data/vendor/bundle/gems/tins-1.20.2/tests/find_test.rb +0 -135
  4047. data/vendor/bundle/gems/tins-1.20.2/tests/from_module_test.rb +0 -61
  4048. data/vendor/bundle/gems/tins-1.20.2/tests/generator_test.rb +0 -47
  4049. data/vendor/bundle/gems/tins-1.20.2/tests/go_test.rb +0 -80
  4050. data/vendor/bundle/gems/tins-1.20.2/tests/hash_symbolize_keys_recursive_test.rb +0 -24
  4051. data/vendor/bundle/gems/tins-1.20.2/tests/hash_union_test.rb +0 -42
  4052. data/vendor/bundle/gems/tins-1.20.2/tests/if_predicate_test.rb +0 -12
  4053. data/vendor/bundle/gems/tins-1.20.2/tests/implement_test.rb +0 -75
  4054. data/vendor/bundle/gems/tins-1.20.2/tests/limited_test.rb +0 -21
  4055. data/vendor/bundle/gems/tins-1.20.2/tests/lines_file_test.rb +0 -82
  4056. data/vendor/bundle/gems/tins-1.20.2/tests/memoize_test.rb +0 -115
  4057. data/vendor/bundle/gems/tins-1.20.2/tests/method_description_test.rb +0 -104
  4058. data/vendor/bundle/gems/tins-1.20.2/tests/minimize_test.rb +0 -54
  4059. data/vendor/bundle/gems/tins-1.20.2/tests/module_group_test.rb +0 -29
  4060. data/vendor/bundle/gems/tins-1.20.2/tests/named_set_test.rb +0 -18
  4061. data/vendor/bundle/gems/tins-1.20.2/tests/named_test.rb +0 -30
  4062. data/vendor/bundle/gems/tins-1.20.2/tests/null_test.rb +0 -64
  4063. data/vendor/bundle/gems/tins-1.20.2/tests/p_test.rb +0 -14
  4064. data/vendor/bundle/gems/tins-1.20.2/tests/partial_application_test.rb +0 -30
  4065. data/vendor/bundle/gems/tins-1.20.2/tests/proc_compose_test.rb +0 -21
  4066. data/vendor/bundle/gems/tins-1.20.2/tests/proc_prelude_test.rb +0 -81
  4067. data/vendor/bundle/gems/tins-1.20.2/tests/range_plus_test.rb +0 -14
  4068. data/vendor/bundle/gems/tins-1.20.2/tests/require_maybe_test.rb +0 -24
  4069. data/vendor/bundle/gems/tins-1.20.2/tests/responding_test.rb +0 -24
  4070. data/vendor/bundle/gems/tins-1.20.2/tests/rotate_test.rb +0 -65
  4071. data/vendor/bundle/gems/tins-1.20.2/tests/scope_test.rb +0 -31
  4072. data/vendor/bundle/gems/tins-1.20.2/tests/secure_write_test.rb +0 -42
  4073. data/vendor/bundle/gems/tins-1.20.2/tests/sexy_singleton_test.rb +0 -16
  4074. data/vendor/bundle/gems/tins-1.20.2/tests/string_byte_order_mark_test.rb +0 -40
  4075. data/vendor/bundle/gems/tins-1.20.2/tests/string_camelize_test.rb +0 -21
  4076. data/vendor/bundle/gems/tins-1.20.2/tests/string_underscore_test.rb +0 -11
  4077. data/vendor/bundle/gems/tins-1.20.2/tests/string_version_test.rb +0 -60
  4078. data/vendor/bundle/gems/tins-1.20.2/tests/subhash_test.rb +0 -37
  4079. data/vendor/bundle/gems/tins-1.20.2/tests/temp_io_test.rb +0 -51
  4080. data/vendor/bundle/gems/tins-1.20.2/tests/test_helper.rb +0 -11
  4081. data/vendor/bundle/gems/tins-1.20.2/tests/time_dummy_test.rb +0 -31
  4082. data/vendor/bundle/gems/tins-1.20.2/tests/time_freezer_test.rb +0 -45
  4083. data/vendor/bundle/gems/tins-1.20.2/tests/to_test.rb +0 -32
  4084. data/vendor/bundle/gems/tins-1.20.2/tests/token_test.rb +0 -38
  4085. data/vendor/bundle/gems/tins-1.20.2/tests/uniq_by_test.rb +0 -31
  4086. data/vendor/bundle/gems/tins-1.20.2/tests/unit_test.rb +0 -61
  4087. data/vendor/bundle/gems/tins-1.20.2/tins.gemspec +0 -41
  4088. data/vendor/bundle/gems/xpath-3.2.0/README.md +0 -78
  4089. data/vendor/bundle/gems/xpath-3.2.0/lib/xpath.rb +0 -18
  4090. data/vendor/bundle/gems/xpath-3.2.0/lib/xpath/dsl.rb +0 -174
  4091. data/vendor/bundle/gems/xpath-3.2.0/lib/xpath/expression.rb +0 -22
  4092. data/vendor/bundle/gems/xpath-3.2.0/lib/xpath/literal.rb +0 -10
  4093. data/vendor/bundle/gems/xpath-3.2.0/lib/xpath/renderer.rb +0 -126
  4094. data/vendor/bundle/gems/xpath-3.2.0/lib/xpath/union.rb +0 -31
  4095. data/vendor/bundle/gems/xpath-3.2.0/lib/xpath/version.rb +0 -5
  4096. data/vendor/bundle/gems/xpath-3.2.0/spec/fixtures/form.html +0 -201
  4097. data/vendor/bundle/gems/xpath-3.2.0/spec/fixtures/simple.html +0 -53
  4098. data/vendor/bundle/gems/xpath-3.2.0/spec/fixtures/stuff.html +0 -54
  4099. data/vendor/bundle/gems/xpath-3.2.0/spec/spec_helper.rb +0 -8
  4100. data/vendor/bundle/gems/xpath-3.2.0/spec/union_spec.rb +0 -63
  4101. data/vendor/bundle/gems/xpath-3.2.0/spec/xpath_spec.rb +0 -562
  4102. data/vendor/bundle/specifications/addressable-2.5.2.gemspec +0 -39
  4103. data/vendor/bundle/specifications/capybara-3.15.0.gemspec +0 -101
  4104. data/vendor/bundle/specifications/childprocess-0.9.0.gemspec +0 -44
  4105. data/vendor/bundle/specifications/coveralls-0.8.22.gemspec +0 -50
  4106. data/vendor/bundle/specifications/diff-lcs-1.3.gemspec +0 -61
  4107. data/vendor/bundle/specifications/docile-1.3.1.gemspec +0 -45
  4108. data/vendor/bundle/specifications/emot-0.0.4.gemspec +0 -44
  4109. data/vendor/bundle/specifications/faraday-0.15.4.gemspec +0 -32
  4110. data/vendor/bundle/specifications/fastimage-2.1.5.gemspec +0 -45
  4111. data/vendor/bundle/specifications/ffi-1.10.0.gemspec +0 -49
  4112. data/vendor/bundle/specifications/hikidoc-0.1.0.gemspec +0 -37
  4113. data/vendor/bundle/specifications/jasmine-2.99.0.gemspec +0 -59
  4114. data/vendor/bundle/specifications/jasmine-core-2.99.2.gemspec +0 -41
  4115. data/vendor/bundle/specifications/json-2.2.0.gemspec +0 -0
  4116. data/vendor/bundle/specifications/launchy-2.4.3.gemspec +0 -45
  4117. data/vendor/bundle/specifications/mail-2.7.1.gemspec +0 -50
  4118. data/vendor/bundle/specifications/mime-types-3.2.2.gemspec +0 -84
  4119. data/vendor/bundle/specifications/mime-types-data-3.2018.0812.gemspec +0 -60
  4120. data/vendor/bundle/specifications/mini_mime-1.0.1.gemspec +0 -39
  4121. data/vendor/bundle/specifications/mini_portile2-2.4.0.gemspec +0 -48
  4122. data/vendor/bundle/specifications/multipart-post-2.0.0.gemspec +0 -21
  4123. data/vendor/bundle/specifications/nokogiri-1.10.2.gemspec +0 -80
  4124. data/vendor/bundle/specifications/octokit-4.13.0.gemspec +0 -36
  4125. data/vendor/bundle/specifications/phantomjs-2.1.1.0.gemspec +0 -44
  4126. data/vendor/bundle/specifications/pit-0.0.7.gemspec +0 -21
  4127. data/vendor/bundle/specifications/power_assert-1.1.4.gemspec +0 -54
  4128. data/vendor/bundle/specifications/public_suffix-3.0.3.gemspec +0 -41
  4129. data/vendor/bundle/specifications/rack-2.0.6.gemspec +0 -42
  4130. data/vendor/bundle/specifications/rack-test-1.1.0.gemspec +0 -54
  4131. data/vendor/bundle/specifications/racksh-1.0.0.gemspec +0 -35
  4132. data/vendor/bundle/specifications/rake-12.3.2.gemspec +0 -49
  4133. data/vendor/bundle/specifications/redcarpet-3.4.0.gemspec +0 -44
  4134. data/vendor/bundle/specifications/regexp_parser-1.3.0.gemspec +0 -23
  4135. data/vendor/bundle/specifications/rspec-3.8.0.gemspec +0 -42
  4136. data/vendor/bundle/specifications/rspec-core-3.8.0.gemspec +0 -62
  4137. data/vendor/bundle/specifications/rspec-expectations-3.8.2.gemspec +0 -50
  4138. data/vendor/bundle/specifications/rspec-mocks-3.8.0.gemspec +0 -50
  4139. data/vendor/bundle/specifications/rspec-support-3.8.0.gemspec +0 -41
  4140. data/vendor/bundle/specifications/rubyzip-1.2.2.gemspec +0 -44
  4141. data/vendor/bundle/specifications/sawyer-0.8.1.gemspec +0 -34
  4142. data/vendor/bundle/specifications/selenium-webdriver-3.141.0.gemspec +0 -52
  4143. data/vendor/bundle/specifications/sequel-5.18.0.gemspec +0 -53
  4144. data/vendor/bundle/specifications/simplecov-0.16.1.gemspec +0 -42
  4145. data/vendor/bundle/specifications/simplecov-html-0.10.2.gemspec +0 -33
  4146. data/vendor/bundle/specifications/sqlite3-1.4.0.gemspec +0 -60
  4147. data/vendor/bundle/specifications/term-ansicolor-1.7.1.gemspec +0 -46
  4148. data/vendor/bundle/specifications/test-unit-3.3.1.gemspec +0 -48
  4149. data/vendor/bundle/specifications/thor-0.19.4.gemspec +0 -35
  4150. data/vendor/bundle/specifications/tins-1.20.2.gemspec +0 -42
  4151. data/vendor/bundle/specifications/xpath-3.2.0.gemspec +0 -46
@@ -1,59 +0,0 @@
1
- # frozen-string-literal: true
2
- #
3
- # The thread_local_timezones extension allows you to set a per-thread timezone that
4
- # will override the default global timezone while the thread is executing. The
5
- # main use case is for web applications that execute each request in its own thread,
6
- # and want to set the timezones based on the request.
7
- #
8
- # To load the extension:
9
- #
10
- # Sequel.extension :thread_local_timezones
11
- #
12
- # The most common example is having the database always store time in
13
- # UTC, but have the application deal with the timezone of the current
14
- # user. That can be done with:
15
- #
16
- # Sequel.database_timezone = :utc
17
- # # In each thread:
18
- # Sequel.thread_application_timezone = current_user.timezone
19
- #
20
- # This extension is designed to work with the named_timezones extension.
21
- #
22
- # This extension adds the thread_application_timezone=, thread_database_timezone=,
23
- # and thread_typecast_timezone= methods to the Sequel module. It overrides
24
- # the application_timezone, database_timezone, and typecast_timezone
25
- # methods to check the related thread local timezone first, and use it if present.
26
- # If the related thread local timezone is not present, it falls back to the
27
- # default global timezone.
28
- #
29
- # There is one special case of note. If you have a default global timezone
30
- # and you want to have a nil thread local timezone, you have to set the thread
31
- # local value to :nil instead of nil:
32
- #
33
- # Sequel.application_timezone = :utc
34
- # Sequel.thread_application_timezone = nil
35
- # Sequel.application_timezone # => :utc
36
- # Sequel.thread_application_timezone = :nil
37
- # Sequel.application_timezone # => nil
38
- #
39
- # Related module: Sequel::ThreadLocalTimezones
40
-
41
- #
42
- module Sequel
43
- module ThreadLocalTimezones
44
- %w'application database typecast'.each do |t|
45
- class_eval("def thread_#{t}_timezone=(tz); Thread.current[:#{t}_timezone] = convert_timezone_setter_arg(tz); end", __FILE__, __LINE__)
46
- class_eval(<<END, __FILE__, __LINE__ + 1)
47
- def #{t}_timezone
48
- if tz = Thread.current[:#{t}_timezone]
49
- tz unless tz == :nil
50
- else
51
- super
52
- end
53
- end
54
- END
55
- end
56
- end
57
-
58
- extend ThreadLocalTimezones
59
- end
@@ -1,158 +0,0 @@
1
- # frozen-string-literal: true
2
- #
3
- # This adds a <tt>Sequel::Dataset#to_dot</tt> method. The +to_dot+ method
4
- # returns a string that can be processed by graphviz's +dot+ program in
5
- # order to get a visualization of the dataset. Basically, it shows a version
6
- # of the dataset's abstract syntax tree.
7
- #
8
- # To load the extension:
9
- #
10
- # Sequel.extension :to_dot
11
- #
12
- # Related module: Sequel::ToDot
13
-
14
- #
15
- module Sequel
16
- class ToDot
17
- module DatasetMethods
18
- # Return a string that can be processed by the +dot+ program (included
19
- # with graphviz) in order to see a visualization of the dataset's
20
- # abstract syntax tree.
21
- def to_dot
22
- ToDot.output(self)
23
- end
24
- end
25
-
26
- # The option keys that should be included in the dot output.
27
- TO_DOT_OPTIONS = [:with, :distinct, :select, :from, :join, :where, :group, :having, :compounds, :order, :limit, :offset, :lock].freeze
28
-
29
- # Given a +Dataset+, return a string in +dot+ format that will
30
- # generate a visualization of the dataset.
31
- def self.output(ds)
32
- new(ds).output
33
- end
34
-
35
- # Given a +Dataset+, parse the internal structure to generate
36
- # a dataset visualization.
37
- def initialize(ds)
38
- @i = 0
39
- @stack = [@i]
40
- @dot = ["digraph G {", "0 [label=\"self\"];"]
41
- v(ds, "")
42
- @dot << "}"
43
- end
44
-
45
- # Output the dataset visualization as a string in +dot+ format.
46
- def output
47
- @dot.join("\n")
48
- end
49
-
50
- private
51
-
52
- # Add an entry to the +dot+ output with the given label. If +j+
53
- # is given, it is used directly as the node or transition. Otherwise
54
- # a node is created for the current object.
55
- def dot(label, j=nil)
56
- @dot << "#{j||@i} [label=#{label.to_s.inspect}];"
57
- end
58
-
59
- # Recursive method that parses all of Sequel's internal datastructures,
60
- # adding the appropriate nodes and transitions to the internal +dot+
61
- # structure.
62
- def v(e, l)
63
- @i += 1
64
- dot(l, "#{@stack.last} -> #{@i}") if l
65
- @stack.push(@i)
66
- case e
67
- when LiteralString
68
- dot "Sequel.lit(#{e.to_s.inspect})"
69
- when Symbol, Numeric, String, Class, TrueClass, FalseClass, NilClass
70
- dot e.inspect
71
- when Array
72
- dot "Array"
73
- e.each_with_index do |val, j|
74
- v(val, j)
75
- end
76
- when Hash
77
- dot "Hash"
78
- e.each do |k, val|
79
- v(val, k)
80
- end
81
- when SQL::ComplexExpression
82
- dot "ComplexExpression: #{e.op}"
83
- e.args.each_with_index do |val, j|
84
- v(val, j)
85
- end
86
- when SQL::Identifier
87
- dot "Identifier"
88
- v(e.value, :value)
89
- when SQL::QualifiedIdentifier
90
- dot "QualifiedIdentifier"
91
- v(e.table, :table)
92
- v(e.column, :column)
93
- when SQL::OrderedExpression
94
- dot "OrderedExpression: #{e.descending ? :DESC : :ASC}#{" NULLS #{e.nulls.to_s.upcase}" if e.nulls}"
95
- v(e.expression, :expression)
96
- when SQL::AliasedExpression
97
- dot "AliasedExpression"
98
- v(e.expression, :expression)
99
- v(e.alias, :alias)
100
- v(e.columns, :columns) if e.columns
101
- when SQL::CaseExpression
102
- dot "CaseExpression"
103
- v(e.expression, :expression) if e.expression
104
- v(e.conditions, :conditions)
105
- v(e.default, :default)
106
- when SQL::Cast
107
- dot "Cast"
108
- v(e.expr, :expr)
109
- v(e.type, :type)
110
- when SQL::Function
111
- dot "Function: #{e.name}"
112
- e.args.each_with_index do |val, j|
113
- v(val, j)
114
- end
115
- v(e.args, :args)
116
- v(e.opts, :opts)
117
- when SQL::Subscript
118
- dot "Subscript"
119
- v(e.f, :f)
120
- v(e.sub, :sub)
121
- when SQL::Window
122
- dot "Window"
123
- v(e.opts, :opts)
124
- when SQL::PlaceholderLiteralString
125
- str = e.str
126
- str = "(#{str})" if e.parens
127
- dot "PlaceholderLiteralString: #{str.inspect}"
128
- v(e.args, :args)
129
- when SQL::JoinClause
130
- str = "#{e.join_type.to_s.upcase} JOIN".dup
131
- if e.is_a?(SQL::JoinOnClause)
132
- str << " ON"
133
- elsif e.is_a?(SQL::JoinUsingClause)
134
- str << " USING"
135
- end
136
- dot str
137
- v(e.table_expr, :table)
138
- if e.is_a?(SQL::JoinOnClause)
139
- v(e.on, :on)
140
- elsif e.is_a?(SQL::JoinUsingClause)
141
- v(e.using, :using)
142
- end
143
- when Dataset
144
- dot "Dataset"
145
- TO_DOT_OPTIONS.each do |k|
146
- if val = e.opts[k]
147
- v(val, k.to_s)
148
- end
149
- end
150
- else
151
- dot "Unhandled: #{e.inspect}"
152
- end
153
- @stack.pop
154
- end
155
- end
156
-
157
- Dataset.register_extension(:to_dot, ToDot::DatasetMethods)
158
- end
@@ -1,44 +0,0 @@
1
- # frozen-string-literal: true
2
- #
3
- # These modifies virtual row blocks so that you can pass a block
4
- # when calling a method to change the behavior. It only exists
5
- # for backwards compatibility with previous Sequel versions, and
6
- # is not recommended for new applications.
7
- #
8
- # To load the extension:
9
- #
10
- # Sequel.extension :virtual_row_method_block
11
-
12
- #
13
- module Sequel
14
- module SQL
15
- class VirtualRow < BasicObject
16
- include(Module.new do
17
- # Handle blocks passed to methods and change the behavior.
18
- def method_missing(m, *args, &block)
19
- if block
20
- if args.empty?
21
- Function.new(m)
22
- else
23
- case args.shift
24
- when :*
25
- Function.new(m, *args).*
26
- when :distinct
27
- Function.new(m, *args).distinct
28
- when :over
29
- opts = args.shift || OPTS
30
- f = Function.new(m, *::Kernel.Array(opts[:args]))
31
- f = f.* if opts[:*]
32
- f.over(opts)
33
- else
34
- Kernel.raise(Error, 'unsupported VirtualRow method argument used with block')
35
- end
36
- end
37
- else
38
- super
39
- end
40
- end
41
- end)
42
- end
43
- end
44
- end
@@ -1,83 +0,0 @@
1
- # frozen-string-literal: true
2
-
3
- require_relative 'core'
4
-
5
- module Sequel
6
- # <tt>Sequel::Model</tt> is an object relational mapper built on top of Sequel core. Each
7
- # model class is backed by a dataset instance, and many dataset methods can be
8
- # called directly on the class. Model datasets return rows as model instances,
9
- # which are wrappers around the underlying hash that allow easily updating or
10
- # deleting the individual row.
11
- #
12
- # <tt>Sequel::Model</tt> is built completely out of plugins. Plugins can override any class,
13
- # instance, or dataset method defined by a previous plugin and call super to get the default
14
- # behavior. By default, <tt>Sequel::Model</tt> loads two plugins, <tt>Sequel::Model</tt>
15
- # (which is itself a plugin) for the base support, and <tt>Sequel::Model::Associations</tt>
16
- # for the associations support.
17
- #
18
- # You can set the +SEQUEL_NO_ASSOCIATIONS+ constant or environment variable to
19
- # make Sequel not load the associations plugin by default.
20
- class Model
21
- OPTS = Sequel::OPTS
22
-
23
- # Empty instance methods to create that the user can override.
24
- # Just like any other method defined by Sequel, if you override one of these, you should
25
- # call +super+ to get the default behavior (while empty by default, they are often overridden
26
- # by plugins). See the {"Model Hooks" guide}[rdoc-ref:doc/model_hooks.rdoc] for
27
- # more detail on hooks.
28
- HOOKS = [
29
- :after_create,
30
- :after_destroy,
31
- :after_save,
32
- :after_update,
33
- :after_validation,
34
- :before_create,
35
- :before_destroy,
36
- :before_save,
37
- :before_update,
38
- :before_validation
39
- ].freeze
40
-
41
- @cache_anonymous_models = true
42
- @db = nil
43
- @db_schema = nil
44
- @dataset = nil
45
- @dataset_method_modules = []
46
- @default_set_fields_options = {}
47
- @overridable_methods_module = nil
48
- @fast_pk_lookup_sql = nil
49
- @fast_instance_delete_sql = nil
50
- @plugins = []
51
- @primary_key = :id
52
- @raise_on_save_failure = true
53
- @raise_on_typecast_failure = false
54
- @require_modification = nil
55
- @require_valid_table = true
56
- @restrict_primary_key = true
57
- @setter_methods = nil
58
- @simple_pk = nil
59
- @simple_table = nil
60
- @strict_param_setting = true
61
- @typecast_empty_string_to_nil = true
62
- @typecast_on_assignment = true
63
- @use_transactions = true
64
-
65
- require_relative "model/default_inflections"
66
- require_relative "model/inflections"
67
- require_relative "model/plugins"
68
- require_relative "model/dataset_module"
69
- require_relative "model/base"
70
- require_relative "model/exceptions"
71
- require_relative "model/errors"
72
- if !defined?(::SEQUEL_NO_ASSOCIATIONS) && !ENV.has_key?('SEQUEL_NO_ASSOCIATIONS')
73
- require_relative 'model/associations'
74
- plugin Model::Associations
75
- end
76
-
77
- def_Model(::Sequel)
78
-
79
- # The setter methods (methods ending with =) that are never allowed
80
- # to be called automatically via +set+/+update+/+new+/etc..
81
- RESTRICTED_SETTER_METHODS = instance_methods.map(&:to_s).select{|l| l.end_with?('=')}.freeze
82
- end
83
- end
@@ -1,3735 +0,0 @@
1
- # frozen-string-literal: true
2
-
3
- module Sequel
4
- class Model
5
- # Associations are used in order to specify relationships between model classes
6
- # that reflect relations between tables in the database using foreign keys.
7
- module Associations
8
- # Map of association type symbols to association reflection classes.
9
- ASSOCIATION_TYPES = {}
10
-
11
- # Set an empty association reflection hash in the model
12
- def self.apply(model)
13
- model.instance_exec do
14
- @association_reflections = {}
15
- @autoreloading_associations = {}
16
- @cache_associations = true
17
- @default_eager_limit_strategy = true
18
- @default_association_options = {}
19
- @default_association_type_options = {}
20
- @dataset_module_class = DatasetModule
21
- end
22
- end
23
-
24
- # The dataset module to use for classes using the associations plugin.
25
- class DatasetModule < Model::DatasetModule
26
- def_dataset_caching_method(self, :eager)
27
- end
28
-
29
- # AssociationReflection is a Hash subclass that keeps information on Sequel::Model associations. It
30
- # provides methods to reduce internal code duplication. It should not
31
- # be instantiated by the user.
32
- class AssociationReflection < Hash
33
- include Sequel::Inflections
34
-
35
- # Name symbol for the _add internal association method
36
- def _add_method
37
- self[:_add_method]
38
- end
39
-
40
- # Name symbol for the _remove_all internal association method
41
- def _remove_all_method
42
- self[:_remove_all_method]
43
- end
44
-
45
- # Name symbol for the _remove internal association method
46
- def _remove_method
47
- self[:_remove_method]
48
- end
49
-
50
- # Name symbol for the _setter association method
51
- def _setter_method
52
- self[:_setter_method]
53
- end
54
-
55
- # Name symbol for the add association method
56
- def add_method
57
- self[:add_method]
58
- end
59
-
60
- # Name symbol for association method, the same as the name of the association.
61
- def association_method
62
- self[:name]
63
- end
64
-
65
- # The class associated to the current model class via this association
66
- def associated_class
67
- cached_fetch(:class) do
68
- begin
69
- constantize(self[:class_name])
70
- rescue NameError => e
71
- raise NameError, "#{e.message} (this happened when attempting to find the associated class for #{inspect})", e.backtrace
72
- end
73
- end
74
- end
75
-
76
- # The dataset associated via this association, with the non-instance specific
77
- # changes already applied. This will be a joined dataset if the association
78
- # requires joining tables.
79
- def associated_dataset
80
- cached_fetch(:_dataset){apply_dataset_changes(_associated_dataset)}
81
- end
82
-
83
- # Apply all non-instance specific changes to the given dataset and return it.
84
- def apply_dataset_changes(ds)
85
- ds = ds.with_extend(AssociationDatasetMethods).clone(:association_reflection => self)
86
- if exts = self[:reverse_extend]
87
- ds = ds.with_extend(*exts)
88
- end
89
- ds = ds.select(*select) if select
90
- if c = self[:conditions]
91
- ds = (c.is_a?(Array) && !Sequel.condition_specifier?(c)) ? ds.where(*c) : ds.where(c)
92
- end
93
- ds = ds.order(*self[:order]) if self[:order]
94
- ds = ds.limit(*self[:limit]) if self[:limit]
95
- ds = ds.limit(1).skip_limit_check if limit_to_single_row?
96
- ds = ds.eager(self[:eager]) if self[:eager]
97
- ds = ds.distinct if self[:distinct]
98
- ds
99
- end
100
-
101
- # Apply all non-instance specific changes and the eager_block option to the given
102
- # dataset and return it.
103
- def apply_eager_dataset_changes(ds)
104
- ds = apply_dataset_changes(ds)
105
- if block = self[:eager_block]
106
- ds = block.call(ds)
107
- end
108
- ds
109
- end
110
-
111
- # Apply the eager graph limit strategy to the dataset to graph into the current dataset, or return
112
- # the dataset unmodified if no SQL limit strategy is needed.
113
- def apply_eager_graph_limit_strategy(strategy, ds)
114
- case strategy
115
- when :distinct_on
116
- apply_distinct_on_eager_limit_strategy(ds.order_prepend(*self[:order]))
117
- when :window_function
118
- apply_window_function_eager_limit_strategy(ds.order_prepend(*self[:order])).select(*ds.columns)
119
- else
120
- ds
121
- end
122
- end
123
-
124
- # Apply an eager limit strategy to the dataset, or return the dataset
125
- # unmodified if it doesn't need an eager limit strategy.
126
- def apply_eager_limit_strategy(ds, strategy=eager_limit_strategy, limit_and_offset=limit_and_offset())
127
- case strategy
128
- when :distinct_on
129
- apply_distinct_on_eager_limit_strategy(ds)
130
- when :window_function
131
- apply_window_function_eager_limit_strategy(ds, limit_and_offset)
132
- else
133
- ds
134
- end
135
- end
136
-
137
- # Use DISTINCT ON and ORDER BY clauses to limit the results to the first record with matching keys.
138
- def apply_distinct_on_eager_limit_strategy(ds)
139
- keys = predicate_key
140
- ds.distinct(*keys).order_prepend(*keys)
141
- end
142
-
143
- # Use a window function to limit the results of the eager loading dataset.
144
- def apply_window_function_eager_limit_strategy(ds, limit_and_offset=limit_and_offset())
145
- rn = ds.row_number_column
146
- limit, offset = limit_and_offset
147
- ds = ds.unordered.select_append{|o| o.row_number.function.over(:partition=>predicate_key, :order=>ds.opts[:order]).as(rn)}.from_self
148
- ds = ds.order(rn) if ds.db.database_type == :mysql
149
- ds = if !returns_array?
150
- ds.where(rn => offset ? offset+1 : 1)
151
- elsif offset
152
- offset += 1
153
- if limit
154
- ds.where(rn => (offset...(offset+limit)))
155
- else
156
- ds.where{SQL::Identifier.new(rn) >= offset}
157
- end
158
- else
159
- ds.where{SQL::Identifier.new(rn) <= limit}
160
- end
161
- end
162
-
163
- # If the ruby eager limit strategy is being used, slice the array using the slice
164
- # range to return the object(s) at the correct offset/limit.
165
- def apply_ruby_eager_limit_strategy(rows, limit_and_offset = limit_and_offset())
166
- name = self[:name]
167
- if returns_array?
168
- range = slice_range(limit_and_offset)
169
- rows.each{|o| o.associations[name] = o.associations[name][range] || []}
170
- elsif sr = slice_range(limit_and_offset)
171
- offset = sr.begin
172
- rows.each{|o| o.associations[name] = o.associations[name][offset]}
173
- end
174
- end
175
-
176
- # Whether the associations cache should use an array when storing the
177
- # associated records during eager loading.
178
- def assign_singular?
179
- !returns_array?
180
- end
181
-
182
- # Whether this association can have associated objects, given the current
183
- # object. Should be false if obj cannot have associated objects because
184
- # the necessary key columns are NULL.
185
- def can_have_associated_objects?(obj)
186
- true
187
- end
188
-
189
- # Whether you are able to clone from the given association type to the current
190
- # association type, true by default only if the types match.
191
- def cloneable?(ref)
192
- ref[:type] == self[:type]
193
- end
194
-
195
- # Name symbol for the dataset association method
196
- def dataset_method
197
- self[:dataset_method]
198
- end
199
-
200
- # Whether the dataset needs a primary key to function, true by default.
201
- def dataset_need_primary_key?
202
- true
203
- end
204
-
205
- # Return the symbol used for the row number column if the window function
206
- # eager limit strategy is being used, or nil otherwise.
207
- def delete_row_number_column(ds=associated_dataset)
208
- if eager_limit_strategy == :window_function
209
- ds.row_number_column
210
- end
211
- end
212
-
213
- # Return an dataset that will load the appropriate associated objects for
214
- # the given object using this association.
215
- def association_dataset_for(object)
216
- condition = if can_have_associated_objects?(object)
217
- predicate_keys.zip(predicate_key_values(object))
218
- else
219
- false
220
- end
221
-
222
- associated_dataset.where(condition)
223
- end
224
-
225
- ASSOCIATION_DATASET_PROC = proc{|r| r.association_dataset_for(self)}
226
- # Proc used to create the association dataset method.
227
- def association_dataset_proc
228
- ASSOCIATION_DATASET_PROC
229
- end
230
-
231
- # The eager_graph limit strategy to use for this dataset
232
- def eager_graph_limit_strategy(strategy)
233
- if self[:limit] || !returns_array?
234
- strategy = strategy[self[:name]] if strategy.is_a?(Hash)
235
- case strategy
236
- when true
237
- true_eager_graph_limit_strategy
238
- when Symbol
239
- strategy
240
- else
241
- if returns_array? || offset
242
- :ruby
243
- end
244
- end
245
- end
246
- end
247
-
248
- # The eager limit strategy to use for this dataset.
249
- def eager_limit_strategy
250
- cached_fetch(:_eager_limit_strategy) do
251
- if self[:limit] || !returns_array?
252
- case s = cached_fetch(:eager_limit_strategy){default_eager_limit_strategy}
253
- when true
254
- true_eager_limit_strategy
255
- else
256
- s
257
- end
258
- end
259
- end
260
- end
261
-
262
- # Eager load the associated objects using the hash of eager options,
263
- # yielding each row to the block.
264
- def eager_load_results(eo, &block)
265
- rows = eo[:rows]
266
- initialize_association_cache(rows) unless eo[:initialize_rows] == false
267
- if eo[:id_map]
268
- ids = eo[:id_map].keys
269
- return ids if ids.empty?
270
- end
271
- strategy = eager_limit_strategy
272
- cascade = eo[:associations]
273
- eager_limit = nil
274
-
275
- if eo[:eager_block] || eo[:loader] == false
276
- ds = eager_loading_dataset(eo)
277
-
278
- strategy = ds.opts[:eager_limit_strategy] || strategy
279
-
280
- eager_limit =
281
- if el = ds.opts[:eager_limit]
282
- raise Error, "The :eager_limit dataset option is not supported for associations returning a single record" unless returns_array?
283
- strategy ||= true_eager_graph_limit_strategy
284
- if el.is_a?(Array)
285
- el
286
- else
287
- [el, nil]
288
- end
289
- else
290
- limit_and_offset
291
- end
292
-
293
- strategy = true_eager_graph_limit_strategy if strategy == :union
294
- # Correlated subqueries are not supported for regular eager loading
295
- strategy = :ruby if strategy == :correlated_subquery
296
- strategy = nil if strategy == :ruby && assign_singular?
297
- objects = apply_eager_limit_strategy(ds, strategy, eager_limit).all
298
- elsif strategy == :union
299
- objects = []
300
- ds = associated_dataset
301
- loader = union_eager_loader
302
- joiner = " UNION ALL "
303
- ids.each_slice(subqueries_per_union).each do |slice|
304
- objects.concat(ds.with_sql(slice.map{|k| loader.sql(*k)}.join(joiner)).to_a)
305
- end
306
- ds = ds.eager(cascade) if cascade
307
- ds.send(:post_load, objects)
308
- else
309
- loader = placeholder_eager_loader
310
- loader = loader.with_dataset{|dataset| dataset.eager(cascade)} if cascade
311
- objects = loader.all(ids)
312
- end
313
-
314
- objects.each(&block)
315
- if strategy == :ruby
316
- apply_ruby_eager_limit_strategy(rows, eager_limit || limit_and_offset)
317
- end
318
- end
319
-
320
- # The key to use for the key hash when eager loading
321
- def eager_loader_key
322
- self[:eager_loader_key]
323
- end
324
-
325
- # By default associations do not need to select a key in an associated table
326
- # to eagerly load.
327
- def eager_loading_use_associated_key?
328
- false
329
- end
330
-
331
- # Whether to eagerly graph a lazy dataset, true by default. If this
332
- # is false, the association won't respect the :eager_graph option
333
- # when loading the association for a single record.
334
- def eager_graph_lazy_dataset?
335
- true
336
- end
337
-
338
- # Whether additional conditions should be added when using the filter
339
- # by associations support.
340
- def filter_by_associations_add_conditions?
341
- self[:conditions] || self[:eager_block] || self[:limit]
342
- end
343
-
344
- # The expression to use for the additional conditions to be added for
345
- # the filter by association support, when the association itself is
346
- # filtered. Works by using a subquery to test that the objects passed
347
- # also meet the association filter criteria.
348
- def filter_by_associations_conditions_expression(obj)
349
- ds = filter_by_associations_conditions_dataset.where(filter_by_associations_conditions_subquery_conditions(obj))
350
- {filter_by_associations_conditions_key=>ds}
351
- end
352
-
353
- # Finalize the association by first attempting to populate the thread-safe cache,
354
- # and then transfering the thread-safe cache value to the association itself,
355
- # so that a mutex is not needed to get the value.
356
- def finalize
357
- return unless cache = self[:cache]
358
-
359
- finalize_settings.each do |meth, key|
360
- next if has_key?(key)
361
-
362
- # Allow calling private methods to make sure caching is done appropriately
363
- send(meth)
364
- self[key] = cache.delete(key) if cache.has_key?(key)
365
- end
366
-
367
- nil
368
- end
369
-
370
- # Map of methods to cache keys used for finalizing associations.
371
- FINALIZE_SETTINGS = {
372
- :associated_class=>:class,
373
- :associated_dataset=>:_dataset,
374
- :associated_eager_dataset=>:associated_eager_dataset,
375
- :eager_limit_strategy=>:_eager_limit_strategy,
376
- :filter_by_associations_conditions_dataset=>:filter_by_associations_conditions_dataset,
377
- :placeholder_loader=>:placeholder_loader,
378
- :predicate_key=>:predicate_key,
379
- :predicate_keys=>:predicate_keys,
380
- :reciprocal=>:reciprocal,
381
- }.freeze
382
- def finalize_settings
383
- FINALIZE_SETTINGS
384
- end
385
-
386
- # Whether to handle silent modification failure when adding/removing
387
- # associated records, false by default.
388
- def handle_silent_modification_failure?
389
- false
390
- end
391
-
392
- # Initialize the associations cache for the current association for the given objects.
393
- def initialize_association_cache(objects)
394
- name = self[:name]
395
- if assign_singular?
396
- objects.each{|object| object.associations[name] = nil}
397
- else
398
- objects.each{|object| object.associations[name] = []}
399
- end
400
- end
401
-
402
- # Show which type of reflection this is, and a guess at what code was used to create the
403
- # association.
404
- def inspect
405
- o = self[:orig_opts].dup
406
- o.delete(:class)
407
- o.delete(:class_name)
408
- o.delete(:block) unless o[:block]
409
- o[:class] = self[:orig_class] if self[:orig_class]
410
-
411
- "#<#{self.class} #{self[:model]}.#{self[:type]} #{self[:name].inspect}#{", #{o.inspect[1...-1]}" unless o.empty?}>"
412
- end
413
-
414
- # The limit and offset for this association (returned as a two element array).
415
- def limit_and_offset
416
- if (v = self[:limit]).is_a?(Array)
417
- v
418
- else
419
- [v, nil]
420
- end
421
- end
422
-
423
- # Whether the associated object needs a primary key to be added/removed,
424
- # false by default.
425
- def need_associated_primary_key?
426
- false
427
- end
428
-
429
- # A placeholder literalizer that can be used to lazily load the association. If
430
- # one can't be used, returns nil.
431
- def placeholder_loader
432
- if use_placeholder_loader?
433
- cached_fetch(:placeholder_loader) do
434
- Sequel::Dataset::PlaceholderLiteralizer.loader(associated_dataset) do |pl, ds|
435
- ds.where(Sequel.&(*predicate_keys.map{|k| SQL::BooleanExpression.new(:'=', k, pl.arg)}))
436
- end
437
- end
438
- end
439
- end
440
-
441
- # The keys to use for loading of the regular dataset, as an array.
442
- def predicate_keys
443
- cached_fetch(:predicate_keys){Array(predicate_key)}
444
- end
445
-
446
- # The values that predicate_keys should match for objects to be associated.
447
- def predicate_key_values(object)
448
- predicate_key_methods.map{|k| object.get_column_value(k)}
449
- end
450
-
451
- # Qualify +col+ with the given table name.
452
- def qualify(table, col)
453
- transform(col) do |k|
454
- case k
455
- when Symbol, SQL::Identifier
456
- SQL::QualifiedIdentifier.new(table, k)
457
- else
458
- Sequel::Qualifier.new(table).transform(k)
459
- end
460
- end
461
- end
462
-
463
- # Qualify col with the associated model's table name.
464
- def qualify_assoc(col)
465
- qualify(associated_class.table_name, col)
466
- end
467
-
468
- # Qualify col with the current model's table name.
469
- def qualify_cur(col)
470
- qualify(self[:model].table_name, col)
471
- end
472
-
473
- # Returns the reciprocal association variable, if one exists. The reciprocal
474
- # association is the association in the associated class that is the opposite
475
- # of the current association. For example, Album.many_to_one :artist and
476
- # Artist.one_to_many :albums are reciprocal associations. This information is
477
- # to populate reciprocal associations. For example, when you do this_artist.add_album(album)
478
- # it sets album.artist to this_artist.
479
- def reciprocal
480
- cached_fetch(:reciprocal) do
481
- possible_recips = []
482
-
483
- associated_class.all_association_reflections.each do |assoc_reflect|
484
- if reciprocal_association?(assoc_reflect)
485
- possible_recips << assoc_reflect
486
- end
487
- end
488
-
489
- if possible_recips.length == 1
490
- cached_set(:reciprocal_type, possible_recips.first[:type]) if ambiguous_reciprocal_type?
491
- possible_recips.first[:name]
492
- end
493
- end
494
- end
495
-
496
- # Whether the reciprocal of this association returns an array of objects instead of a single object,
497
- # true by default.
498
- def reciprocal_array?
499
- true
500
- end
501
-
502
- # Name symbol for the remove_all_ association method
503
- def remove_all_method
504
- self[:remove_all_method]
505
- end
506
-
507
- # Whether associated objects need to be removed from the association before
508
- # being destroyed in order to preserve referential integrity.
509
- def remove_before_destroy?
510
- true
511
- end
512
-
513
- # Name symbol for the remove_ association method
514
- def remove_method
515
- self[:remove_method]
516
- end
517
-
518
- # Whether to check that an object to be disassociated is already associated to this object, false by default.
519
- def remove_should_check_existing?
520
- false
521
- end
522
-
523
- # Whether this association returns an array of objects instead of a single object,
524
- # true by default.
525
- def returns_array?
526
- true
527
- end
528
-
529
- # The columns to select when loading the association.
530
- def select
531
- self[:select]
532
- end
533
-
534
- # Whether to set the reciprocal association to self when loading associated
535
- # records, false by default.
536
- def set_reciprocal_to_self?
537
- false
538
- end
539
-
540
- # Name symbol for the setter association method
541
- def setter_method
542
- self[:setter_method]
543
- end
544
-
545
- # The range used for slicing when using the :ruby eager limit strategy.
546
- def slice_range(limit_and_offset = limit_and_offset())
547
- limit, offset = limit_and_offset
548
- if limit || offset
549
- (offset||0)..(limit ? (offset||0)+limit-1 : -1)
550
- end
551
- end
552
-
553
- private
554
-
555
- # If the key exists in the reflection hash, return it.
556
- # If the key doesn't exist and association reflections are uncached, then yield to get the value.
557
- # If the key doesn't exist and association reflection are cached, check the cache and return
558
- # the value if present, or yield to get the value, cache the value, and return it.
559
- def cached_fetch(key)
560
- fetch(key) do
561
- return yield unless h = self[:cache]
562
- Sequel.synchronize{return h[key] if h.has_key?(key)}
563
- value = yield
564
- Sequel.synchronize{h[key] = value}
565
- end
566
- end
567
-
568
- # Cache the value at the given key if caching.
569
- def cached_set(key, value)
570
- return unless h = self[:cache]
571
- Sequel.synchronize{h[key] = value}
572
- end
573
-
574
- # The base dataset used for the association, before any order/conditions
575
- # options have been applied.
576
- def _associated_dataset
577
- associated_class.dataset
578
- end
579
-
580
- # Whether for the reciprocal type for the given association cannot be
581
- # known in advantage, false by default.
582
- def ambiguous_reciprocal_type?
583
- false
584
- end
585
-
586
- # Apply a limit strategy to the given dataset so that filter by
587
- # associations works with a limited dataset.
588
- def apply_filter_by_associations_limit_strategy(ds)
589
- case filter_by_associations_limit_strategy
590
- when :distinct_on
591
- apply_filter_by_associations_distinct_on_limit_strategy(ds)
592
- when :window_function
593
- apply_filter_by_associations_window_function_limit_strategy(ds)
594
- else
595
- ds
596
- end
597
- end
598
-
599
- # Apply a distinct on eager limit strategy using IN with a subquery
600
- # that uses DISTINCT ON to ensure only the first matching record for
601
- # each key is included.
602
- def apply_filter_by_associations_distinct_on_limit_strategy(ds)
603
- k = filter_by_associations_limit_key
604
- ds.where(k=>apply_distinct_on_eager_limit_strategy(associated_eager_dataset.select(*k)))
605
- end
606
-
607
- # Apply a distinct on eager limit strategy using IN with a subquery
608
- # that uses a filter on the row_number window function to ensure
609
- # that only rows inside the limit are returned.
610
- def apply_filter_by_associations_window_function_limit_strategy(ds)
611
- ds.where(filter_by_associations_limit_key=>apply_window_function_eager_limit_strategy(associated_eager_dataset.select(*filter_by_associations_limit_alias_key)).select(*filter_by_associations_limit_aliases))
612
- end
613
-
614
- # The associated_dataset with the eager_block callback already applied.
615
- def associated_eager_dataset
616
- cached_fetch(:associated_eager_dataset) do
617
- ds = associated_dataset.unlimited
618
- if block = self[:eager_block]
619
- ds = block.call(ds)
620
- end
621
- ds
622
- end
623
- end
624
-
625
- # The dataset to use for eager loading associated objects for multiple current objects,
626
- # given the hash passed to the eager loader.
627
- def eager_loading_dataset(eo=OPTS)
628
- ds = eo[:dataset] || associated_eager_dataset
629
- if id_map = eo[:id_map]
630
- ds = ds.where(eager_loading_predicate_condition(id_map.keys))
631
- end
632
- if associations = eo[:associations]
633
- ds = ds.eager(associations)
634
- end
635
- if block = eo[:eager_block]
636
- orig_ds = ds
637
- ds = block.call(ds)
638
- end
639
- if eager_loading_use_associated_key?
640
- ds = if ds.opts[:eager_graph] && !orig_ds.opts[:eager_graph]
641
- block.call(orig_ds.select_append(*associated_key_array))
642
- else
643
- ds.select_append(*associated_key_array)
644
- end
645
- end
646
- if self[:eager_graph]
647
- raise(Error, "cannot eagerly load a #{self[:type]} association that uses :eager_graph") if eager_loading_use_associated_key?
648
- ds = ds.eager_graph(self[:eager_graph])
649
- end
650
- ds
651
- end
652
-
653
- # The default eager limit strategy to use for this association
654
- def default_eager_limit_strategy
655
- self[:model].default_eager_limit_strategy || :ruby
656
- end
657
-
658
- # The predicate condition to use for the eager_loader.
659
- def eager_loading_predicate_condition(keys)
660
- {predicate_key=>keys}
661
- end
662
-
663
- # Add conditions to the dataset to not include NULL values for
664
- # the associated keys, and select those keys.
665
- def filter_by_associations_add_conditions_dataset_filter(ds)
666
- k = filter_by_associations_conditions_associated_keys
667
- ds.select(*k).where(Sequel.negate(k.zip([])))
668
- end
669
-
670
- # The conditions to add to the filter by associations conditions
671
- # subquery to restrict it to to the object(s) that was used as the
672
- # filter value.
673
- def filter_by_associations_conditions_subquery_conditions(obj)
674
- key = qualify(associated_class.table_name, associated_class.primary_key)
675
- case obj
676
- when Array
677
- {key=>obj.map(&:pk)}
678
- when Sequel::Dataset
679
- {key=>obj.select(*Array(qualify(associated_class.table_name, associated_class.primary_key)))}
680
- else
681
- Array(key).zip(Array(obj.pk))
682
- end
683
- end
684
-
685
- # The base dataset to use for the filter by associations conditions
686
- # subquery, regardless of the objects that are passed in as filter
687
- # values.
688
- def filter_by_associations_conditions_dataset
689
- cached_fetch(:filter_by_associations_conditions_dataset) do
690
- ds = associated_eager_dataset.unordered
691
- ds = filter_by_associations_add_conditions_dataset_filter(ds)
692
- ds = apply_filter_by_associations_limit_strategy(ds)
693
- ds
694
- end
695
- end
696
-
697
- # The strategy to use to filter by a limited association
698
- def filter_by_associations_limit_strategy
699
- v = fetch(:filter_limit_strategy, self[:eager_limit_strategy])
700
- if v || self[:limit] || !returns_array?
701
- case v ||= self[:model].default_eager_limit_strategy
702
- when true, :union, :ruby
703
- # Can't use a union or ruby-based strategy for filtering by associations, switch to default eager graph limit
704
- # strategy.
705
- true_eager_graph_limit_strategy
706
- when Symbol
707
- v
708
- end
709
- end
710
- end
711
-
712
- # Whether to limit the associated dataset to a single row.
713
- def limit_to_single_row?
714
- !returns_array?
715
- end
716
-
717
- # Any offset to use for this association (or nil if there is no offset).
718
- def offset
719
- limit_and_offset.last
720
- end
721
-
722
- # A placeholder literalizer used to speed up eager loading.
723
- def placeholder_eager_loader
724
- cached_fetch(:placeholder_eager_loader) do
725
- Sequel::Dataset::PlaceholderLiteralizer.loader(associated_dataset) do |pl, ds|
726
- apply_eager_limit_strategy(eager_loading_dataset.where(predicate_key=>pl.arg), eager_limit_strategy)
727
- end
728
- end
729
- end
730
-
731
- # The reciprocal type as an array, should be overridden in reflection subclasses that
732
- # have ambiguous reciprocal types.
733
- def possible_reciprocal_types
734
- [reciprocal_type]
735
- end
736
-
737
- # Whether the given association reflection is possible reciprocal
738
- # association for the current association reflection.
739
- def reciprocal_association?(assoc_reflect)
740
- possible_reciprocal_types.include?(assoc_reflect[:type]) &&
741
- (begin; assoc_reflect.associated_class; rescue NameError; end) == self[:model] &&
742
- assoc_reflect[:conditions].nil? &&
743
- assoc_reflect[:block].nil?
744
- end
745
-
746
- # The number of subqueries to use in each union query, used to eagerly load
747
- # limited associations. Defaults to 40, the optimal number depends on the
748
- # latency between the database and the application.
749
- def subqueries_per_union
750
- self[:subqueries_per_union] || 40
751
- end
752
-
753
- # If +s+ is an array, map +s+ over the block. Otherwise, just call the
754
- # block with +s+.
755
- def transform(s, &block)
756
- s.is_a?(Array) ? s.map(&block) : (yield s)
757
- end
758
-
759
- # What eager limit strategy should be used when true is given as the value,
760
- # defaults to UNION as that is the fastest strategy if the appropriate keys are indexed.
761
- def true_eager_limit_strategy
762
- if self[:eager_graph] || (offset && !associated_dataset.supports_offsets_in_correlated_subqueries?)
763
- # An SQL-based approach won't work if you are also eager graphing,
764
- # so use a ruby based approach in that case.
765
- :ruby
766
- else
767
- :union
768
- end
769
- end
770
-
771
- # The eager_graph limit strategy used when true is given as the value, choosing the
772
- # best strategy based on what the database supports.
773
- def true_eager_graph_limit_strategy
774
- if associated_class.dataset.supports_window_functions?
775
- :window_function
776
- else
777
- :ruby
778
- end
779
- end
780
-
781
- # A placeholder literalizer used to speed up the creation of union queries when eager
782
- # loading a limited association.
783
- def union_eager_loader
784
- cached_fetch(:union_eager_loader) do
785
- Sequel::Dataset::PlaceholderLiteralizer.loader(associated_dataset) do |pl, ds|
786
- ds = self[:eager_block].call(ds) if self[:eager_block]
787
- keys = predicate_keys
788
- ds = ds.where(keys.map{pl.arg}.zip(keys))
789
- if eager_loading_use_associated_key?
790
- ds = ds.select_append(*associated_key_array)
791
- end
792
- ds.from_self
793
- end
794
- end
795
- end
796
-
797
- # Whether the placeholder loader can be used to load the association.
798
- def use_placeholder_loader?
799
- !self[:instance_specific] && !self[:eager_graph]
800
- end
801
- end
802
-
803
- class ManyToOneAssociationReflection < AssociationReflection
804
- ASSOCIATION_TYPES[:many_to_one] = self
805
-
806
- # many_to_one associations can only have associated objects if none of
807
- # the :keys options have a nil value.
808
- def can_have_associated_objects?(obj)
809
- !self[:keys].any?{|k| obj.get_column_value(k).nil?}
810
- end
811
-
812
- # Whether the dataset needs a primary key to function, false for many_to_one associations.
813
- def dataset_need_primary_key?
814
- false
815
- end
816
-
817
- # Default foreign key name symbol for foreign key in current model's table that points to
818
- # the given association's table's primary key.
819
- def default_key
820
- :"#{self[:name]}_id"
821
- end
822
-
823
- # Whether to eagerly graph a lazy dataset, true for many_to_one associations
824
- # only if the key is nil.
825
- def eager_graph_lazy_dataset?
826
- self[:key].nil?
827
- end
828
-
829
- # many_to_one associations don't need an eager_graph limit strategy
830
- def eager_graph_limit_strategy(_)
831
- nil
832
- end
833
-
834
- # many_to_one associations don't need an eager limit strategy
835
- def eager_limit_strategy
836
- nil
837
- end
838
-
839
- # many_to_one associations don't need a filter by associations limit strategy
840
- def filter_by_associations_limit_strategy
841
- nil
842
- end
843
-
844
- FINALIZE_SETTINGS = superclass::FINALIZE_SETTINGS.merge(
845
- :primary_key=>:primary_key,
846
- :primary_keys=>:primary_keys,
847
- :primary_key_method=>:primary_key_method,
848
- :primary_key_methods=>:primary_key_methods,
849
- :qualified_primary_key=>:qualified_primary_key,
850
- :reciprocal_type=>:reciprocal_type
851
- ).freeze
852
- def finalize_settings
853
- FINALIZE_SETTINGS
854
- end
855
-
856
- # The expression to use on the left hand side of the IN lookup when eager loading
857
- def predicate_key
858
- cached_fetch(:predicate_key){qualified_primary_key}
859
- end
860
-
861
- # The column(s) in the associated table that the key in the current table references (either a symbol or an array).
862
- def primary_key
863
- cached_fetch(:primary_key){associated_class.primary_key || raise(Error, "no primary key specified for #{associated_class.inspect}")}
864
- end
865
-
866
- # The columns in the associated table that the key in the current table references (always an array).
867
- def primary_keys
868
- cached_fetch(:primary_keys){Array(primary_key)}
869
- end
870
- alias associated_object_keys primary_keys
871
-
872
- # The method symbol or array of method symbols to call on the associated object
873
- # to get the value to use for the foreign keys.
874
- def primary_key_method
875
- cached_fetch(:primary_key_method){primary_key}
876
- end
877
-
878
- # The array of method symbols to call on the associated object
879
- # to get the value to use for the foreign keys.
880
- def primary_key_methods
881
- cached_fetch(:primary_key_methods){Array(primary_key_method)}
882
- end
883
-
884
- # #primary_key qualified by the associated table
885
- def qualified_primary_key
886
- cached_fetch(:qualified_primary_key){self[:qualify] == false ? primary_key : qualify_assoc(primary_key)}
887
- end
888
-
889
- # True only if the reciprocal is a one_to_many association.
890
- def reciprocal_array?
891
- !set_reciprocal_to_self?
892
- end
893
-
894
- # Whether this association returns an array of objects instead of a single object,
895
- # false for a many_to_one association.
896
- def returns_array?
897
- false
898
- end
899
-
900
- # True only if the reciprocal is a one_to_one association.
901
- def set_reciprocal_to_self?
902
- reciprocal
903
- reciprocal_type == :one_to_one
904
- end
905
-
906
- private
907
-
908
- # Reciprocals of many_to_one associations could be either one_to_many or one_to_one,
909
- # and which is not known in advance.
910
- def ambiguous_reciprocal_type?
911
- true
912
- end
913
-
914
- def filter_by_associations_conditions_associated_keys
915
- qualify(associated_class.table_name, primary_keys)
916
- end
917
-
918
- def filter_by_associations_conditions_key
919
- qualify(self[:model].table_name, self[:key_column])
920
- end
921
-
922
- # many_to_one associations do not need to be limited to a single row if they
923
- # explicitly do not have a key.
924
- def limit_to_single_row?
925
- super && self[:key]
926
- end
927
-
928
- def predicate_key_methods
929
- self[:keys]
930
- end
931
-
932
- # The reciprocal type of a many_to_one association is either
933
- # a one_to_many or a one_to_one association.
934
- def possible_reciprocal_types
935
- [:one_to_many, :one_to_one]
936
- end
937
-
938
- # Whether the given association reflection is possible reciprocal
939
- def reciprocal_association?(assoc_reflect)
940
- super && self[:keys] == assoc_reflect[:keys] && primary_key == assoc_reflect.primary_key
941
- end
942
-
943
- # The reciprocal type of a many_to_one association is either
944
- # a one_to_many or a one_to_one association, look in the associated class
945
- # to try to figure out which.
946
- def reciprocal_type
947
- cached_fetch(:reciprocal_type) do
948
- possible_recips = []
949
-
950
- associated_class.all_association_reflections.each do |assoc_reflect|
951
- if reciprocal_association?(assoc_reflect)
952
- possible_recips << assoc_reflect
953
- end
954
- end
955
-
956
- if possible_recips.length == 1
957
- possible_recips.first[:type]
958
- else
959
- possible_reciprocal_types
960
- end
961
- end
962
- end
963
- end
964
-
965
- class OneToManyAssociationReflection < AssociationReflection
966
- ASSOCIATION_TYPES[:one_to_many] = self
967
-
968
- # Support a correlated subquery limit strategy when using eager_graph.
969
- def apply_eager_graph_limit_strategy(strategy, ds)
970
- case strategy
971
- when :correlated_subquery
972
- apply_correlated_subquery_limit_strategy(ds)
973
- else
974
- super
975
- end
976
- end
977
-
978
- # The keys in the associated model's table related to this association
979
- def associated_object_keys
980
- self[:keys]
981
- end
982
-
983
- # one_to_many associations can only have associated objects if none of
984
- # the :keys options have a nil value.
985
- def can_have_associated_objects?(obj)
986
- !self[:primary_keys].any?{|k| obj.get_column_value(k).nil?}
987
- end
988
-
989
- # one_to_many and one_to_one associations can be clones
990
- def cloneable?(ref)
991
- ref[:type] == :one_to_many || ref[:type] == :one_to_one
992
- end
993
-
994
- # Default foreign key name symbol for key in associated table that points to
995
- # current table's primary key.
996
- def default_key
997
- :"#{underscore(demodulize(self[:model].name))}_id"
998
- end
999
-
1000
- FINALIZE_SETTINGS = superclass::FINALIZE_SETTINGS.merge(
1001
- :qualified_primary_key=>:qualified_primary_key
1002
- ).freeze
1003
- def finalize_settings
1004
- FINALIZE_SETTINGS
1005
- end
1006
-
1007
- # Handle silent failure of add/remove methods if raise_on_save_failure is false.
1008
- def handle_silent_modification_failure?
1009
- self[:raise_on_save_failure] == false
1010
- end
1011
-
1012
- # The hash key to use for the eager loading predicate (left side of IN (1, 2, 3))
1013
- def predicate_key
1014
- cached_fetch(:predicate_key){qualify_assoc(self[:key])}
1015
- end
1016
- alias qualified_key predicate_key
1017
-
1018
- # The column in the current table that the key in the associated table references.
1019
- def primary_key
1020
- self[:primary_key]
1021
- end
1022
-
1023
- # #primary_key qualified by the current table
1024
- def qualified_primary_key
1025
- cached_fetch(:qualified_primary_key){qualify_cur(primary_key)}
1026
- end
1027
-
1028
- # Whether the reciprocal of this association returns an array of objects instead of a single object,
1029
- # false for a one_to_many association.
1030
- def reciprocal_array?
1031
- false
1032
- end
1033
-
1034
- # Destroying one_to_many associated objects automatically deletes the foreign key.
1035
- def remove_before_destroy?
1036
- false
1037
- end
1038
-
1039
- # The one_to_many association needs to check that an object to be removed already is associated.
1040
- def remove_should_check_existing?
1041
- true
1042
- end
1043
-
1044
- # One to many associations set the reciprocal to self when loading associated records.
1045
- def set_reciprocal_to_self?
1046
- true
1047
- end
1048
-
1049
- private
1050
-
1051
- # Use a correlated subquery to limit the dataset. Note that this will not
1052
- # work correctly if the associated dataset uses qualified identifers in the WHERE clause,
1053
- # as they would reference the containing query instead of the subquery.
1054
- def apply_correlated_subquery_limit_strategy(ds)
1055
- table = ds.first_source_table
1056
- table_alias = ds.first_source_alias
1057
- primary_key = associated_class.primary_key
1058
- key = self[:key]
1059
- cs_alias = :t1
1060
- cs = associated_dataset.
1061
- from(Sequel.as(table, :t1)).
1062
- select(*qualify(cs_alias, primary_key)).
1063
- where(Array(qualify(cs_alias, key)).zip(Array(qualify(table_alias, key)))).
1064
- limit(*limit_and_offset)
1065
- ds.where(qualify(table_alias, primary_key)=>cs)
1066
- end
1067
-
1068
- # Support correlated subquery strategy when filtering by limited associations.
1069
- def apply_filter_by_associations_limit_strategy(ds)
1070
- case filter_by_associations_limit_strategy
1071
- when :correlated_subquery
1072
- apply_correlated_subquery_limit_strategy(ds)
1073
- else
1074
- super
1075
- end
1076
- end
1077
-
1078
- def filter_by_associations_conditions_associated_keys
1079
- qualify(associated_class.table_name, self[:keys])
1080
- end
1081
-
1082
- def filter_by_associations_conditions_key
1083
- qualify(self[:model].table_name, self[:primary_key_column])
1084
- end
1085
-
1086
- def filter_by_associations_limit_alias_key
1087
- Array(filter_by_associations_limit_key)
1088
- end
1089
-
1090
- def filter_by_associations_limit_aliases
1091
- filter_by_associations_limit_alias_key.map(&:column)
1092
- end
1093
-
1094
- def filter_by_associations_limit_key
1095
- qualify(associated_class.table_name, associated_class.primary_key)
1096
- end
1097
-
1098
- def predicate_key_methods
1099
- self[:primary_keys]
1100
- end
1101
-
1102
- def reciprocal_association?(assoc_reflect)
1103
- super && self[:keys] == assoc_reflect[:keys] && primary_key == assoc_reflect.primary_key
1104
- end
1105
-
1106
- # The reciprocal type of a one_to_many association is a many_to_one association.
1107
- def reciprocal_type
1108
- :many_to_one
1109
- end
1110
-
1111
- # Support automatic use of correlated subqueries if :ruby option is best available option,
1112
- # the database supports them, and either the associated class has a non-composite primary key
1113
- # or the database supports multiple columns in IN.
1114
- def true_eager_graph_limit_strategy
1115
- r = super
1116
- ds = associated_dataset
1117
- if r == :ruby && ds.supports_limits_in_correlated_subqueries? && (Array(associated_class.primary_key).length == 1 || ds.supports_multiple_column_in?) && (!offset || ds.supports_offsets_in_correlated_subqueries?)
1118
- :correlated_subquery
1119
- else
1120
- r
1121
- end
1122
- end
1123
- end
1124
-
1125
- # Methods that turn an association that returns multiple objects into an association that
1126
- # returns a single object.
1127
- module SingularAssociationReflection
1128
- # Singular associations do not assign singular if they are using the ruby eager limit strategy
1129
- # and have a slice range, since they need to store the array of associated objects in order to
1130
- # pick the correct one with an offset.
1131
- def assign_singular?
1132
- super && (eager_limit_strategy != :ruby || !slice_range)
1133
- end
1134
-
1135
- # Add conditions when filtering by singular associations with orders, since the
1136
- # underlying relationship is probably not one-to-one.
1137
- def filter_by_associations_add_conditions?
1138
- super || self[:order] || self[:eager_limit_strategy] || self[:filter_limit_strategy]
1139
- end
1140
-
1141
- # Make sure singular associations always have 1 as the limit
1142
- def limit_and_offset
1143
- r = super
1144
- if r.first == 1
1145
- r
1146
- else
1147
- [1, r[1]]
1148
- end
1149
- end
1150
-
1151
- # Singular associations always return a single object, not an array.
1152
- def returns_array?
1153
- false
1154
- end
1155
-
1156
- private
1157
-
1158
- # Only use a eager limit strategy by default if there is an offset or an order.
1159
- def default_eager_limit_strategy
1160
- super if self[:order] || offset
1161
- end
1162
-
1163
- # Use a strategy for filtering by associations if there is an order or an offset,
1164
- # or a specific limiting strategy has been specified.
1165
- def filter_by_associations_limit_strategy
1166
- super if self[:order] || offset || self[:eager_limit_strategy] || self[:filter_limit_strategy]
1167
- end
1168
-
1169
- # Use the DISTINCT ON eager limit strategy for true if the database supports it.
1170
- def true_eager_graph_limit_strategy
1171
- if associated_class.dataset.supports_ordered_distinct_on? && !offset
1172
- :distinct_on
1173
- else
1174
- super
1175
- end
1176
- end
1177
- end
1178
-
1179
- class OneToOneAssociationReflection < OneToManyAssociationReflection
1180
- ASSOCIATION_TYPES[:one_to_one] = self
1181
- include SingularAssociationReflection
1182
- end
1183
-
1184
- class ManyToManyAssociationReflection < AssociationReflection
1185
- ASSOCIATION_TYPES[:many_to_many] = self
1186
-
1187
- # The alias to use for the associated key when eagerly loading
1188
- def associated_key_alias
1189
- self[:left_key_alias]
1190
- end
1191
-
1192
- # Array of associated keys used when eagerly loading.
1193
- def associated_key_array
1194
- cached_fetch(:associated_key_array) do
1195
- if self[:uses_left_composite_keys]
1196
- associated_key_alias.zip(predicate_keys).map{|a, k| SQL::AliasedExpression.new(k, a)}
1197
- else
1198
- [SQL::AliasedExpression.new(predicate_key, associated_key_alias)]
1199
- end
1200
- end
1201
- end
1202
-
1203
- # The column to use for the associated key when eagerly loading
1204
- def associated_key_column
1205
- self[:left_key]
1206
- end
1207
-
1208
- # Alias of right_primary_keys
1209
- def associated_object_keys
1210
- right_primary_keys
1211
- end
1212
-
1213
- # many_to_many associations can only have associated objects if none of
1214
- # the :left_primary_keys options have a nil value.
1215
- def can_have_associated_objects?(obj)
1216
- !self[:left_primary_keys].any?{|k| obj.get_column_value(k).nil?}
1217
- end
1218
-
1219
- # one_through_one and many_to_many associations can be clones
1220
- def cloneable?(ref)
1221
- ref[:type] == :many_to_many || ref[:type] == :one_through_one
1222
- end
1223
-
1224
- # The default associated key alias(es) to use when eager loading
1225
- # associations via eager.
1226
- def default_associated_key_alias
1227
- self[:uses_left_composite_keys] ? (0...self[:left_keys].length).map{|i| :"x_foreign_key_#{i}_x"} : :x_foreign_key_x
1228
- end
1229
-
1230
- # The default eager loader used if the user doesn't override it. Extracted
1231
- # to a method so the code can be shared with the many_through_many plugin.
1232
- def default_eager_loader(eo)
1233
- h = eo[:id_map]
1234
- assign_singular = assign_singular?
1235
- delete_rn = delete_row_number_column
1236
- uses_lcks = self[:uses_left_composite_keys]
1237
- left_key_alias = self[:left_key_alias]
1238
- name = self[:name]
1239
-
1240
- self[:model].eager_load_results(self, eo) do |assoc_record|
1241
- assoc_record.values.delete(delete_rn) if delete_rn
1242
- hash_key = if uses_lcks
1243
- left_key_alias.map{|k| assoc_record.values.delete(k)}
1244
- else
1245
- assoc_record.values.delete(left_key_alias)
1246
- end
1247
- next unless objects = h[hash_key]
1248
- if assign_singular
1249
- objects.each do |object|
1250
- object.associations[name] ||= assoc_record
1251
- end
1252
- else
1253
- objects.each do |object|
1254
- object.associations[name].push(assoc_record)
1255
- end
1256
- end
1257
- end
1258
- end
1259
-
1260
- # Default name symbol for the join table.
1261
- def default_join_table
1262
- [self[:class_name], self[:model].name].map{|i| underscore(pluralize(demodulize(i)))}.sort.join('_').to_sym
1263
- end
1264
-
1265
- # Default foreign key name symbol for key in join table that points to
1266
- # current table's primary key (or :left_primary_key column).
1267
- def default_left_key
1268
- :"#{underscore(demodulize(self[:model].name))}_id"
1269
- end
1270
-
1271
- # Default foreign key name symbol for foreign key in join table that points to
1272
- # the association's table's primary key (or :right_primary_key column).
1273
- def default_right_key
1274
- :"#{singularize(self[:name])}_id"
1275
- end
1276
-
1277
- FINALIZE_SETTINGS = superclass::FINALIZE_SETTINGS.merge(
1278
- :associated_key_array=>:associated_key_array,
1279
- :qualified_right_key=>:qualified_right_key,
1280
- :join_table_source=>:join_table_source,
1281
- :join_table_alias=>:join_table_alias,
1282
- :qualified_right_primary_key=>:qualified_right_primary_key,
1283
- :right_primary_key=>:right_primary_key,
1284
- :right_primary_keys=>:right_primary_keys,
1285
- :right_primary_key_method=>:right_primary_key_method,
1286
- :right_primary_key_methods=>:right_primary_key_methods,
1287
- :select=>:select
1288
- ).freeze
1289
- def finalize_settings
1290
- FINALIZE_SETTINGS
1291
- end
1292
-
1293
- # The hash key to use for the eager loading predicate (left side of IN (1, 2, 3)).
1294
- # The left key qualified by the join table.
1295
- def predicate_key
1296
- cached_fetch(:predicate_key){qualify(join_table_alias, self[:left_key])}
1297
- end
1298
- alias qualified_left_key predicate_key
1299
-
1300
- # The right key qualified by the join table.
1301
- def qualified_right_key
1302
- cached_fetch(:qualified_right_key){qualify(join_table_alias, self[:right_key])}
1303
- end
1304
-
1305
- # many_to_many associations need to select a key in an associated table to eagerly load
1306
- def eager_loading_use_associated_key?
1307
- true
1308
- end
1309
-
1310
- # The source of the join table. This is the join table itself, unless it
1311
- # is aliased, in which case it is the unaliased part.
1312
- def join_table_source
1313
- cached_fetch(:join_table_source){split_join_table_alias[0]}
1314
- end
1315
-
1316
- # The join table itself, unless it is aliased, in which case this
1317
- # is the alias.
1318
- def join_table_alias
1319
- cached_fetch(:join_table_alias) do
1320
- s, a = split_join_table_alias
1321
- a || s
1322
- end
1323
- end
1324
- alias associated_key_table join_table_alias
1325
-
1326
- # Whether the associated object needs a primary key to be added/removed,
1327
- # true for many_to_many associations.
1328
- def need_associated_primary_key?
1329
- true
1330
- end
1331
-
1332
- # #right_primary_key qualified by the associated table
1333
- def qualified_right_primary_key
1334
- cached_fetch(:qualified_right_primary_key){qualify_assoc(right_primary_key)}
1335
- end
1336
-
1337
- # The primary key column(s) to use in the associated table (can be symbol or array).
1338
- def right_primary_key
1339
- cached_fetch(:right_primary_key){associated_class.primary_key || raise(Error, "no primary key specified for #{associated_class.inspect}")}
1340
- end
1341
-
1342
- # The primary key columns to use in the associated table (always array).
1343
- def right_primary_keys
1344
- cached_fetch(:right_primary_keys){Array(right_primary_key)}
1345
- end
1346
-
1347
- # The method symbol or array of method symbols to call on the associated objects
1348
- # to get the foreign key values for the join table.
1349
- def right_primary_key_method
1350
- cached_fetch(:right_primary_key_method){right_primary_key}
1351
- end
1352
-
1353
- # The array of method symbols to call on the associated objects
1354
- # to get the foreign key values for the join table.
1355
- def right_primary_key_methods
1356
- cached_fetch(:right_primary_key_methods){Array(right_primary_key_method)}
1357
- end
1358
-
1359
- # The columns to select when loading the association, associated_class.table_name.* by default.
1360
- def select
1361
- cached_fetch(:select){default_select}
1362
- end
1363
-
1364
- private
1365
-
1366
- def _associated_dataset
1367
- super.inner_join(self[:join_table], self[:right_keys].zip(right_primary_keys), :qualify=>:deep)
1368
- end
1369
-
1370
- # The default selection for associations that require joins. These do not use the default
1371
- # model selection unless all entries in the select are explicitly qualified identifiers, as
1372
- # other it can include unqualified columns which would be made ambiguous by joining.
1373
- def default_select
1374
- if (sel = associated_class.dataset.opts[:select]) && sel.all?{|c| selection_is_qualified?(c)}
1375
- sel
1376
- else
1377
- Sequel::SQL::ColumnAll.new(associated_class.table_name)
1378
- end
1379
- end
1380
-
1381
- def filter_by_associations_conditions_associated_keys
1382
- qualify(join_table_alias, self[:left_keys])
1383
- end
1384
-
1385
- def filter_by_associations_conditions_key
1386
- qualify(self[:model].table_name, self[:left_primary_key_column])
1387
- end
1388
-
1389
- def filter_by_associations_limit_alias_key
1390
- aliaz = 'a'
1391
- filter_by_associations_limit_key.map{|c| c.as(Sequel.identifier(aliaz = aliaz.next))}
1392
- end
1393
-
1394
- def filter_by_associations_limit_aliases
1395
- filter_by_associations_limit_alias_key.map(&:alias)
1396
- end
1397
-
1398
- def filter_by_associations_limit_key
1399
- qualify(join_table_alias, self[:left_keys]) + Array(qualify(associated_class.table_name, associated_class.primary_key))
1400
- end
1401
-
1402
- def predicate_key_methods
1403
- self[:left_primary_keys]
1404
- end
1405
-
1406
- def reciprocal_association?(assoc_reflect)
1407
- super && assoc_reflect[:left_keys] == self[:right_keys] &&
1408
- assoc_reflect[:right_keys] == self[:left_keys] &&
1409
- assoc_reflect[:join_table] == self[:join_table] &&
1410
- right_primary_keys == assoc_reflect[:left_primary_key_columns] &&
1411
- self[:left_primary_key_columns] == assoc_reflect.right_primary_keys
1412
- end
1413
-
1414
- def reciprocal_type
1415
- :many_to_many
1416
- end
1417
-
1418
- # Whether the given expression represents a qualified identifier. Used to determine if it is
1419
- # OK to use directly when joining.
1420
- def selection_is_qualified?(c)
1421
- case c
1422
- when Symbol
1423
- Sequel.split_symbol(c)[0]
1424
- when Sequel::SQL::QualifiedIdentifier
1425
- true
1426
- when Sequel::SQL::AliasedExpression
1427
- selection_is_qualified?(c.expression)
1428
- else
1429
- false
1430
- end
1431
- end
1432
-
1433
- # Split the join table into source and alias parts.
1434
- def split_join_table_alias
1435
- associated_class.dataset.split_alias(self[:join_table])
1436
- end
1437
- end
1438
-
1439
- class OneThroughOneAssociationReflection < ManyToManyAssociationReflection
1440
- ASSOCIATION_TYPES[:one_through_one] = self
1441
- include SingularAssociationReflection
1442
-
1443
- # one_through_one associations should not singularize the association name when
1444
- # creating the foreign key.
1445
- def default_right_key
1446
- :"#{self[:name]}_id"
1447
- end
1448
-
1449
- # one_through_one associations have no reciprocals
1450
- def reciprocal
1451
- nil
1452
- end
1453
- end
1454
-
1455
- # This module contains methods added to all association datasets
1456
- module AssociationDatasetMethods
1457
- # The model object that created the association dataset
1458
- def model_object
1459
- @opts[:model_object]
1460
- end
1461
-
1462
- # The association reflection related to the association dataset
1463
- def association_reflection
1464
- @opts[:association_reflection]
1465
- end
1466
-
1467
- private
1468
-
1469
- def non_sql_option?(key)
1470
- super || key == :model_object || key == :association_reflection
1471
- end
1472
- end
1473
-
1474
- # Each kind of association adds a number of instance methods to the model class which
1475
- # are specialized according to the association type and optional parameters
1476
- # given in the definition. Example:
1477
- #
1478
- # class Project < Sequel::Model
1479
- # many_to_one :portfolio
1480
- # # or: one_to_one :portfolio
1481
- # one_to_many :milestones
1482
- # # or: many_to_many :milestones
1483
- # end
1484
- #
1485
- # The project class now has the following instance methods:
1486
- # portfolio :: Returns the associated portfolio.
1487
- # portfolio=(obj) :: Sets the associated portfolio to the object,
1488
- # but the change is not persisted until you save the record (for many_to_one associations).
1489
- # portfolio_dataset :: Returns a dataset that would return the associated
1490
- # portfolio, only useful in fairly specific circumstances.
1491
- # milestones :: Returns an array of associated milestones
1492
- # add_milestone(obj) :: Associates the passed milestone with this object.
1493
- # remove_milestone(obj) :: Removes the association with the passed milestone.
1494
- # remove_all_milestones :: Removes associations with all associated milestones.
1495
- # milestones_dataset :: Returns a dataset that would return the associated
1496
- # milestones, allowing for further filtering/limiting/etc.
1497
- #
1498
- # If you want to override the behavior of the add_/remove_/remove_all_/ methods
1499
- # or the association setter method, use the :adder, :remover, :clearer, and/or :setter
1500
- # options. These options override the default behavior.
1501
- #
1502
- # By default the classes for the associations are inferred from the association
1503
- # name, so for example the Project#portfolio will return an instance of
1504
- # Portfolio, and Project#milestones will return an array of Milestone
1505
- # instances. You can use the :class option to change which class is used.
1506
- #
1507
- # Association definitions are also reflected by the class, e.g.:
1508
- #
1509
- # Project.associations
1510
- # => [:portfolio, :milestones]
1511
- # Project.association_reflection(:portfolio)
1512
- # => #<Sequel::Model::Associations::ManyToOneAssociationReflection Project.many_to_one :portfolio>
1513
- #
1514
- # Associations should not have the same names as any of the columns in the
1515
- # model's current table they reference. If you are dealing with an existing schema that
1516
- # has a column named status, you can't name the association status, you'd
1517
- # have to name it foo_status or something else. If you give an association the same name
1518
- # as a column, you will probably end up with an association that doesn't work, or a SystemStackError.
1519
- #
1520
- # For a more in depth general overview, as well as a reference guide,
1521
- # see the {Association Basics guide}[rdoc-ref:doc/association_basics.rdoc].
1522
- # For examples of advanced usage, see the {Advanced Associations guide}[rdoc-ref:doc/advanced_associations.rdoc].
1523
- module ClassMethods
1524
- # All association reflections defined for this model (default: {}).
1525
- attr_reader :association_reflections
1526
-
1527
- # Hash with column symbol keys and arrays of many_to_one
1528
- # association symbols that should be cleared when the column
1529
- # value changes.
1530
- attr_reader :autoreloading_associations
1531
-
1532
- # Whether association metadata should be cached in the association reflection. If not cached, it will be computed
1533
- # on demand. In general you only want to set this to false when using code reloading. When using code reloading,
1534
- # setting this will make sure that if an associated class is removed or modified, this class will not have a reference to
1535
- # the previous class.
1536
- attr_accessor :cache_associations
1537
-
1538
- # The default options to use for all associations. This hash is merged into the association reflection hash for
1539
- # all association reflections.
1540
- attr_accessor :default_association_options
1541
-
1542
- # The default options to use for all associations of a given type. This is a hash keyed by association type
1543
- # symbol. If there is a value for the association type symbol key, the resulting hash will be merged into the
1544
- # association reflection hash for all association reflections of that type.
1545
- attr_accessor :default_association_type_options
1546
-
1547
- # The default :eager_limit_strategy option to use for limited or offset associations (default: true, causing Sequel
1548
- # to use what it considers the most appropriate strategy).
1549
- attr_accessor :default_eager_limit_strategy
1550
-
1551
- # Array of all association reflections for this model class
1552
- def all_association_reflections
1553
- association_reflections.values
1554
- end
1555
-
1556
- # Associates a related model with the current model. The following types are
1557
- # supported:
1558
- #
1559
- # :many_to_one :: Foreign key in current model's table points to
1560
- # associated model's primary key. Each associated model object can
1561
- # be associated with more than one current model objects. Each current
1562
- # model object can be associated with only one associated model object.
1563
- # :one_to_many :: Foreign key in associated model's table points to this
1564
- # model's primary key. Each current model object can be associated with
1565
- # more than one associated model objects. Each associated model object
1566
- # can be associated with only one current model object.
1567
- # :one_through_one :: Similar to many_to_many in terms of foreign keys, but only one object
1568
- # is associated to the current object through the association.
1569
- # Provides only getter methods, no setter or modification methods.
1570
- # :one_to_one :: Similar to one_to_many in terms of foreign keys, but
1571
- # only one object is associated to the current object through the
1572
- # association. The methods created are similar to many_to_one, except
1573
- # that the one_to_one setter method saves the passed object.
1574
- # :many_to_many :: A join table is used that has a foreign key that points
1575
- # to this model's primary key and a foreign key that points to the
1576
- # associated model's primary key. Each current model object can be
1577
- # associated with many associated model objects, and each associated
1578
- # model object can be associated with many current model objects.
1579
- #
1580
- # The following options can be supplied:
1581
- # === Multiple Types
1582
- # :adder :: Proc used to define the private _add_* method for doing the database work
1583
- # to associate the given object to the current object (*_to_many assocations).
1584
- # :after_add :: Symbol, Proc, or array of both/either specifying a callback to call
1585
- # after a new item is added to the association.
1586
- # :after_load :: Symbol, Proc, or array of both/either specifying a callback to call
1587
- # after the associated record(s) have been retrieved from the database.
1588
- # :after_remove :: Symbol, Proc, or array of both/either specifying a callback to call
1589
- # after an item is removed from the association.
1590
- # :after_set :: Symbol, Proc, or array of both/either specifying a callback to call
1591
- # after an item is set using the association setter method.
1592
- # :allow_eager :: If set to false, you cannot load the association eagerly
1593
- # via eager or eager_graph
1594
- # :before_add :: Symbol, Proc, or array of both/either specifying a callback to call
1595
- # before a new item is added to the association.
1596
- # :before_remove :: Symbol, Proc, or array of both/either specifying a callback to call
1597
- # before an item is removed from the association.
1598
- # :before_set :: Symbol, Proc, or array of both/either specifying a callback to call
1599
- # before an item is set using the association setter method.
1600
- # :cartesian_product_number :: the number of joins completed by this association that could cause more
1601
- # than one row for each row in the current table (default: 0 for
1602
- # many_to_one, one_to_one, and one_through_one associations, 1
1603
- # for one_to_many and many_to_many associations).
1604
- # :class :: The associated class or its name as a string or symbol. If not
1605
- # given, uses the association's name, which is camelized (and
1606
- # singularized unless the type is :many_to_one, :one_to_one, or one_through_one). If this is specified
1607
- # as a string or symbol, you must specify the full class name (e.g. "::SomeModule::MyModel").
1608
- # :class_namespace :: If :class is given as a string or symbol, sets the default namespace in which to look for
1609
- # the class. <tt>class: 'Foo', class_namespace: 'Bar'</tt> looks for <tt>::Bar::Foo</tt>.)
1610
- # :clearer :: Proc used to define the private _remove_all_* method for doing the database work
1611
- # to remove all objects associated to the current object (*_to_many assocations).
1612
- # :clone :: Merge the current options and block into the options and block used in defining
1613
- # the given association. Can be used to DRY up a bunch of similar associations that
1614
- # all share the same options such as :class and :key, while changing the order and block used.
1615
- # :conditions :: The conditions to use to filter the association, can be any argument passed to where.
1616
- # This option is not respected when using eager_graph or association_join, unless it
1617
- # is hash or array of two element arrays. Consider also specifying the :graph_block
1618
- # option if the value for this option is not a hash or array of two element arrays
1619
- # and you plan to use this association in eager_graph or association_join.
1620
- # :dataset :: A proc that is instance_execed to get the base dataset to use (before the other
1621
- # options are applied). If the proc accepts an argument, it is passed the related
1622
- # association reflection.
1623
- # :distinct :: Use the DISTINCT clause when selecting associating object, both when
1624
- # lazy loading and eager loading via .eager (but not when using .eager_graph).
1625
- # :eager :: The associations to eagerly load via +eager+ when loading the associated object(s).
1626
- # :eager_block :: If given, use the block instead of the default block when
1627
- # eagerly loading. To not use a block when eager loading (when one is used normally),
1628
- # set to nil.
1629
- # :eager_graph :: The associations to eagerly load via +eager_graph+ when loading the associated object(s).
1630
- # many_to_many associations with this option cannot be eagerly loaded via +eager+.
1631
- # :eager_grapher :: A proc to use to implement eager loading via +eager_graph+, overriding the default.
1632
- # Takes an options hash with at least the entries :self (the receiver of the eager_graph call),
1633
- # :table_alias (the alias to use for table to graph into the association), and :implicit_qualifier
1634
- # (the alias that was used for the current table).
1635
- # Should return a copy of the dataset with the association graphed into it.
1636
- # :eager_limit_strategy :: Determines the strategy used for enforcing limits and offsets when eager loading
1637
- # associations via the +eager+ method.
1638
- # :eager_loader :: A proc to use to implement eager loading, overriding the default. Takes a single hash argument,
1639
- # with at least the keys: :rows, which is an array of current model instances, :associations,
1640
- # which is a hash of dependent associations, :self, which is the dataset doing the eager loading,
1641
- # :eager_block, which is a dynamic callback that should be called with the dataset, and :id_map,
1642
- # which is a mapping of key values to arrays of current model instances. In the proc, the
1643
- # associated records should be queried from the database and the associations cache for each
1644
- # record should be populated.
1645
- # :eager_loader_key :: A symbol for the key column to use to populate the key_hash
1646
- # for the eager loader. Can be set to nil to not populate the key_hash.
1647
- # :extend :: A module or array of modules to extend the dataset with.
1648
- # :filter_limit_strategy :: Determines the strategy used for enforcing limits and offsets when filtering by
1649
- # limited associations. Possible options are :window_function, :distinct_on, or
1650
- # :correlated_subquery depending on association type and database type.
1651
- # :graph_alias_base :: The base name to use for the table alias when eager graphing. Defaults to the name
1652
- # of the association. If the alias name has already been used in the query, Sequel will create
1653
- # a unique alias by appending a numeric suffix (e.g. alias_0, alias_1, ...) until the alias is
1654
- # unique.
1655
- # :graph_block :: The block to pass to join_table when eagerly loading
1656
- # the association via +eager_graph+.
1657
- # :graph_conditions :: The additional conditions to use on the SQL join when eagerly loading
1658
- # the association via +eager_graph+. Should be a hash or an array of two element arrays. If not
1659
- # specified, the :conditions option is used if it is a hash or array of two element arrays.
1660
- # :graph_join_type :: The type of SQL join to use when eagerly loading the association via
1661
- # eager_graph. Defaults to :left_outer.
1662
- # :graph_only_conditions :: The conditions to use on the SQL join when eagerly loading
1663
- # the association via +eager_graph+, instead of the default conditions specified by the
1664
- # foreign/primary keys. This option causes the :graph_conditions option to be ignored.
1665
- # :graph_order :: Over the order to use when using eager_graph, instead of the default order. This should be used
1666
- # in the case where :order contains an identifier qualified by the table's name, which may not match
1667
- # the alias used when eager graphing. By setting this to the unqualified identifier, it will be
1668
- # automatically qualified when using eager_graph.
1669
- # :graph_select :: A column or array of columns to select from the associated table
1670
- # when eagerly loading the association via +eager_graph+. Defaults to all
1671
- # columns in the associated table.
1672
- # :limit :: Limit the number of records to the provided value. Use
1673
- # an array with two elements for the value to specify a
1674
- # limit (first element) and an offset (second element).
1675
- # :methods_module :: The module that methods the association creates will be placed into. Defaults
1676
- # to the module containing the model's columns.
1677
- # :order :: the column(s) by which to order the association dataset. Can be a
1678
- # singular column symbol or an array of column symbols.
1679
- # :order_eager_graph :: Whether to add the association's order to the graphed dataset's order when graphing
1680
- # via +eager_graph+. Defaults to true, so set to false to disable.
1681
- # :read_only :: Do not add a setter method (for many_to_one or one_to_one associations),
1682
- # or add_/remove_/remove_all_ methods (for one_to_many and many_to_many associations).
1683
- # :reciprocal :: the symbol name of the reciprocal association,
1684
- # if it exists. By default, Sequel will try to determine it by looking at the
1685
- # associated model's assocations for a association that matches
1686
- # the current association's key(s). Set to nil to not use a reciprocal.
1687
- # :remover :: Proc used to define the private _remove_* method for doing the database work
1688
- # to remove the association between the given object and the current object (*_to_many assocations).
1689
- # :select :: the columns to select. Defaults to the associated class's table_name.* in an association
1690
- # that uses joins, which means it doesn't include the attributes from the
1691
- # join table. If you want to include the join table attributes, you can
1692
- # use this option, but beware that the join table attributes can clash with
1693
- # attributes from the model table, so you should alias any attributes that have
1694
- # the same name in both the join table and the associated table.
1695
- # :setter :: Proc used to define the private _*= method for doing the work to setup the assocation
1696
- # between the given object and the current object (*_to_one associations).
1697
- # :subqueries_per_union :: The number of subqueries to use in each UNION query, for eager
1698
- # loading limited associations using the default :union strategy.
1699
- # :validate :: Set to false to not validate when implicitly saving any associated object.
1700
- # === :many_to_one
1701
- # :key :: foreign key in current model's table that references
1702
- # associated model's primary key, as a symbol. Defaults to :"#{name}_id". Can use an
1703
- # array of symbols for a composite key association.
1704
- # :key_column :: Similar to, and usually identical to, :key, but :key refers to the model method
1705
- # to call, where :key_column refers to the underlying column. Should only be
1706
- # used if the model method differs from the foreign key column, in conjunction
1707
- # with defining a model alias method for the key column.
1708
- # :primary_key :: column in the associated table that :key option references, as a symbol.
1709
- # Defaults to the primary key of the associated table. Can use an
1710
- # array of symbols for a composite key association.
1711
- # :primary_key_method :: the method symbol or array of method symbols to call on the associated
1712
- # object to get the foreign key values. Defaults to :primary_key option.
1713
- # :qualify :: Whether to use qualified primary keys when loading the association. The default
1714
- # is true, so you must set to false to not qualify. Qualification rarely causes
1715
- # problems, but it's necessary to disable in some cases, such as when you are doing
1716
- # a JOIN USING operation on the column on Oracle.
1717
- # === :one_to_many and :one_to_one
1718
- # :key :: foreign key in associated model's table that references
1719
- # current model's primary key, as a symbol. Defaults to
1720
- # :"#{self.name.underscore}_id". Can use an
1721
- # array of symbols for a composite key association.
1722
- # :key_method :: the method symbol or array of method symbols to call on the associated
1723
- # object to get the foreign key values. Defaults to :key option.
1724
- # :primary_key :: column in the current table that :key option references, as a symbol.
1725
- # Defaults to primary key of the current table. Can use an
1726
- # array of symbols for a composite key association.
1727
- # :primary_key_column :: Similar to, and usually identical to, :primary_key, but :primary_key refers
1728
- # to the model method call, where :primary_key_column refers to the underlying column.
1729
- # Should only be used if the model method differs from the primary key column, in
1730
- # conjunction with defining a model alias method for the primary key column.
1731
- # :raise_on_save_failure :: Do not raise exceptions for hook or validation failures when saving associated
1732
- # objects in the add/remove methods (return nil instead) [one_to_many only].
1733
- # === :many_to_many and :one_through_one
1734
- # :graph_join_table_block :: The block to pass to +join_table+ for
1735
- # the join table when eagerly loading the association via +eager_graph+.
1736
- # :graph_join_table_conditions :: The additional conditions to use on the SQL join for
1737
- # the join table when eagerly loading the association via +eager_graph+.
1738
- # Should be a hash or an array of two element arrays.
1739
- # :graph_join_table_join_type :: The type of SQL join to use for the join table when eagerly
1740
- # loading the association via +eager_graph+. Defaults to the
1741
- # :graph_join_type option or :left_outer.
1742
- # :graph_join_table_only_conditions :: The conditions to use on the SQL join for the join
1743
- # table when eagerly loading the association via +eager_graph+,
1744
- # instead of the default conditions specified by the
1745
- # foreign/primary keys. This option causes the
1746
- # :graph_join_table_conditions option to be ignored.
1747
- # :join_table :: name of table that includes the foreign keys to both
1748
- # the current model and the associated model, as a symbol. Defaults to the name
1749
- # of current model and name of associated model, pluralized,
1750
- # underscored, sorted, and joined with '_'.
1751
- # :join_table_block :: proc that can be used to modify the dataset used in the add/remove/remove_all
1752
- # methods. Should accept a dataset argument and return a modified dataset if present.
1753
- # :left_key :: foreign key in join table that points to current model's
1754
- # primary key, as a symbol. Defaults to :"#{self.name.underscore}_id".
1755
- # Can use an array of symbols for a composite key association.
1756
- # :left_primary_key :: column in current table that :left_key points to, as a symbol.
1757
- # Defaults to primary key of current table. Can use an
1758
- # array of symbols for a composite key association.
1759
- # :left_primary_key_column :: Similar to, and usually identical to, :left_primary_key, but :left_primary_key refers to
1760
- # the model method to call, where :left_primary_key_column refers to the underlying column. Should only
1761
- # be used if the model method differs from the left primary key column, in conjunction
1762
- # with defining a model alias method for the left primary key column.
1763
- # :right_key :: foreign key in join table that points to associated
1764
- # model's primary key, as a symbol. Defaults to :"#{name.to_s.singularize}_id".
1765
- # Can use an array of symbols for a composite key association.
1766
- # :right_primary_key :: column in associated table that :right_key points to, as a symbol.
1767
- # Defaults to primary key of the associated table. Can use an
1768
- # array of symbols for a composite key association.
1769
- # :right_primary_key_method :: the method symbol or array of method symbols to call on the associated
1770
- # object to get the foreign key values for the join table.
1771
- # Defaults to :right_primary_key option.
1772
- # :uniq :: Adds a after_load callback that makes the array of objects unique.
1773
- def associate(type, name, opts = OPTS, &block)
1774
- raise(Error, 'invalid association type') unless assoc_class = Sequel.synchronize{ASSOCIATION_TYPES[type]}
1775
- raise(Error, 'Model.associate name argument must be a symbol') unless name.is_a?(Symbol)
1776
-
1777
- # dup early so we don't modify opts
1778
- orig_opts = opts.dup
1779
-
1780
- if opts[:clone]
1781
- cloned_assoc = association_reflection(opts[:clone])
1782
- orig_opts = cloned_assoc[:orig_opts].merge(orig_opts)
1783
- end
1784
-
1785
- opts = Hash[default_association_options]
1786
- if type_options = default_association_type_options[type]
1787
- opts.merge!(type_options)
1788
- end
1789
- opts.merge!(orig_opts)
1790
- opts.merge!(:type => type, :name => name, :cache=>({} if cache_associations), :model => self)
1791
-
1792
- opts[:block] = block if block
1793
- if !opts.has_key?(:instance_specific) && (block || orig_opts[:block] || orig_opts[:dataset])
1794
- # It's possible the association is instance specific, in that it depends on
1795
- # values other than the foreign key value. This needs to be checked for
1796
- # in certain places to disable optimizations.
1797
- opts[:instance_specific] = true
1798
- end
1799
- opts = assoc_class.new.merge!(opts)
1800
-
1801
- if opts[:clone] && !opts.cloneable?(cloned_assoc)
1802
- raise(Error, "cannot clone an association to an association of different type (association #{name} with type #{type} cloning #{opts[:clone]} with type #{cloned_assoc[:type]})")
1803
- end
1804
-
1805
- opts[:eager_block] = opts[:block] unless opts.include?(:eager_block)
1806
- opts[:graph_join_type] ||= :left_outer
1807
- opts[:order_eager_graph] = true unless opts.include?(:order_eager_graph)
1808
- conds = opts[:conditions]
1809
- opts[:graph_alias_base] ||= name
1810
- opts[:graph_conditions] = conds if !opts.include?(:graph_conditions) and Sequel.condition_specifier?(conds)
1811
- opts[:graph_conditions] = opts.fetch(:graph_conditions, []).to_a
1812
- opts[:graph_select] = Array(opts[:graph_select]) if opts[:graph_select]
1813
- [:before_add, :before_remove, :after_add, :after_remove, :after_load, :before_set, :after_set].each do |cb_type|
1814
- opts[cb_type] = Array(opts[cb_type]) if opts[cb_type]
1815
- end
1816
-
1817
- if opts[:extend]
1818
- opts[:extend] = Array(opts[:extend])
1819
- opts[:reverse_extend] = opts[:extend].reverse
1820
- end
1821
-
1822
- late_binding_class_option(opts, opts.returns_array? ? singularize(name) : name)
1823
-
1824
- # Remove :class entry if it exists and is nil, to work with cached_fetch
1825
- opts.delete(:class) unless opts[:class]
1826
-
1827
- send(:"def_#{type}", opts)
1828
- def_association_instance_methods(opts)
1829
-
1830
- orig_opts.delete(:clone)
1831
- opts[:orig_class] = orig_opts[:class] || orig_opts[:class_name]
1832
- orig_opts.merge!(:class_name=>opts[:class_name], :class=>opts[:class], :block=>opts[:block])
1833
- opts[:orig_opts] = orig_opts
1834
- # don't add to association_reflections until we are sure there are no errors
1835
- association_reflections[name] = opts
1836
- end
1837
-
1838
- # The association reflection hash for the association of the given name.
1839
- def association_reflection(name)
1840
- association_reflections[name]
1841
- end
1842
-
1843
- # Array of association name symbols
1844
- def associations
1845
- association_reflections.keys
1846
- end
1847
-
1848
- # Eager load the association with the given eager loader options.
1849
- def eager_load_results(opts, eo, &block)
1850
- opts.eager_load_results(eo, &block)
1851
- end
1852
-
1853
- # Freeze association related metadata when freezing model class.
1854
- def freeze
1855
- @association_reflections.freeze.each_value(&:freeze)
1856
- @autoreloading_associations.freeze.each_value(&:freeze)
1857
- @default_association_options.freeze
1858
- @default_association_type_options.freeze
1859
- @default_association_type_options.each_value(&:freeze)
1860
-
1861
- super
1862
- end
1863
-
1864
- # Finalize all associations such that values that are looked up
1865
- # dynamically in associated classes are set statically.
1866
- # As this modifies the associations, it must be done before
1867
- # calling freeze.
1868
- def finalize_associations
1869
- @association_reflections.each_value(&:finalize)
1870
- end
1871
-
1872
- # Shortcut for adding a many_to_many association, see #associate
1873
- def many_to_many(name, opts=OPTS, &block)
1874
- associate(:many_to_many, name, opts, &block)
1875
- end
1876
-
1877
- # Shortcut for adding a many_to_one association, see #associate
1878
- def many_to_one(name, opts=OPTS, &block)
1879
- associate(:many_to_one, name, opts, &block)
1880
- end
1881
-
1882
- # Shortcut for adding a one_through_one association, see #associate
1883
- def one_through_one(name, opts=OPTS, &block)
1884
- associate(:one_through_one, name, opts, &block)
1885
- end
1886
-
1887
- # Shortcut for adding a one_to_many association, see #associate
1888
- def one_to_many(name, opts=OPTS, &block)
1889
- associate(:one_to_many, name, opts, &block)
1890
- end
1891
-
1892
- # Shortcut for adding a one_to_one association, see #associate
1893
- def one_to_one(name, opts=OPTS, &block)
1894
- associate(:one_to_one, name, opts, &block)
1895
- end
1896
-
1897
- Plugins.inherited_instance_variables(self, :@association_reflections=>:dup, :@autoreloading_associations=>:hash_dup, :@default_association_options=>:dup, :@default_association_type_options=>:hash_dup, :@cache_associations=>nil, :@default_eager_limit_strategy=>nil)
1898
- Plugins.def_dataset_methods(self, [:eager, :eager_graph, :eager_graph_with_options, :association_join, :association_full_join, :association_inner_join, :association_left_join, :association_right_join])
1899
-
1900
- private
1901
-
1902
- # The module to use for the association's methods. Defaults to
1903
- # the overridable_methods_module.
1904
- def association_module(opts=OPTS)
1905
- opts.fetch(:methods_module, overridable_methods_module)
1906
- end
1907
-
1908
- # Add a method to the module included in the class, so the method
1909
- # can be easily overridden in the class itself while allowing for
1910
- # super to be called.
1911
- def association_module_def(name, opts=OPTS, &block)
1912
- association_module(opts).module_eval{define_method(name, &block)}
1913
- end
1914
-
1915
- # Add a private method to the module included in the class.
1916
- def association_module_private_def(name, opts=OPTS, &block)
1917
- association_module_def(name, opts, &block)
1918
- association_module(opts).send(:private, name)
1919
- end
1920
-
1921
- # Adds the association method to the association methods module.
1922
- def def_association_method(opts)
1923
- association_module_def(opts.association_method, opts) do |dynamic_opts=OPTS, &block|
1924
- load_associated_objects(opts, dynamic_opts, &block)
1925
- end
1926
- end
1927
-
1928
- # Define all of the association instance methods for this association.
1929
- def def_association_instance_methods(opts)
1930
- # Always set the method names in the association reflection, even if they
1931
- # are not used, for backwards compatibility.
1932
- opts[:dataset_method] = :"#{opts[:name]}_dataset"
1933
- if opts.returns_array?
1934
- sname = singularize(opts[:name])
1935
- opts[:_add_method] = :"_add_#{sname}"
1936
- opts[:add_method] = :"add_#{sname}"
1937
- opts[:_remove_method] = :"_remove_#{sname}"
1938
- opts[:remove_method] = :"remove_#{sname}"
1939
- opts[:_remove_all_method] = :"_remove_all_#{opts[:name]}"
1940
- opts[:remove_all_method] = :"remove_all_#{opts[:name]}"
1941
- else
1942
- opts[:_setter_method] = :"_#{opts[:name]}="
1943
- opts[:setter_method] = :"#{opts[:name]}="
1944
- end
1945
-
1946
- association_module_def(opts.dataset_method, opts){_dataset(opts)}
1947
- def_association_method(opts)
1948
-
1949
- return if opts[:read_only]
1950
-
1951
- if opts[:setter] && opts[:_setter]
1952
- # This is backwards due to backwards compatibility
1953
- association_module_private_def(opts[:_setter_method], opts, &opts[:setter])
1954
- association_module_def(opts[:setter_method], opts, &opts[:_setter])
1955
- end
1956
-
1957
- if adder = opts[:adder]
1958
- association_module_private_def(opts[:_add_method], opts, &adder)
1959
- association_module_def(opts[:add_method], opts){|o,*args| add_associated_object(opts, o, *args)}
1960
- end
1961
-
1962
- if remover = opts[:remover]
1963
- association_module_private_def(opts[:_remove_method], opts, &remover)
1964
- association_module_def(opts[:remove_method], opts){|o,*args| remove_associated_object(opts, o, *args)}
1965
- end
1966
-
1967
- if clearer = opts[:clearer]
1968
- association_module_private_def(opts[:_remove_all_method], opts, &clearer)
1969
- association_module_def(opts[:remove_all_method], opts){|*args| remove_all_associated_objects(opts, *args)}
1970
- end
1971
- end
1972
-
1973
- # Configures many_to_many and one_through_one association reflection and adds the related association methods
1974
- def def_many_to_many(opts)
1975
- one_through_one = opts[:type] == :one_through_one
1976
- left = (opts[:left_key] ||= opts.default_left_key)
1977
- lcks = opts[:left_keys] = Array(left)
1978
- right = (opts[:right_key] ||= opts.default_right_key)
1979
- rcks = opts[:right_keys] = Array(right)
1980
- left_pk = (opts[:left_primary_key] ||= self.primary_key)
1981
- opts[:eager_loader_key] = left_pk unless opts.has_key?(:eager_loader_key)
1982
- lcpks = opts[:left_primary_keys] = Array(left_pk)
1983
- lpkc = opts[:left_primary_key_column] ||= left_pk
1984
- lpkcs = opts[:left_primary_key_columns] ||= Array(lpkc)
1985
- raise(Error, "mismatched number of left keys: #{lcks.inspect} vs #{lcpks.inspect}") unless lcks.length == lcpks.length
1986
- if opts[:right_primary_key]
1987
- rcpks = Array(opts[:right_primary_key])
1988
- raise(Error, "mismatched number of right keys: #{rcks.inspect} vs #{rcpks.inspect}") unless rcks.length == rcpks.length
1989
- end
1990
- opts[:uses_left_composite_keys] = lcks.length > 1
1991
- opts[:uses_right_composite_keys] = rcks.length > 1
1992
- opts[:cartesian_product_number] ||= one_through_one ? 0 : 1
1993
- join_table = (opts[:join_table] ||= opts.default_join_table)
1994
- opts[:left_key_alias] ||= opts.default_associated_key_alias
1995
- opts[:graph_join_table_join_type] ||= opts[:graph_join_type]
1996
- if opts[:uniq]
1997
- opts[:after_load] ||= []
1998
- opts[:after_load].unshift(:array_uniq!)
1999
- end
2000
- opts[:dataset] ||= opts.association_dataset_proc
2001
- opts[:eager_loader] ||= opts.method(:default_eager_loader)
2002
-
2003
- join_type = opts[:graph_join_type]
2004
- select = opts[:graph_select]
2005
- use_only_conditions = opts.include?(:graph_only_conditions)
2006
- only_conditions = opts[:graph_only_conditions]
2007
- conditions = opts[:graph_conditions]
2008
- graph_block = opts[:graph_block]
2009
- graph_jt_conds = opts[:graph_join_table_conditions] = opts.fetch(:graph_join_table_conditions, []).to_a
2010
- use_jt_only_conditions = opts.include?(:graph_join_table_only_conditions)
2011
- jt_only_conditions = opts[:graph_join_table_only_conditions]
2012
- jt_join_type = opts[:graph_join_table_join_type]
2013
- jt_graph_block = opts[:graph_join_table_block]
2014
- opts[:eager_grapher] ||= proc do |eo|
2015
- ds = eo[:self]
2016
- egls = eo[:limit_strategy]
2017
- if egls && egls != :ruby
2018
- associated_key_array = opts.associated_key_array
2019
- orig_egds = egds = eager_graph_dataset(opts, eo)
2020
- egds = egds.
2021
- inner_join(join_table, rcks.zip(opts.right_primary_keys) + graph_jt_conds, :qualify=>:deep).
2022
- select_all(egds.first_source).
2023
- select_append(*associated_key_array)
2024
- egds = opts.apply_eager_graph_limit_strategy(egls, egds)
2025
- ds.graph(egds, associated_key_array.map(&:alias).zip(lpkcs) + conditions, :qualify=>:deep, :table_alias=>eo[:table_alias], :implicit_qualifier=>eo[:implicit_qualifier], :join_type=>eo[:join_type]||join_type, :from_self_alias=>eo[:from_self_alias], :join_only=>eo[:join_only], :select=>select||orig_egds.columns, &graph_block)
2026
- else
2027
- ds = ds.graph(join_table, use_jt_only_conditions ? jt_only_conditions : lcks.zip(lpkcs) + graph_jt_conds, :select=>false, :table_alias=>ds.unused_table_alias(join_table, [eo[:table_alias]]), :join_type=>eo[:join_type]||jt_join_type, :join_only=>eo[:join_only], :implicit_qualifier=>eo[:implicit_qualifier], :qualify=>:deep, :from_self_alias=>eo[:from_self_alias], &jt_graph_block)
2028
- ds.graph(eager_graph_dataset(opts, eo), use_only_conditions ? only_conditions : opts.right_primary_keys.zip(rcks) + conditions, :select=>select, :table_alias=>eo[:table_alias], :qualify=>:deep, :join_type=>eo[:join_type]||join_type, :join_only=>eo[:join_only], &graph_block)
2029
- end
2030
- end
2031
-
2032
- return if opts[:read_only]
2033
-
2034
- if one_through_one
2035
- opts[:setter] ||= proc do |o|
2036
- h = {}
2037
- lh = lcks.zip(lcpks.map{|k| get_column_value(k)})
2038
- jtds = _join_table_dataset(opts).where(lh)
2039
-
2040
- checked_transaction do
2041
- current = jtds.first
2042
-
2043
- if o
2044
- new_values = []
2045
- rcks.zip(opts.right_primary_key_methods).each{|k, pk| new_values << (h[k] = o.get_column_value(pk))}
2046
- end
2047
-
2048
- if current
2049
- current_values = rcks.map{|k| current[k]}
2050
- jtds = jtds.where(rcks.zip(current_values))
2051
- if o
2052
- if current_values != new_values
2053
- jtds.update(h)
2054
- end
2055
- else
2056
- jtds.delete
2057
- end
2058
- elsif o
2059
- lh.each{|k,v| h[k] = v}
2060
- jtds.insert(h)
2061
- end
2062
- end
2063
- end
2064
- opts[:_setter] = proc{|o| set_one_through_one_associated_object(opts, o)}
2065
- else
2066
- opts[:adder] ||= proc do |o|
2067
- h = {}
2068
- lcks.zip(lcpks).each{|k, pk| h[k] = get_column_value(pk)}
2069
- rcks.zip(opts.right_primary_key_methods).each{|k, pk| h[k] = o.get_column_value(pk)}
2070
- _join_table_dataset(opts).insert(h)
2071
- end
2072
-
2073
- opts[:remover] ||= proc do |o|
2074
- _join_table_dataset(opts).where(lcks.zip(lcpks.map{|k| get_column_value(k)}) + rcks.zip(opts.right_primary_key_methods.map{|k| o.get_column_value(k)})).delete
2075
- end
2076
-
2077
- opts[:clearer] ||= proc do
2078
- _join_table_dataset(opts).where(lcks.zip(lcpks.map{|k| get_column_value(k)})).delete
2079
- end
2080
- end
2081
- end
2082
-
2083
- # Configures many_to_one association reflection and adds the related association methods
2084
- def def_many_to_one(opts)
2085
- name = opts[:name]
2086
- opts[:key] = opts.default_key unless opts.has_key?(:key)
2087
- key = opts[:key]
2088
- opts[:eager_loader_key] = key unless opts.has_key?(:eager_loader_key)
2089
- cks = opts[:graph_keys] = opts[:keys] = Array(key)
2090
- opts[:key_column] ||= key
2091
- opts[:graph_keys] = opts[:key_columns] = Array(opts[:key_column])
2092
- opts[:qualified_key] = opts.qualify_cur(key)
2093
- if opts[:primary_key]
2094
- cpks = Array(opts[:primary_key])
2095
- raise(Error, "mismatched number of keys: #{cks.inspect} vs #{cpks.inspect}") unless cks.length == cpks.length
2096
- end
2097
- uses_cks = opts[:uses_composite_keys] = cks.length > 1
2098
- opts[:cartesian_product_number] ||= 0
2099
-
2100
- if !opts.has_key?(:many_to_one_pk_lookup) &&
2101
- (opts[:dataset] || opts[:conditions] || opts[:block] || opts[:select] ||
2102
- (opts.has_key?(:key) && opts[:key] == nil))
2103
- opts[:many_to_one_pk_lookup] = false
2104
- end
2105
- auto_assocs = @autoreloading_associations
2106
- cks.each do |k|
2107
- (auto_assocs[k] ||= []) << name
2108
- end
2109
-
2110
- opts[:dataset] ||= opts.association_dataset_proc
2111
- opts[:eager_loader] ||= proc do |eo|
2112
- h = eo[:id_map]
2113
- pk_meths = opts.primary_key_methods
2114
-
2115
- eager_load_results(opts, eo) do |assoc_record|
2116
- hash_key = uses_cks ? pk_meths.map{|k| assoc_record.get_column_value(k)} : assoc_record.get_column_value(opts.primary_key_method)
2117
- if objects = h[hash_key]
2118
- objects.each{|object| object.associations[name] = assoc_record}
2119
- end
2120
- end
2121
- end
2122
-
2123
- join_type = opts[:graph_join_type]
2124
- select = opts[:graph_select]
2125
- use_only_conditions = opts.include?(:graph_only_conditions)
2126
- only_conditions = opts[:graph_only_conditions]
2127
- conditions = opts[:graph_conditions]
2128
- graph_block = opts[:graph_block]
2129
- graph_cks = opts[:graph_keys]
2130
- opts[:eager_grapher] ||= proc do |eo|
2131
- ds = eo[:self]
2132
- ds.graph(eager_graph_dataset(opts, eo), use_only_conditions ? only_conditions : opts.primary_keys.zip(graph_cks) + conditions, Hash[eo].merge!(:select=>select, :join_type=>eo[:join_type]||join_type, :qualify=>:deep, :from_self_alias=>eo[:from_self_alias]), &graph_block)
2133
- end
2134
-
2135
- return if opts[:read_only]
2136
-
2137
- opts[:setter] ||= proc{|o| cks.zip(opts.primary_key_methods).each{|k, pk| set_column_value(:"#{k}=", (o.get_column_value(pk) if o))}}
2138
- opts[:_setter] = proc{|o| set_associated_object(opts, o)}
2139
- end
2140
-
2141
- # Configures one_to_many and one_to_one association reflections and adds the related association methods
2142
- def def_one_to_many(opts)
2143
- one_to_one = opts[:type] == :one_to_one
2144
- name = opts[:name]
2145
- key = (opts[:key] ||= opts.default_key)
2146
- km = opts[:key_method] ||= opts[:key]
2147
- cks = opts[:keys] = Array(key)
2148
- opts[:key_methods] = Array(opts[:key_method])
2149
- primary_key = (opts[:primary_key] ||= self.primary_key)
2150
- opts[:eager_loader_key] = primary_key unless opts.has_key?(:eager_loader_key)
2151
- cpks = opts[:primary_keys] = Array(primary_key)
2152
- pkc = opts[:primary_key_column] ||= primary_key
2153
- pkcs = opts[:primary_key_columns] ||= Array(pkc)
2154
- raise(Error, "mismatched number of keys: #{cks.inspect} vs #{cpks.inspect}") unless cks.length == cpks.length
2155
- uses_cks = opts[:uses_composite_keys] = cks.length > 1
2156
- opts[:dataset] ||= opts.association_dataset_proc
2157
- opts[:eager_loader] ||= proc do |eo|
2158
- h = eo[:id_map]
2159
- reciprocal = opts.reciprocal
2160
- assign_singular = opts.assign_singular?
2161
- delete_rn = opts.delete_row_number_column
2162
-
2163
- eager_load_results(opts, eo) do |assoc_record|
2164
- assoc_record.values.delete(delete_rn) if delete_rn
2165
- hash_key = uses_cks ? km.map{|k| assoc_record.get_column_value(k)} : assoc_record.get_column_value(km)
2166
- next unless objects = h[hash_key]
2167
- if assign_singular
2168
- objects.each do |object|
2169
- unless object.associations[name]
2170
- object.associations[name] = assoc_record
2171
- assoc_record.associations[reciprocal] = object if reciprocal
2172
- end
2173
- end
2174
- else
2175
- objects.each do |object|
2176
- object.associations[name].push(assoc_record)
2177
- assoc_record.associations[reciprocal] = object if reciprocal
2178
- end
2179
- end
2180
- end
2181
- end
2182
-
2183
- join_type = opts[:graph_join_type]
2184
- select = opts[:graph_select]
2185
- use_only_conditions = opts.include?(:graph_only_conditions)
2186
- only_conditions = opts[:graph_only_conditions]
2187
- conditions = opts[:graph_conditions]
2188
- opts[:cartesian_product_number] ||= one_to_one ? 0 : 1
2189
- graph_block = opts[:graph_block]
2190
- opts[:eager_grapher] ||= proc do |eo|
2191
- ds = eo[:self]
2192
- ds = ds.graph(opts.apply_eager_graph_limit_strategy(eo[:limit_strategy], eager_graph_dataset(opts, eo)), use_only_conditions ? only_conditions : cks.zip(pkcs) + conditions, Hash[eo].merge!(:select=>select, :join_type=>eo[:join_type]||join_type, :qualify=>:deep, :from_self_alias=>eo[:from_self_alias]), &graph_block)
2193
- # We only load reciprocals for one_to_many associations, as other reciprocals don't make sense
2194
- ds.opts[:eager_graph][:reciprocals][eo[:table_alias]] = opts.reciprocal
2195
- ds
2196
- end
2197
-
2198
- return if opts[:read_only]
2199
-
2200
- save_opts = {:validate=>opts[:validate]}
2201
- ck_nil_hash ={}
2202
- cks.each{|k| ck_nil_hash[k] = nil}
2203
-
2204
- if one_to_one
2205
- opts[:setter] ||= proc do |o|
2206
- up_ds = _apply_association_options(opts, opts.associated_dataset.where(cks.zip(cpks.map{|k| get_column_value(k)})))
2207
- if o
2208
- up_ds = up_ds.exclude(o.pk_hash) unless o.new?
2209
- cks.zip(cpks).each{|k, pk| o.set_column_value(:"#{k}=", get_column_value(pk))}
2210
- end
2211
- checked_transaction do
2212
- up_ds.skip_limit_check.update(ck_nil_hash)
2213
- o.save(save_opts) || raise(Sequel::Error, "invalid associated object, cannot save") if o
2214
- end
2215
- end
2216
- opts[:_setter] = proc{|o| set_one_to_one_associated_object(opts, o)}
2217
- else
2218
- save_opts[:raise_on_failure] = opts[:raise_on_save_failure] != false
2219
-
2220
- opts[:adder] ||= proc do |o|
2221
- cks.zip(cpks).each{|k, pk| o.set_column_value(:"#{k}=", get_column_value(pk))}
2222
- o.save(save_opts)
2223
- end
2224
-
2225
- opts[:remover] ||= proc do |o|
2226
- cks.each{|k| o.set_column_value(:"#{k}=", nil)}
2227
- o.save(save_opts)
2228
- end
2229
-
2230
- opts[:clearer] ||= proc do
2231
- _apply_association_options(opts, opts.associated_dataset.where(cks.zip(cpks.map{|k| get_column_value(k)}))).update(ck_nil_hash)
2232
- end
2233
- end
2234
- end
2235
-
2236
- # Alias of def_many_to_many, since they share pretty much the same code.
2237
- def def_one_through_one(opts)
2238
- def_many_to_many(opts)
2239
- end
2240
-
2241
- # Alias of def_one_to_many, since they share pretty much the same code.
2242
- def def_one_to_one(opts)
2243
- def_one_to_many(opts)
2244
- end
2245
-
2246
- # Return dataset to graph into given the association reflection, applying the :callback option if set.
2247
- def eager_graph_dataset(opts, eager_options)
2248
- ds = opts.associated_class.dataset
2249
- if cb = eager_options[:callback]
2250
- ds = cb.call(ds)
2251
- end
2252
- ds
2253
- end
2254
-
2255
- # If not caching associations, reload the database schema by default,
2256
- # ignoring any cached values.
2257
- def reload_db_schema?
2258
- !@cache_associations
2259
- end
2260
- end
2261
-
2262
- # Instance methods used to implement the associations support.
2263
- module InstanceMethods
2264
- # The currently cached associations. A hash with the keys being the
2265
- # association name symbols and the values being the associated object
2266
- # or nil (many_to_one), or the array of associated objects (*_to_many).
2267
- def associations
2268
- @associations ||= {}
2269
- end
2270
-
2271
- # Freeze the associations cache when freezing the object. Note that
2272
- # retrieving associations after freezing will still work in most cases,
2273
- # but the associations will not be cached in the association cache.
2274
- def freeze
2275
- associations
2276
- super
2277
- associations.freeze
2278
- self
2279
- end
2280
-
2281
- private
2282
-
2283
- # Apply the association options such as :order and :limit to the given dataset, returning a modified dataset.
2284
- def _apply_association_options(opts, ds)
2285
- unless ds.kind_of?(AssociationDatasetMethods)
2286
- ds = opts.apply_dataset_changes(ds)
2287
- end
2288
- ds = ds.clone(:model_object => self)
2289
- ds = ds.eager_graph(opts[:eager_graph]) if opts[:eager_graph] && opts.eager_graph_lazy_dataset?
2290
- ds = instance_exec(ds, &opts[:block]) if opts[:block]
2291
- ds
2292
- end
2293
-
2294
- # Return a dataset for the association after applying any dynamic callback.
2295
- def _associated_dataset(opts, dynamic_opts)
2296
- ds = public_send(opts.dataset_method)
2297
- if callback = dynamic_opts[:callback]
2298
- ds = callback.call(ds)
2299
- end
2300
- ds
2301
- end
2302
-
2303
- # A placeholder literalizer that can be used to load the association, or nil to not use one.
2304
- def _associated_object_loader(opts, dynamic_opts)
2305
- if !dynamic_opts[:callback] && (loader = opts.placeholder_loader)
2306
- loader
2307
- end
2308
- end
2309
-
2310
- # Return an association dataset for the given association reflection
2311
- def _dataset(opts)
2312
- raise(Sequel::Error, "model object #{inspect} does not have a primary key") if opts.dataset_need_primary_key? && !pk
2313
- ds = if opts[:dataset].arity == 1
2314
- instance_exec(opts, &opts[:dataset])
2315
- else
2316
- instance_exec(&opts[:dataset])
2317
- end
2318
- _apply_association_options(opts, ds)
2319
- end
2320
-
2321
- # Dataset for the join table of the given many to many association reflection
2322
- def _join_table_dataset(opts)
2323
- ds = model.db.from(opts.join_table_source)
2324
- opts[:join_table_block] ? opts[:join_table_block].call(ds) : ds
2325
- end
2326
-
2327
- # Return the associated single object for the given association reflection and dynamic options
2328
- # (or nil if no associated object).
2329
- def _load_associated_object(opts, dynamic_opts)
2330
- _load_associated_object_array(opts, dynamic_opts).first
2331
- end
2332
-
2333
- # Return the associated single object using a primary key lookup on the associated class.
2334
- def _load_associated_object_via_primary_key(opts)
2335
- opts.associated_class.send(:primary_key_lookup, ((fk = opts[:key]).is_a?(Array) ? fk.map{|c| get_column_value(c)} : get_column_value(fk)))
2336
- end
2337
-
2338
- # Load the associated objects for the given association reflection and dynamic options
2339
- # as an array.
2340
- def _load_associated_object_array(opts, dynamic_opts)
2341
- if loader = _associated_object_loader(opts, dynamic_opts)
2342
- loader.all(*opts.predicate_key_values(self))
2343
- else
2344
- _associated_dataset(opts, dynamic_opts).all
2345
- end
2346
- end
2347
-
2348
- # Return the associated objects from the dataset, without association callbacks, reciprocals, and caching.
2349
- # Still apply the dynamic callback if present.
2350
- def _load_associated_objects(opts, dynamic_opts=OPTS)
2351
- if opts.can_have_associated_objects?(self)
2352
- if opts.returns_array?
2353
- _load_associated_object_array(opts, dynamic_opts)
2354
- elsif load_with_primary_key_lookup?(opts, dynamic_opts)
2355
- _load_associated_object_via_primary_key(opts)
2356
- else
2357
- _load_associated_object(opts, dynamic_opts)
2358
- end
2359
- elsif opts.returns_array?
2360
- []
2361
- end
2362
- end
2363
-
2364
- # Clear the associations cache when refreshing
2365
- def _refresh_set_values(hash)
2366
- @associations.clear if @associations
2367
- super
2368
- end
2369
-
2370
- # Add the given associated object to the given association
2371
- def add_associated_object(opts, o, *args)
2372
- o = make_add_associated_object(opts, o)
2373
- raise(Sequel::Error, "model object #{inspect} does not have a primary key") if opts.dataset_need_primary_key? && !pk
2374
- ensure_associated_primary_key(opts, o, *args)
2375
- return if run_association_callbacks(opts, :before_add, o) == false
2376
- # Allow calling private _add method
2377
- return if !send(opts[:_add_method], o, *args) && opts.handle_silent_modification_failure?
2378
- if array = associations[opts[:name]] and !array.include?(o)
2379
- array.push(o)
2380
- end
2381
- add_reciprocal_object(opts, o)
2382
- run_association_callbacks(opts, :after_add, o)
2383
- o
2384
- end
2385
-
2386
- # Add/Set the current object to/as the given object's reciprocal association.
2387
- def add_reciprocal_object(opts, o)
2388
- return if o.frozen?
2389
- return unless reciprocal = opts.reciprocal
2390
- if opts.reciprocal_array?
2391
- if array = o.associations[reciprocal] and !array.include?(self)
2392
- array.push(self)
2393
- end
2394
- else
2395
- o.associations[reciprocal] = self
2396
- end
2397
- end
2398
-
2399
- # Call uniq! on the given array. This is used by the :uniq option,
2400
- # and is an actual method for memory reasons.
2401
- def array_uniq!(a)
2402
- a.uniq!
2403
- end
2404
-
2405
- # If a foreign key column value changes, clear the related
2406
- # cached associations.
2407
- def change_column_value(column, value)
2408
- if assocs = model.autoreloading_associations[column]
2409
- vals = @values
2410
- if new?
2411
- # Do deeper checking for new objects, so that associations are
2412
- # not deleted when values do not change. This code is run at
2413
- # a higher level for existing objects.
2414
- if value == (c = vals[column]) && value.class == c.class
2415
- # If the value is the same, there is no reason to delete
2416
- # the related associations, so exit early in that case.
2417
- return super
2418
- end
2419
-
2420
- only_delete_nil = c.nil?
2421
- elsif vals[column].nil?
2422
- only_delete_nil = true
2423
- end
2424
-
2425
- if only_delete_nil
2426
- # If the current foreign key value is nil, but the association
2427
- # is already present in the cache, it was probably added to the
2428
- # cache for a reason, and we do not want to delete it in that case.
2429
- # However, we still want to delete associations with nil values
2430
- # to remove the cached false negative.
2431
- assocs.each{|a| associations.delete(a) if associations[a].nil?}
2432
- else
2433
- assocs.each{|a| associations.delete(a)}
2434
- end
2435
- end
2436
- super
2437
- end
2438
-
2439
- # Save the associated object if the associated object needs a primary key
2440
- # and the associated object is new and does not have one. Raise an error if
2441
- # the object still does not have a primary key
2442
- def ensure_associated_primary_key(opts, o, *args)
2443
- if opts.need_associated_primary_key?
2444
- o.save(:validate=>opts[:validate]) if o.new?
2445
- raise(Sequel::Error, "associated object #{o.inspect} does not have a primary key") unless o.pk
2446
- end
2447
- end
2448
-
2449
- # Duplicate the associations hash when duplicating the object.
2450
- def initialize_copy(other)
2451
- super
2452
- @associations = Hash[@associations] if @associations
2453
- self
2454
- end
2455
-
2456
- # If a block is given, assign it as the :callback option in the hash, and return the hash.
2457
- def load_association_objects_options(dynamic_opts, &block)
2458
- if block
2459
- dynamic_opts = Hash[dynamic_opts]
2460
- dynamic_opts[:callback] = block
2461
- end
2462
-
2463
- dynamic_opts
2464
- end
2465
-
2466
- # Load the associated objects using the dataset, handling callbacks, reciprocals, and caching.
2467
- def load_associated_objects(opts, dynamic_opts, &block)
2468
- dynamic_opts = load_association_objects_options(dynamic_opts, &block)
2469
- name = opts[:name]
2470
- if associations.include?(name) && !dynamic_opts[:callback] && !dynamic_opts[:reload]
2471
- associations[name]
2472
- else
2473
- objs = _load_associated_objects(opts, dynamic_opts)
2474
- if opts.set_reciprocal_to_self?
2475
- if opts.returns_array?
2476
- objs.each{|o| add_reciprocal_object(opts, o)}
2477
- elsif objs
2478
- add_reciprocal_object(opts, objs)
2479
- end
2480
- end
2481
-
2482
- # If the current object is frozen, you can't update the associations
2483
- # cache. This can cause issues for after_load procs that expect
2484
- # the objects to be already cached in the associations, but
2485
- # unfortunately that case cannot be handled.
2486
- associations[name] = objs unless frozen?
2487
- run_association_callbacks(opts, :after_load, objs)
2488
- frozen? ? objs : associations[name]
2489
- end
2490
- end
2491
-
2492
- # Whether to use a simple primary key lookup on the associated class when loading.
2493
- def load_with_primary_key_lookup?(opts, dynamic_opts)
2494
- opts[:type] == :many_to_one &&
2495
- !dynamic_opts[:callback] &&
2496
- opts.send(:cached_fetch, :many_to_one_pk_lookup){opts.primary_key == opts.associated_class.primary_key}
2497
- end
2498
-
2499
- # Convert the input of the add_* association method into an associated object. For
2500
- # hashes, this creates a new object using the hash. For integers, strings, and arrays,
2501
- # assume the value specifies a primary key, and lookup an existing object with that primary key.
2502
- # Otherwise, if the object is not already an instance of the class, raise an exception.
2503
- def make_add_associated_object(opts, o)
2504
- klass = opts.associated_class
2505
-
2506
- case o
2507
- when Hash
2508
- klass.new(o)
2509
- when Integer, String, Array
2510
- klass.with_pk!(o)
2511
- when klass
2512
- o
2513
- else
2514
- raise(Sequel::Error, "associated object #{o.inspect} not of correct type #{klass}")
2515
- end
2516
- end
2517
-
2518
- # Remove all associated objects from the given association
2519
- def remove_all_associated_objects(opts, *args)
2520
- raise(Sequel::Error, "model object #{inspect} does not have a primary key") if opts.dataset_need_primary_key? && !pk
2521
- # Allow calling private _remove_all method
2522
- send(opts[:_remove_all_method], *args)
2523
- ret = associations[opts[:name]].each{|o| remove_reciprocal_object(opts, o)} if associations.include?(opts[:name])
2524
- associations[opts[:name]] = []
2525
- ret
2526
- end
2527
-
2528
- # Remove the given associated object from the given association
2529
- def remove_associated_object(opts, o, *args)
2530
- klass = opts.associated_class
2531
- if o.is_a?(Integer) || o.is_a?(String) || o.is_a?(Array)
2532
- o = remove_check_existing_object_from_pk(opts, o, *args)
2533
- elsif !o.is_a?(klass)
2534
- raise(Sequel::Error, "associated object #{o.inspect} not of correct type #{klass}")
2535
- elsif opts.remove_should_check_existing? && public_send(opts.dataset_method).where(o.pk_hash).empty?
2536
- raise(Sequel::Error, "associated object #{o.inspect} is not currently associated to #{inspect}")
2537
- end
2538
- raise(Sequel::Error, "model object #{inspect} does not have a primary key") if opts.dataset_need_primary_key? && !pk
2539
- raise(Sequel::Error, "associated object #{o.inspect} does not have a primary key") if opts.need_associated_primary_key? && !o.pk
2540
- return if run_association_callbacks(opts, :before_remove, o) == false
2541
- # Allow calling private _remove method
2542
- return if !send(opts[:_remove_method], o, *args) && opts.handle_silent_modification_failure?
2543
- associations[opts[:name]].delete_if{|x| o === x} if associations.include?(opts[:name])
2544
- remove_reciprocal_object(opts, o)
2545
- run_association_callbacks(opts, :after_remove, o)
2546
- o
2547
- end
2548
-
2549
- # Check that the object from the associated table specified by the primary key
2550
- # is currently associated to the receiver. If it is associated, return the object, otherwise
2551
- # raise an error.
2552
- def remove_check_existing_object_from_pk(opts, o, *args)
2553
- key = o
2554
- pkh = opts.associated_class.qualified_primary_key_hash(key)
2555
- raise(Sequel::Error, "no object with key(s) #{key.inspect} is currently associated to #{inspect}") unless o = public_send(opts.dataset_method).first(pkh)
2556
- o
2557
- end
2558
-
2559
- # Remove/unset the current object from/as the given object's reciprocal association.
2560
- def remove_reciprocal_object(opts, o)
2561
- return unless reciprocal = opts.reciprocal
2562
- if opts.reciprocal_array?
2563
- if array = o.associations[reciprocal]
2564
- array.delete_if{|x| self === x}
2565
- end
2566
- else
2567
- o.associations[reciprocal] = nil
2568
- end
2569
- end
2570
-
2571
- # Run the callback for the association with the object.
2572
- def run_association_callbacks(reflection, callback_type, object)
2573
- return unless cbs = reflection[callback_type]
2574
-
2575
- begin
2576
- cbs.each do |cb|
2577
- case cb
2578
- when Symbol
2579
- # Allow calling private methods in association callbacks
2580
- send(cb, object)
2581
- when Proc
2582
- cb.call(self, object)
2583
- else
2584
- raise Error, "callbacks should either be Procs or Symbols"
2585
- end
2586
- end
2587
- rescue HookFailed
2588
- # The reason we automatically set raise_error for singular associations is that
2589
- # assignment in ruby always returns the argument instead of the result of the
2590
- # method, so we can't return nil to signal that the association callback prevented
2591
- # the modification
2592
- return false unless raise_on_save_failure || !reflection.returns_array?
2593
- raise
2594
- end
2595
- end
2596
-
2597
- # Set the given object as the associated object for the given *_to_one association reflection
2598
- def _set_associated_object(opts, o)
2599
- a = associations[opts[:name]]
2600
- reciprocal = opts.reciprocal
2601
- if set_associated_object_if_same?
2602
- if reciprocal
2603
- remove_reciprocal = a && (a != o || a.associations[reciprocal] != self)
2604
- add_reciprocal = o && o.associations[reciprocal] != self
2605
- end
2606
- else
2607
- return if a && a == o
2608
- if reciprocal
2609
- remove_reciprocal = a
2610
- add_reciprocal = o
2611
- end
2612
- end
2613
- run_association_callbacks(opts, :before_set, o)
2614
- remove_reciprocal_object(opts, a) if remove_reciprocal
2615
- # Allow calling private _setter method
2616
- send(opts[:_setter_method], o)
2617
- associations[opts[:name]] = o
2618
- add_reciprocal_object(opts, o) if add_reciprocal
2619
- run_association_callbacks(opts, :after_set, o)
2620
- o
2621
- end
2622
-
2623
- # Whether run the associated object setter code if passed the same object as the one already
2624
- # cached in the association. Usually not set (so nil), can be set on a per-object basis
2625
- # if necessary.
2626
- def set_associated_object_if_same?
2627
- @set_associated_object_if_same
2628
- end
2629
-
2630
- # Set the given object as the associated object for the given many_to_one association reflection
2631
- def set_associated_object(opts, o)
2632
- raise(Error, "associated object #{o.inspect} does not have a primary key") if o && !o.pk
2633
- _set_associated_object(opts, o)
2634
- end
2635
-
2636
- # Set the given object as the associated object for the given one_through_one association reflection
2637
- def set_one_through_one_associated_object(opts, o)
2638
- raise(Error, "object #{inspect} does not have a primary key") unless pk
2639
- raise(Error, "associated object #{o.inspect} does not have a primary key") if o && !o.pk
2640
- _set_associated_object(opts, o)
2641
- end
2642
-
2643
- # Set the given object as the associated object for the given one_to_one association reflection
2644
- def set_one_to_one_associated_object(opts, o)
2645
- raise(Error, "object #{inspect} does not have a primary key") unless pk
2646
- _set_associated_object(opts, o)
2647
- end
2648
- end
2649
-
2650
- # Eager loading makes it so that you can load all associated records for a
2651
- # set of objects in a single query, instead of a separate query for each object.
2652
- #
2653
- # Two separate implementations are provided. +eager+ should be used most of the
2654
- # time, as it loads associated records using one query per association. However,
2655
- # it does not allow you the ability to filter or order based on columns in associated tables. +eager_graph+ loads
2656
- # all records in a single query using JOINs, allowing you to filter or order based on columns in associated
2657
- # tables. However, +eager_graph+ is usually slower than +eager+, especially if multiple
2658
- # one_to_many or many_to_many associations are joined.
2659
- #
2660
- # You can cascade the eager loading (loading associations on associated objects)
2661
- # with no limit to the depth of the cascades. You do this by passing a hash to +eager+ or +eager_graph+
2662
- # with the keys being associations of the current model and values being
2663
- # associations of the model associated with the current model via the key.
2664
- #
2665
- # The arguments can be symbols or hashes with symbol keys (for cascaded
2666
- # eager loading). Examples:
2667
- #
2668
- # Album.eager(:artist).all
2669
- # Album.eager_graph(:artist).all
2670
- # Album.eager(:artist, :genre).all
2671
- # Album.eager_graph(:artist, :genre).all
2672
- # Album.eager(:artist).eager(:genre).all
2673
- # Album.eager_graph(:artist).eager_graph(:genre).all
2674
- # Artist.eager(albums: :tracks).all
2675
- # Artist.eager_graph(albums: :tracks).all
2676
- # Artist.eager(albums: {tracks: :genre}).all
2677
- # Artist.eager_graph(albums: {tracks: :genre}).all
2678
- #
2679
- # You can also pass a callback as a hash value in order to customize the dataset being
2680
- # eager loaded at query time, analogous to the way the :eager_block association option
2681
- # allows you to customize it at association definition time. For example,
2682
- # if you wanted artists with their albums since 1990:
2683
- #
2684
- # Artist.eager(albums: proc{|ds| ds.where{year > 1990}})
2685
- #
2686
- # Or if you needed albums and their artist's name only, using a single query:
2687
- #
2688
- # Albums.eager_graph(artist: proc{|ds| ds.select(:name)})
2689
- #
2690
- # To cascade eager loading while using a callback, you substitute the cascaded
2691
- # associations with a single entry hash that has the proc callback as the key and
2692
- # the cascaded associations as the value. This will load artists with their albums
2693
- # since 1990, and also the tracks on those albums and the genre for those tracks:
2694
- #
2695
- # Artist.eager(albums: {proc{|ds| ds.where{year > 1990}}=>{tracks: :genre}})
2696
- module DatasetMethods
2697
- %w'inner left right full'.each do |type|
2698
- class_eval(<<-END, __FILE__, __LINE__+1)
2699
- def association_#{type}_join(*associations)
2700
- _association_join(:#{type}, associations)
2701
- end
2702
- END
2703
- end
2704
-
2705
- # Adds one or more INNER JOINs to the existing dataset using the keys and conditions
2706
- # specified by the given association(s). Take the same arguments as eager_graph, and
2707
- # operates similarly, but only adds the joins as opposed to making the other changes
2708
- # (such as adding selected columns and setting up eager loading).
2709
- #
2710
- # The following methods also exist for specifying a different type of JOIN:
2711
- #
2712
- # association_full_join :: FULL JOIN
2713
- # association_inner_join :: INNER JOIN
2714
- # association_left_join :: LEFT JOIN
2715
- # association_right_join :: RIGHT JOIN
2716
- #
2717
- # Examples:
2718
- #
2719
- # # For each album, association_join load the artist
2720
- # Album.association_join(:artist).all
2721
- # # SELECT *
2722
- # # FROM albums
2723
- # # INNER JOIN artists AS artist ON (artists.id = albums.artist_id)
2724
- #
2725
- # # For each album, association_join load the artist, using a specified alias
2726
- # Album.association_join(Sequel[:artist].as(:a)).all
2727
- # # SELECT *
2728
- # # FROM albums
2729
- # # INNER JOIN artists AS a ON (a.id = albums.artist_id)
2730
- #
2731
- # # For each album, association_join load the artist and genre
2732
- # Album.association_join(:artist, :genre).all
2733
- # Album.association_join(:artist).association_join(:genre).all
2734
- # # SELECT *
2735
- # # FROM albums
2736
- # # INNER JOIN artists AS artist ON (artist.id = albums.artist_id)
2737
- # # INNER JOIN genres AS genre ON (genre.id = albums.genre_id)
2738
- #
2739
- # # For each artist, association_join load albums and tracks for each album
2740
- # Artist.association_join(albums: :tracks).all
2741
- # # SELECT *
2742
- # # FROM artists
2743
- # # INNER JOIN albums ON (albums.artist_id = artists.id)
2744
- # # INNER JOIN tracks ON (tracks.album_id = albums.id)
2745
- #
2746
- # # For each artist, association_join load albums, tracks for each album, and genre for each track
2747
- # Artist.association_join(albums: {tracks: :genre}).all
2748
- # # SELECT *
2749
- # # FROM artists
2750
- # # INNER JOIN albums ON (albums.artist_id = artists.id)
2751
- # # INNER JOIN tracks ON (tracks.album_id = albums.id)
2752
- # # INNER JOIN genres AS genre ON (genre.id = tracks.genre_id)
2753
- #
2754
- # # For each artist, association_join load albums with year > 1990
2755
- # Artist.association_join(albums: proc{|ds| ds.where{year > 1990}}).all
2756
- # # SELECT *
2757
- # # FROM artists
2758
- # # INNER JOIN (
2759
- # # SELECT * FROM albums WHERE (year > 1990)
2760
- # # ) AS albums ON (albums.artist_id = artists.id)
2761
- #
2762
- # # For each artist, association_join load albums and tracks 1-10 for each album
2763
- # Artist.association_join(albums: {tracks: proc{|ds| ds.where(number: 1..10)}}).all
2764
- # # SELECT *
2765
- # # FROM artists
2766
- # # INNER JOIN albums ON (albums.artist_id = artists.id)
2767
- # # INNER JOIN (
2768
- # # SELECT * FROM tracks WHERE ((number >= 1) AND (number <= 10))
2769
- # # ) AS tracks ON (tracks.albums_id = albums.id)
2770
- #
2771
- # # For each artist, association_join load albums with year > 1990, and tracks for those albums
2772
- # Artist.association_join(albums: {proc{|ds| ds.where{year > 1990}}=>:tracks}).all
2773
- # # SELECT *
2774
- # # FROM artists
2775
- # # INNER JOIN (
2776
- # # SELECT * FROM albums WHERE (year > 1990)
2777
- # # ) AS albums ON (albums.artist_id = artists.id)
2778
- # # INNER JOIN tracks ON (tracks.album_id = albums.id)
2779
- def association_join(*associations)
2780
- association_inner_join(*associations)
2781
- end
2782
-
2783
- # If the expression is in the form <tt>x = y</tt> where +y+ is a <tt>Sequel::Model</tt>
2784
- # instance, array of <tt>Sequel::Model</tt> instances, or a <tt>Sequel::Model</tt> dataset,
2785
- # assume +x+ is an association symbol and look up the association reflection
2786
- # via the dataset's model. From there, return the appropriate SQL based on the type of
2787
- # association and the values of the foreign/primary keys of +y+. For most association
2788
- # types, this is a simple transformation, but for +many_to_many+ associations this
2789
- # creates a subquery to the join table.
2790
- def complex_expression_sql_append(sql, op, args)
2791
- r = args[1]
2792
- if (((op == :'=' || op == :'!=') && r.is_a?(Sequel::Model)) ||
2793
- (multiple = ((op == :IN || op == :'NOT IN') && ((is_ds = r.is_a?(Sequel::Dataset)) || (r.respond_to?(:all?) && r.all?{|x| x.is_a?(Sequel::Model)})))))
2794
- l = args[0]
2795
- if ar = model.association_reflections[l]
2796
- if multiple
2797
- klass = ar.associated_class
2798
- if is_ds
2799
- if r.respond_to?(:model)
2800
- unless r.model <= klass
2801
- # A dataset for a different model class, could be a valid regular query
2802
- return super
2803
- end
2804
- else
2805
- # Not a model dataset, could be a valid regular query
2806
- return super
2807
- end
2808
- else
2809
- unless r.all?{|x| x.is_a?(klass)}
2810
- raise Sequel::Error, "invalid association class for one object for association #{l.inspect} used in dataset filter for model #{model.inspect}, expected class #{klass.inspect}"
2811
- end
2812
- end
2813
- elsif !r.is_a?(ar.associated_class)
2814
- raise Sequel::Error, "invalid association class #{r.class.inspect} for association #{l.inspect} used in dataset filter for model #{model.inspect}, expected class #{ar.associated_class.inspect}"
2815
- end
2816
-
2817
- if exp = association_filter_expression(op, ar, r)
2818
- literal_append(sql, exp)
2819
- else
2820
- raise Sequel::Error, "invalid association type #{ar[:type].inspect} for association #{l.inspect} used in dataset filter for model #{model.inspect}"
2821
- end
2822
- elsif multiple && (is_ds || r.empty?)
2823
- # Not a query designed for this support, could be a valid regular query
2824
- super
2825
- else
2826
- raise Sequel::Error, "invalid association #{l.inspect} used in dataset filter for model #{model.inspect}"
2827
- end
2828
- else
2829
- super
2830
- end
2831
- end
2832
-
2833
- # The preferred eager loading method. Loads all associated records using one
2834
- # query for each association.
2835
- #
2836
- # The basic idea for how it works is that the dataset is first loaded normally.
2837
- # Then it goes through all associations that have been specified via +eager+.
2838
- # It loads each of those associations separately, then associates them back
2839
- # to the original dataset via primary/foreign keys. Due to the necessity of
2840
- # all objects being present, you need to use +all+ to use eager loading, as it
2841
- # can't work with +each+.
2842
- #
2843
- # This implementation avoids the complexity of extracting an object graph out
2844
- # of a single dataset, by building the object graph out of multiple datasets,
2845
- # one for each association. By using a separate dataset for each association,
2846
- # it avoids problems such as aliasing conflicts and creating cartesian product
2847
- # result sets if multiple one_to_many or many_to_many eager associations are requested.
2848
- #
2849
- # One limitation of using this method is that you cannot filter the current dataset
2850
- # based on values of columns in an associated table, since the associations are loaded
2851
- # in separate queries. To do that you need to load all associations in the
2852
- # same query, and extract an object graph from the results of that query. If you
2853
- # need to filter based on columns in associated tables, look at +eager_graph+
2854
- # or join the tables you need to filter on manually.
2855
- #
2856
- # Each association's order, if defined, is respected.
2857
- # If the association uses a block or has an :eager_block argument, it is used.
2858
- #
2859
- # To modify the associated dataset that will be used for the eager load, you should use a
2860
- # hash for the association, with the key being the association name symbol, and the value being
2861
- # a callable object that is called with the associated dataset and should return a modified
2862
- # dataset. If that association also has dependent associations, instead of a callable object,
2863
- # use a hash with the callable object being the key, and the dependent association(s) as the value.
2864
- #
2865
- # Examples:
2866
- #
2867
- # # For each album, eager load the artist
2868
- # Album.eager(:artist).all
2869
- # # SELECT * FROM albums
2870
- # # SELECT * FROM artists WHERE (id IN (...))
2871
- #
2872
- # # For each album, eager load the artist and genre
2873
- # Album.eager(:artist, :genre).all
2874
- # Album.eager(:artist).eager(:genre).all
2875
- # # SELECT * FROM albums
2876
- # # SELECT * FROM artists WHERE (id IN (...))
2877
- # # SELECT * FROM genres WHERE (id IN (...))
2878
- #
2879
- # # For each artist, eager load albums and tracks for each album
2880
- # Artist.eager(albums: :tracks).all
2881
- # # SELECT * FROM artists
2882
- # # SELECT * FROM albums WHERE (artist_id IN (...))
2883
- # # SELECT * FROM tracks WHERE (album_id IN (...))
2884
- #
2885
- # # For each artist, eager load albums, tracks for each album, and genre for each track
2886
- # Artist.eager(albums: {tracks: :genre}).all
2887
- # # SELECT * FROM artists
2888
- # # SELECT * FROM albums WHERE (artist_id IN (...))
2889
- # # SELECT * FROM tracks WHERE (album_id IN (...))
2890
- # # SELECT * FROM genre WHERE (id IN (...))
2891
- #
2892
- # # For each artist, eager load albums with year > 1990
2893
- # Artist.eager(albums: proc{|ds| ds.where{year > 1990}}).all
2894
- # # SELECT * FROM artists
2895
- # # SELECT * FROM albums WHERE ((year > 1990) AND (artist_id IN (...)))
2896
- #
2897
- # # For each artist, eager load albums and tracks 1-10 for each album
2898
- # Artist.eager(albums: {tracks: proc{|ds| ds.where(number: 1..10)}}).all
2899
- # # SELECT * FROM artists
2900
- # # SELECT * FROM albums WHERE (artist_id IN (...))
2901
- # # SELECT * FROM tracks WHERE ((number >= 1) AND (number <= 10) AND (album_id IN (...)))
2902
- #
2903
- # # For each artist, eager load albums with year > 1990, and tracks for those albums
2904
- # Artist.eager(albums: {proc{|ds| ds.where{year > 1990}}=>:tracks}).all
2905
- # # SELECT * FROM artists
2906
- # # SELECT * FROM albums WHERE ((year > 1990) AND (artist_id IN (...)))
2907
- # # SELECT * FROM albums WHERE (artist_id IN (...))
2908
- def eager(*associations)
2909
- opts = @opts[:eager]
2910
- association_opts = eager_options_for_associations(associations)
2911
- opts = opts ? Hash[opts].merge!(association_opts) : association_opts
2912
- clone(:eager=>opts.freeze)
2913
- end
2914
-
2915
- # The secondary eager loading method. Loads all associations in a single query. This
2916
- # method should only be used if you need to filter or order based on columns in associated tables,
2917
- # or if you have done comparative benchmarking it and determined it is faster.
2918
- #
2919
- # This method uses <tt>Dataset#graph</tt> to create appropriate aliases for columns in all the
2920
- # tables. Then it uses the graph's metadata to build the associations from the single hash, and
2921
- # finally replaces the array of hashes with an array model objects inside all.
2922
- #
2923
- # Be very careful when using this with multiple one_to_many or many_to_many associations, as you can
2924
- # create large cartesian products. If you must graph multiple one_to_many and many_to_many associations,
2925
- # make sure your filters are narrow if the datasets are large.
2926
- #
2927
- # Each association's order, if defined, is respected. +eager_graph+ probably
2928
- # won't work correctly on a limited dataset, unless you are
2929
- # only graphing many_to_one, one_to_one, and one_through_one associations.
2930
- #
2931
- # Does not use the block defined for the association, since it does a single query for
2932
- # all objects. You can use the :graph_* association options to modify the SQL query.
2933
- #
2934
- # Like +eager+, you need to call +all+ on the dataset for the eager loading to work. If you just
2935
- # call +each+, it will yield plain hashes, each containing all columns from all the tables.
2936
- #
2937
- # To modify the associated dataset that will be joined to the current dataset, you should use a
2938
- # hash for the association, with the key being the association name symbol, and the value being
2939
- # a callable object that is called with the associated dataset and should return a modified
2940
- # dataset. If that association also has dependent associations, instead of a callable object,
2941
- # use a hash with the callable object being the key, and the dependent association(s) as the value.
2942
- #
2943
- # You can specify an alias by providing a Sequel::SQL::AliasedExpression object instead of
2944
- # an a Symbol for the assocation name.
2945
- #
2946
- # Examples:
2947
- #
2948
- # # For each album, eager_graph load the artist
2949
- # Album.eager_graph(:artist).all
2950
- # # SELECT ...
2951
- # # FROM albums
2952
- # # LEFT OUTER JOIN artists AS artist ON (artists.id = albums.artist_id)
2953
- #
2954
- # # For each album, eager_graph load the artist, using a specified alias
2955
- # Album.eager_graph(Sequel[:artist].as(:a)).all
2956
- # # SELECT ...
2957
- # # FROM albums
2958
- # # LEFT OUTER JOIN artists AS a ON (a.id = albums.artist_id)
2959
- #
2960
- # # For each album, eager_graph load the artist and genre
2961
- # Album.eager_graph(:artist, :genre).all
2962
- # Album.eager_graph(:artist).eager_graph(:genre).all
2963
- # # SELECT ...
2964
- # # FROM albums
2965
- # # LEFT OUTER JOIN artists AS artist ON (artist.id = albums.artist_id)
2966
- # # LEFT OUTER JOIN genres AS genre ON (genre.id = albums.genre_id)
2967
- #
2968
- # # For each artist, eager_graph load albums and tracks for each album
2969
- # Artist.eager_graph(albums: :tracks).all
2970
- # # SELECT ...
2971
- # # FROM artists
2972
- # # LEFT OUTER JOIN albums ON (albums.artist_id = artists.id)
2973
- # # LEFT OUTER JOIN tracks ON (tracks.album_id = albums.id)
2974
- #
2975
- # # For each artist, eager_graph load albums, tracks for each album, and genre for each track
2976
- # Artist.eager_graph(albums: {tracks: :genre}).all
2977
- # # SELECT ...
2978
- # # FROM artists
2979
- # # LEFT OUTER JOIN albums ON (albums.artist_id = artists.id)
2980
- # # LEFT OUTER JOIN tracks ON (tracks.album_id = albums.id)
2981
- # # LEFT OUTER JOIN genres AS genre ON (genre.id = tracks.genre_id)
2982
- #
2983
- # # For each artist, eager_graph load albums with year > 1990
2984
- # Artist.eager_graph(albums: proc{|ds| ds.where{year > 1990}}).all
2985
- # # SELECT ...
2986
- # # FROM artists
2987
- # # LEFT OUTER JOIN (
2988
- # # SELECT * FROM albums WHERE (year > 1990)
2989
- # # ) AS albums ON (albums.artist_id = artists.id)
2990
- #
2991
- # # For each artist, eager_graph load albums and tracks 1-10 for each album
2992
- # Artist.eager_graph(albums: {tracks: proc{|ds| ds.where(number: 1..10)}}).all
2993
- # # SELECT ...
2994
- # # FROM artists
2995
- # # LEFT OUTER JOIN albums ON (albums.artist_id = artists.id)
2996
- # # LEFT OUTER JOIN (
2997
- # # SELECT * FROM tracks WHERE ((number >= 1) AND (number <= 10))
2998
- # # ) AS tracks ON (tracks.albums_id = albums.id)
2999
- #
3000
- # # For each artist, eager_graph load albums with year > 1990, and tracks for those albums
3001
- # Artist.eager_graph(albums: {proc{|ds| ds.where{year > 1990}}=>:tracks}).all
3002
- # # SELECT ...
3003
- # # FROM artists
3004
- # # LEFT OUTER JOIN (
3005
- # # SELECT * FROM albums WHERE (year > 1990)
3006
- # # ) AS albums ON (albums.artist_id = artists.id)
3007
- # # LEFT OUTER JOIN tracks ON (tracks.album_id = albums.id)
3008
- def eager_graph(*associations)
3009
- eager_graph_with_options(associations)
3010
- end
3011
-
3012
- # Run eager_graph with some options specific to just this call. Unlike eager_graph, this takes
3013
- # the associations as a single argument instead of multiple arguments.
3014
- #
3015
- # Options:
3016
- #
3017
- # :join_type :: Override the join type specified in the association
3018
- # :limit_strategy :: Use a strategy for handling limits on associations.
3019
- # Appropriate :limit_strategy values are:
3020
- # true :: Pick the most appropriate based on what the database supports
3021
- # :distinct_on :: Force use of DISTINCT ON stategy (*_one associations only)
3022
- # :correlated_subquery :: Force use of correlated subquery strategy (one_to_* associations only)
3023
- # :window_function :: Force use of window function strategy
3024
- # :ruby :: Don't modify the SQL, implement limits/offsets with array slicing
3025
- #
3026
- # This can also be a hash with association name symbol keys and one of the above values,
3027
- # to use different strategies per association.
3028
- #
3029
- # The default is the :ruby strategy. Choosing a different strategy can make your code
3030
- # significantly slower in some cases (perhaps even the majority of cases), so you should
3031
- # only use this if you have benchmarked that it is faster for your use cases.
3032
- def eager_graph_with_options(associations, opts=OPTS)
3033
- opts = opts.dup unless opts.frozen?
3034
- associations = [associations] unless associations.is_a?(Array)
3035
- ds = if eg = @opts[:eager_graph]
3036
- eg = eg.dup
3037
- [:requirements, :reflections, :reciprocals, :limits].each{|k| eg[k] = eg[k].dup}
3038
- eg[:local] = opts
3039
- ds = clone(:eager_graph=>eg)
3040
- ds.eager_graph_associations(ds, model, ds.opts[:eager_graph][:master], [], *associations)
3041
- else
3042
- # Each of the following have a symbol key for the table alias, with the following values:
3043
- # :reciprocals :: the reciprocal value to use for this association
3044
- # :reflections :: AssociationReflection instance related to this association
3045
- # :requirements :: array of requirements for this association
3046
- # :limits :: Any limit/offset array slicing that need to be handled in ruby land after loading
3047
- opts = {:requirements=>{}, :master=>alias_symbol(first_source), :reflections=>{}, :reciprocals=>{}, :limits=>{}, :local=>opts, :cartesian_product_number=>0, :row_proc=>row_proc}
3048
- ds = clone(:eager_graph=>opts)
3049
- ds = ds.eager_graph_associations(ds, model, ds.opts[:eager_graph][:master], [], *associations).naked
3050
- end
3051
-
3052
- ds.opts[:eager_graph].freeze
3053
- ds.opts[:eager_graph].each_value{|v| v.freeze if v.is_a?(Hash)}
3054
- ds
3055
- end
3056
-
3057
- # If the dataset is being eagerly loaded, default to calling all
3058
- # instead of each.
3059
- def as_hash(key_column=nil, value_column=nil, opts=OPTS)
3060
- if (@opts[:eager_graph] || @opts[:eager]) && !opts.has_key?(:all)
3061
- opts = Hash[opts]
3062
- opts[:all] = true
3063
- end
3064
- super
3065
- end
3066
-
3067
- # If the dataset is being eagerly loaded, default to calling all
3068
- # instead of each.
3069
- def to_hash_groups(key_column, value_column=nil, opts=OPTS)
3070
- if (@opts[:eager_graph] || @opts[:eager]) && !opts.has_key?(:all)
3071
- opts = Hash[opts]
3072
- opts[:all] = true
3073
- end
3074
- super
3075
- end
3076
-
3077
- # Do not attempt to split the result set into associations,
3078
- # just return results as simple objects. This is useful if you
3079
- # want to use eager_graph as a shortcut to have all of the joins
3080
- # and aliasing set up, but want to do something else with the dataset.
3081
- def ungraphed
3082
- ds = super.clone(:eager_graph=>nil)
3083
- if (eg = @opts[:eager_graph]) && (rp = eg[:row_proc])
3084
- ds = ds.with_row_proc(rp)
3085
- end
3086
- ds
3087
- end
3088
-
3089
- protected
3090
-
3091
- # Call graph on the association with the correct arguments,
3092
- # update the eager_graph data structure, and recurse into
3093
- # eager_graph_associations if there are any passed in associations
3094
- # (which would be dependencies of the current association)
3095
- #
3096
- # Arguments:
3097
- # ds :: Current dataset
3098
- # model :: Current Model
3099
- # ta :: table_alias used for the parent association
3100
- # requirements :: an array, used as a stack for requirements
3101
- # r :: association reflection for the current association, or an SQL::AliasedExpression
3102
- # with the reflection as the expression and the alias base as the aliaz.
3103
- # *associations :: any associations dependent on this one
3104
- def eager_graph_association(ds, model, ta, requirements, r, *associations)
3105
- if r.is_a?(SQL::AliasedExpression)
3106
- alias_base = r.alias
3107
- r = r.expression
3108
- else
3109
- alias_base = r[:graph_alias_base]
3110
- end
3111
- assoc_table_alias = ds.unused_table_alias(alias_base)
3112
- loader = r[:eager_grapher]
3113
- if !associations.empty?
3114
- if associations.first.respond_to?(:call)
3115
- callback = associations.first
3116
- associations = {}
3117
- elsif associations.length == 1 && (assocs = associations.first).is_a?(Hash) && assocs.length == 1 && (pr_assoc = assocs.to_a.first) && pr_assoc.first.respond_to?(:call)
3118
- callback, assoc = pr_assoc
3119
- associations = assoc.is_a?(Array) ? assoc : [assoc]
3120
- end
3121
- end
3122
- local_opts = ds.opts[:eager_graph][:local]
3123
- limit_strategy = r.eager_graph_limit_strategy(local_opts[:limit_strategy])
3124
-
3125
- if r[:conditions] && !Sequel.condition_specifier?(r[:conditions]) && !r[:orig_opts].has_key?(:graph_conditions) && !r[:orig_opts].has_key?(:graph_only_conditions) && !r.has_key?(:graph_block)
3126
- raise Error, "Cannot eager_graph association when :conditions specified and not a hash or an array of pairs. Specify :graph_conditions, :graph_only_conditions, or :graph_block for the association. Model: #{r[:model]}, association: #{r[:name]}"
3127
- end
3128
-
3129
- ds = loader.call(:self=>ds, :table_alias=>assoc_table_alias, :implicit_qualifier=>(ta == ds.opts[:eager_graph][:master]) ? first_source : qualifier_from_alias_symbol(ta, first_source), :callback=>callback, :join_type=>local_opts[:join_type], :join_only=>local_opts[:join_only], :limit_strategy=>limit_strategy, :from_self_alias=>ds.opts[:eager_graph][:master])
3130
- if r[:order_eager_graph] && (order = r.fetch(:graph_order, r[:order]))
3131
- ds = ds.order_append(*qualified_expression(order, assoc_table_alias))
3132
- end
3133
- eager_graph = ds.opts[:eager_graph]
3134
- eager_graph[:requirements][assoc_table_alias] = requirements.dup
3135
- eager_graph[:reflections][assoc_table_alias] = r
3136
- if limit_strategy == :ruby
3137
- eager_graph[:limits][assoc_table_alias] = r.limit_and_offset
3138
- end
3139
- eager_graph[:cartesian_product_number] += r[:cartesian_product_number] || 2
3140
- ds = ds.eager_graph_associations(ds, r.associated_class, assoc_table_alias, requirements + [assoc_table_alias], *associations) unless associations.empty?
3141
- ds
3142
- end
3143
-
3144
- # Check the associations are valid for the given model.
3145
- # Call eager_graph_association on each association.
3146
- #
3147
- # Arguments:
3148
- # ds :: Current dataset
3149
- # model :: Current Model
3150
- # ta :: table_alias used for the parent association
3151
- # requirements :: an array, used as a stack for requirements
3152
- # *associations :: the associations to add to the graph
3153
- def eager_graph_associations(ds, model, ta, requirements, *associations)
3154
- return ds if associations.empty?
3155
- associations.flatten.each do |association|
3156
- ds = case association
3157
- when Symbol, SQL::AliasedExpression
3158
- ds.eager_graph_association(ds, model, ta, requirements, eager_graph_check_association(model, association))
3159
- when Hash
3160
- association.each do |assoc, assoc_assocs|
3161
- ds = ds.eager_graph_association(ds, model, ta, requirements, eager_graph_check_association(model, assoc), assoc_assocs)
3162
- end
3163
- ds
3164
- else
3165
- raise(Sequel::Error, 'Associations must be in the form of a symbol or hash')
3166
- end
3167
- end
3168
- ds
3169
- end
3170
-
3171
- # Replace the array of plain hashes with an array of model objects will all eager_graphed
3172
- # associations set in the associations cache for each object.
3173
- def eager_graph_build_associations(hashes)
3174
- hashes.replace(_eager_graph_build_associations(hashes, eager_graph_loader))
3175
- end
3176
-
3177
- private
3178
-
3179
- # Return a new dataset with JOINs of the given type added, using the tables and
3180
- # conditions specified by the associations.
3181
- def _association_join(type, associations)
3182
- clone(:join=>clone(:graph_from_self=>false).eager_graph_with_options(associations, :join_type=>type, :join_only=>true).opts[:join])
3183
- end
3184
-
3185
- # Process the array of hashes using the eager graph loader to return an array
3186
- # of model objects with the associations set.
3187
- def _eager_graph_build_associations(hashes, egl)
3188
- egl.load(hashes)
3189
- end
3190
-
3191
- # If the association has conditions itself, then it requires additional filters be
3192
- # added to the current dataset to ensure that the passed in object would also be
3193
- # included by the association's conditions.
3194
- def add_association_filter_conditions(ref, obj, expr)
3195
- if expr != SQL::Constants::FALSE && ref.filter_by_associations_add_conditions?
3196
- Sequel[ref.filter_by_associations_conditions_expression(obj)]
3197
- else
3198
- expr
3199
- end
3200
- end
3201
-
3202
- # Process the array of associations arguments (Symbols, Arrays, and Hashes),
3203
- # and return a hash of options suitable for cascading.
3204
- def eager_options_for_associations(associations)
3205
- opts = {}
3206
- associations.flatten.each do |association|
3207
- case association
3208
- when Symbol
3209
- check_association(model, association)
3210
- opts[association] = nil
3211
- when Hash
3212
- association.keys.each{|assoc| check_association(model, assoc)}
3213
- opts.merge!(association)
3214
- else
3215
- raise(Sequel::Error, 'Associations must be in the form of a symbol or hash')
3216
- end
3217
- end
3218
- opts
3219
- end
3220
-
3221
- # Return an expression for filtering by the given association reflection and associated object.
3222
- def association_filter_expression(op, ref, obj)
3223
- meth = :"#{ref[:type]}_association_filter_expression"
3224
- # Allow calling private association specific method to get filter expression
3225
- send(meth, op, ref, obj) if respond_to?(meth, true)
3226
- end
3227
-
3228
- # Handle inversion for association filters by returning an inverted expression,
3229
- # plus also handling cases where the referenced columns are NULL.
3230
- def association_filter_handle_inversion(op, exp, cols)
3231
- if op == :'!=' || op == :'NOT IN'
3232
- if exp == SQL::Constants::FALSE
3233
- ~exp
3234
- else
3235
- ~exp | Sequel::SQL::BooleanExpression.from_value_pairs(cols.zip([]), :OR)
3236
- end
3237
- else
3238
- exp
3239
- end
3240
- end
3241
-
3242
- # Return an expression for making sure that the given keys match the value of
3243
- # the given methods for either the single object given or for any of the objects
3244
- # given if +obj+ is an array.
3245
- def association_filter_key_expression(keys, meths, obj)
3246
- vals = if obj.is_a?(Sequel::Dataset)
3247
- {(keys.length == 1 ? keys.first : keys)=>obj.select(*meths).exclude(Sequel::SQL::BooleanExpression.from_value_pairs(meths.zip([]), :OR))}
3248
- else
3249
- vals = Array(obj).reject{|o| !meths.all?{|m| o.get_column_value(m)}}
3250
- return SQL::Constants::FALSE if vals.empty?
3251
- if obj.is_a?(Array)
3252
- if keys.length == 1
3253
- meth = meths.first
3254
- {keys.first=>vals.map{|o| o.get_column_value(meth)}}
3255
- else
3256
- {keys=>vals.map{|o| meths.map{|m| o.get_column_value(m)}}}
3257
- end
3258
- else
3259
- keys.zip(meths.map{|k| obj.get_column_value(k)})
3260
- end
3261
- end
3262
- SQL::BooleanExpression.from_value_pairs(vals)
3263
- end
3264
-
3265
- # Make sure the association is valid for this model, and return the related AssociationReflection.
3266
- def check_association(model, association)
3267
- raise(Sequel::UndefinedAssociation, "Invalid association #{association} for #{model.name}") unless reflection = model.association_reflection(association)
3268
- raise(Sequel::Error, "Eager loading is not allowed for #{model.name} association #{association}") if reflection[:allow_eager] == false
3269
- reflection
3270
- end
3271
-
3272
- # Allow associations that are eagerly graphed to be specified as an SQL::AliasedExpression, for
3273
- # per-call determining of the alias base.
3274
- def eager_graph_check_association(model, association)
3275
- if association.is_a?(SQL::AliasedExpression)
3276
- expr = association.expression
3277
- if expr.is_a?(SQL::Identifier)
3278
- expr = expr.value
3279
- if expr.is_a?(String)
3280
- expr = expr.to_sym
3281
- end
3282
- end
3283
-
3284
- SQL::AliasedExpression.new(check_association(model, expr), association.alias)
3285
- else
3286
- check_association(model, association)
3287
- end
3288
- end
3289
-
3290
- # The EagerGraphLoader instance used for converting eager_graph results.
3291
- def eager_graph_loader
3292
- unless egl = cache_get(:_model_eager_graph_loader)
3293
- egl = cache_set(:_model_eager_graph_loader, EagerGraphLoader.new(self))
3294
- end
3295
- egl.dup
3296
- end
3297
-
3298
- # Eagerly load all specified associations
3299
- def eager_load(a, eager_assoc=@opts[:eager])
3300
- return if a.empty?
3301
- # Key is foreign/primary key name symbol.
3302
- # Value is hash with keys being foreign/primary key values (generally integers)
3303
- # and values being an array of current model objects with that specific foreign/primary key
3304
- key_hash = {}
3305
- # Reflections for all associations to eager load
3306
- reflections = eager_assoc.keys.map{|assoc| model.association_reflection(assoc) || (raise Sequel::UndefinedAssociation, "Model: #{self}, Association: #{assoc}")}
3307
-
3308
- # Populate the key_hash entry for each association being eagerly loaded
3309
- reflections.each do |r|
3310
- if key = r.eager_loader_key
3311
- # key_hash for this key has already been populated,
3312
- # skip populating again so that duplicate values
3313
- # aren't added.
3314
- unless id_map = key_hash[key]
3315
- id_map = key_hash[key] = Hash.new{|h,k| h[k] = []}
3316
-
3317
- # Supporting both single (Symbol) and composite (Array) keys.
3318
- a.each do |rec|
3319
- case key
3320
- when Array
3321
- if (k = key.map{|k2| rec.get_column_value(k2)}) && k.all?
3322
- id_map[k] << rec
3323
- end
3324
- when Symbol
3325
- if k = rec.get_column_value(key)
3326
- id_map[k] << rec
3327
- end
3328
- else
3329
- raise Error, "unhandled eager_loader_key #{key.inspect} for association #{r[:name]}"
3330
- end
3331
- end
3332
- end
3333
- else
3334
- id_map = nil
3335
- end
3336
-
3337
- loader = r[:eager_loader]
3338
- associations = eager_assoc[r[:name]]
3339
- if associations.respond_to?(:call)
3340
- eager_block = associations
3341
- associations = OPTS
3342
- elsif associations.is_a?(Hash) && associations.length == 1 && (pr_assoc = associations.to_a.first) && pr_assoc.first.respond_to?(:call)
3343
- eager_block, associations = pr_assoc
3344
- end
3345
- loader.call(:key_hash=>key_hash, :rows=>a, :associations=>associations, :self=>self, :eager_block=>eager_block, :id_map=>id_map)
3346
- a.each{|object| object.send(:run_association_callbacks, r, :after_load, object.associations[r[:name]])} if r[:after_load]
3347
- end
3348
- end
3349
-
3350
- # Return a subquery expression for filering by a many_to_many association
3351
- def many_to_many_association_filter_expression(op, ref, obj)
3352
- lpks, lks, rks = ref.values_at(:left_primary_key_columns, :left_keys, :right_keys)
3353
- jt = ref.join_table_alias
3354
- lpks = lpks.first if lpks.length == 1
3355
- lpks = ref.qualify(model.table_name, lpks)
3356
-
3357
- meths = if obj.is_a?(Sequel::Dataset)
3358
- ref.qualify(obj.model.table_name, ref.right_primary_keys)
3359
- else
3360
- ref.right_primary_key_methods
3361
- end
3362
-
3363
- expr = association_filter_key_expression(ref.qualify(jt, rks), meths, obj)
3364
- unless expr == SQL::Constants::FALSE
3365
- expr = SQL::BooleanExpression.from_value_pairs(lpks=>model.db.from(ref[:join_table]).select(*ref.qualify(jt, lks)).where(expr).exclude(SQL::BooleanExpression.from_value_pairs(ref.qualify(jt, lks).zip([]), :OR)))
3366
- expr = add_association_filter_conditions(ref, obj, expr)
3367
- end
3368
-
3369
- association_filter_handle_inversion(op, expr, Array(lpks))
3370
- end
3371
- alias one_through_one_association_filter_expression many_to_many_association_filter_expression
3372
-
3373
- # Return a simple equality expression for filering by a many_to_one association
3374
- def many_to_one_association_filter_expression(op, ref, obj)
3375
- keys = ref.qualify(model.table_name, ref[:key_columns])
3376
- meths = if obj.is_a?(Sequel::Dataset)
3377
- ref.qualify(obj.model.table_name, ref.primary_keys)
3378
- else
3379
- ref.primary_key_methods
3380
- end
3381
-
3382
- expr = association_filter_key_expression(keys, meths, obj)
3383
- expr = add_association_filter_conditions(ref, obj, expr)
3384
- association_filter_handle_inversion(op, expr, keys)
3385
- end
3386
-
3387
- # Return a simple equality expression for filering by a one_to_* association
3388
- def one_to_many_association_filter_expression(op, ref, obj)
3389
- keys = ref.qualify(model.table_name, ref[:primary_key_columns])
3390
- meths = if obj.is_a?(Sequel::Dataset)
3391
- ref.qualify(obj.model.table_name, ref[:keys])
3392
- else
3393
- ref[:key_methods]
3394
- end
3395
-
3396
- expr = association_filter_key_expression(keys, meths, obj)
3397
- expr = add_association_filter_conditions(ref, obj, expr)
3398
- association_filter_handle_inversion(op, expr, keys)
3399
- end
3400
- alias one_to_one_association_filter_expression one_to_many_association_filter_expression
3401
-
3402
- def non_sql_option?(key)
3403
- super || key == :eager || key == :eager_graph
3404
- end
3405
-
3406
- # Build associations from the graph if #eager_graph was used,
3407
- # and/or load other associations if #eager was used.
3408
- def post_load(all_records)
3409
- eager_graph_build_associations(all_records) if @opts[:eager_graph]
3410
- eager_load(all_records) if @opts[:eager] && (row_proc || @opts[:eager_graph])
3411
- super
3412
- end
3413
- end
3414
-
3415
- # This class is the internal implementation of eager_graph. It is responsible for taking an array of plain
3416
- # hashes and returning an array of model objects with all eager_graphed associations already set in the
3417
- # association cache.
3418
- class EagerGraphLoader
3419
- # Hash with table alias symbol keys and after_load hook values
3420
- attr_reader :after_load_map
3421
-
3422
- # Hash with table alias symbol keys and association name values
3423
- attr_reader :alias_map
3424
-
3425
- # Hash with table alias symbol keys and subhash values mapping column_alias symbols to the
3426
- # symbol of the real name of the column
3427
- attr_reader :column_maps
3428
-
3429
- # Recursive hash with table alias symbol keys mapping to hashes with dependent table alias symbol keys.
3430
- attr_reader :dependency_map
3431
-
3432
- # Hash with table alias symbol keys and [limit, offset] values
3433
- attr_reader :limit_map
3434
-
3435
- # The table alias symbol for the primary model
3436
- attr_reader :master
3437
-
3438
- # Hash with table alias symbol keys and primary key symbol values (or arrays of primary key symbols for
3439
- # composite key tables)
3440
- attr_reader :primary_keys
3441
-
3442
- # Hash with table alias symbol keys and reciprocal association symbol values,
3443
- # used for setting reciprocals for one_to_many associations.
3444
- attr_reader :reciprocal_map
3445
-
3446
- # Hash with table alias symbol keys and subhash values mapping primary key symbols (or array of symbols)
3447
- # to model instances. Used so that only a single model instance is created for each object.
3448
- attr_reader :records_map
3449
-
3450
- # Hash with table alias symbol keys and AssociationReflection values
3451
- attr_reader :reflection_map
3452
-
3453
- # Hash with table alias symbol keys and callable values used to create model instances
3454
- attr_reader :row_procs
3455
-
3456
- # Hash with table alias symbol keys and true/false values, where true means the
3457
- # association represented by the table alias uses an array of values instead of
3458
- # a single value (i.e. true => *_many, false => *_to_one).
3459
- attr_reader :type_map
3460
-
3461
- # Initialize all of the data structures used during loading.
3462
- def initialize(dataset)
3463
- opts = dataset.opts
3464
- eager_graph = opts[:eager_graph]
3465
- @master = eager_graph[:master]
3466
- requirements = eager_graph[:requirements]
3467
- reflection_map = @reflection_map = eager_graph[:reflections]
3468
- reciprocal_map = @reciprocal_map = eager_graph[:reciprocals]
3469
- limit_map = @limit_map = eager_graph[:limits]
3470
- @unique = eager_graph[:cartesian_product_number] > 1
3471
-
3472
- alias_map = @alias_map = {}
3473
- type_map = @type_map = {}
3474
- after_load_map = @after_load_map = {}
3475
- reflection_map.each do |k, v|
3476
- alias_map[k] = v[:name]
3477
- after_load_map[k] = v[:after_load] if v[:after_load]
3478
- type_map[k] = if v.returns_array?
3479
- true
3480
- elsif (limit_and_offset = limit_map[k]) && !limit_and_offset.last.nil?
3481
- :offset
3482
- end
3483
- end
3484
- after_load_map.freeze
3485
- alias_map.freeze
3486
- type_map.freeze
3487
-
3488
- # Make dependency map hash out of requirements array for each association.
3489
- # This builds a tree of dependencies that will be used for recursion
3490
- # to ensure that all parts of the object graph are loaded into the
3491
- # appropriate subordinate association.
3492
- dependency_map = @dependency_map = {}
3493
- # Sort the associations by requirements length, so that
3494
- # requirements are added to the dependency hash before their
3495
- # dependencies.
3496
- requirements.sort_by{|a| a[1].length}.each do |ta, deps|
3497
- if deps.empty?
3498
- dependency_map[ta] = {}
3499
- else
3500
- deps = deps.dup
3501
- hash = dependency_map[deps.shift]
3502
- deps.each do |dep|
3503
- hash = hash[dep]
3504
- end
3505
- hash[ta] = {}
3506
- end
3507
- end
3508
- freezer = lambda do |h|
3509
- h.freeze
3510
- h.each_value(&freezer)
3511
- end
3512
- freezer.call(dependency_map)
3513
-
3514
- datasets = opts[:graph][:table_aliases].to_a.reject{|ta,ds| ds.nil?}
3515
- column_aliases = opts[:graph][:column_aliases]
3516
- primary_keys = {}
3517
- column_maps = {}
3518
- models = {}
3519
- row_procs = {}
3520
- datasets.each do |ta, ds|
3521
- models[ta] = ds.model
3522
- primary_keys[ta] = []
3523
- column_maps[ta] = {}
3524
- row_procs[ta] = ds.row_proc
3525
- end
3526
- column_aliases.each do |col_alias, tc|
3527
- ta, column = tc
3528
- column_maps[ta][col_alias] = column
3529
- end
3530
- column_maps.each do |ta, h|
3531
- pk = models[ta].primary_key
3532
- if pk.is_a?(Array)
3533
- primary_keys[ta] = []
3534
- h.select{|ca, c| primary_keys[ta] << ca if pk.include?(c)}
3535
- else
3536
- h.select{|ca, c| primary_keys[ta] = ca if pk == c}
3537
- end
3538
- end
3539
- @column_maps = column_maps.freeze
3540
- @primary_keys = primary_keys.freeze
3541
- @row_procs = row_procs.freeze
3542
-
3543
- # For performance, create two special maps for the master table,
3544
- # so you can skip a hash lookup.
3545
- @master_column_map = column_maps[master]
3546
- @master_primary_keys = primary_keys[master]
3547
-
3548
- # Add a special hash mapping table alias symbols to 5 element arrays that just
3549
- # contain the data in other data structures for that table alias. This is
3550
- # used for performance, to get all values in one hash lookup instead of
3551
- # separate hash lookups for each data structure.
3552
- ta_map = {}
3553
- alias_map.each_key do |ta|
3554
- ta_map[ta] = [row_procs[ta], alias_map[ta], type_map[ta], reciprocal_map[ta]].freeze
3555
- end
3556
- @ta_map = ta_map.freeze
3557
- freeze
3558
- end
3559
-
3560
- # Return an array of primary model instances with the associations cache prepopulated
3561
- # for all model objects (both primary and associated).
3562
- def load(hashes)
3563
- # This mapping is used to make sure that duplicate entries in the
3564
- # result set are mapped to a single record. For example, using a
3565
- # single one_to_many association with 10 associated records,
3566
- # the main object column values appear in the object graph 10 times.
3567
- # We map by primary key, if available, or by the object's entire values,
3568
- # if not. The mapping must be per table, so create sub maps for each table
3569
- # alias.
3570
- @records_map = records_map = {}
3571
- alias_map.keys.each{|ta| records_map[ta] = {}}
3572
-
3573
- master = master()
3574
-
3575
- # Assign to local variables for speed increase
3576
- rp = row_procs[master]
3577
- rm = records_map[master] = {}
3578
- dm = dependency_map
3579
-
3580
- records_map.freeze
3581
-
3582
- # This will hold the final record set that we will be replacing the object graph with.
3583
- records = []
3584
-
3585
- hashes.each do |h|
3586
- unless key = master_pk(h)
3587
- key = hkey(master_hfor(h))
3588
- end
3589
- unless primary_record = rm[key]
3590
- primary_record = rm[key] = rp.call(master_hfor(h))
3591
- # Only add it to the list of records to return if it is a new record
3592
- records.push(primary_record)
3593
- end
3594
- # Build all associations for the current object and it's dependencies
3595
- _load(dm, primary_record, h)
3596
- end
3597
-
3598
- # Remove duplicate records from all associations if this graph could possibly be a cartesian product
3599
- # Run after_load procs if there are any
3600
- post_process(records, dm) if @unique || !after_load_map.empty? || !limit_map.empty?
3601
-
3602
- records_map.each_value(&:freeze)
3603
- freeze
3604
-
3605
- records
3606
- end
3607
-
3608
- private
3609
-
3610
- # Recursive method that creates associated model objects and associates them to the current model object.
3611
- def _load(dependency_map, current, h)
3612
- dependency_map.each do |ta, deps|
3613
- unless key = pk(ta, h)
3614
- ta_h = hfor(ta, h)
3615
- unless ta_h.values.any?
3616
- assoc_name = alias_map[ta]
3617
- unless (assoc = current.associations).has_key?(assoc_name)
3618
- assoc[assoc_name] = type_map[ta] ? [] : nil
3619
- end
3620
- next
3621
- end
3622
- key = hkey(ta_h)
3623
- end
3624
- rp, assoc_name, tm, rcm = @ta_map[ta]
3625
- rm = records_map[ta]
3626
-
3627
- # Check type map for all dependencies, and use a unique
3628
- # object if any are dependencies for multiple objects,
3629
- # to prevent duplicate objects from showing up in the case
3630
- # the normal duplicate removal code is not being used.
3631
- if !@unique && !deps.empty? && deps.any?{|dep_key,_| @ta_map[dep_key][2]}
3632
- key = [current.object_id, key]
3633
- end
3634
-
3635
- unless rec = rm[key]
3636
- rec = rm[key] = rp.call(hfor(ta, h))
3637
- end
3638
-
3639
- if tm
3640
- unless (assoc = current.associations).has_key?(assoc_name)
3641
- assoc[assoc_name] = []
3642
- end
3643
- assoc[assoc_name].push(rec)
3644
- rec.associations[rcm] = current if rcm
3645
- else
3646
- current.associations[assoc_name] ||= rec
3647
- end
3648
- # Recurse into dependencies of the current object
3649
- _load(deps, rec, h) unless deps.empty?
3650
- end
3651
- end
3652
-
3653
- # Return the subhash for the specific table alias +ta+ by parsing the values out of the main hash +h+
3654
- def hfor(ta, h)
3655
- out = {}
3656
- @column_maps[ta].each{|ca, c| out[c] = h[ca]}
3657
- out
3658
- end
3659
-
3660
- # Return a suitable hash key for any subhash +h+, which is an array of values by column order.
3661
- # This is only used if the primary key cannot be used.
3662
- def hkey(h)
3663
- h.sort_by{|x| x[0]}
3664
- end
3665
-
3666
- # Return the subhash for the master table by parsing the values out of the main hash +h+
3667
- def master_hfor(h)
3668
- out = {}
3669
- @master_column_map.each{|ca, c| out[c] = h[ca]}
3670
- out
3671
- end
3672
-
3673
- # Return a primary key value for the master table by parsing it out of the main hash +h+.
3674
- def master_pk(h)
3675
- x = @master_primary_keys
3676
- if x.is_a?(Array)
3677
- unless x == []
3678
- x = x.map{|ca| h[ca]}
3679
- x if x.all?
3680
- end
3681
- else
3682
- h[x]
3683
- end
3684
- end
3685
-
3686
- # Return a primary key value for the given table alias by parsing it out of the main hash +h+.
3687
- def pk(ta, h)
3688
- x = primary_keys[ta]
3689
- if x.is_a?(Array)
3690
- unless x == []
3691
- x = x.map{|ca| h[ca]}
3692
- x if x.all?
3693
- end
3694
- else
3695
- h[x]
3696
- end
3697
- end
3698
-
3699
- # If the result set is the result of a cartesian product, then it is possible that
3700
- # there are multiple records for each association when there should only be one.
3701
- # In that case, for each object in all associations loaded via +eager_graph+, run
3702
- # uniq! on the association to make sure no duplicate records show up.
3703
- # Note that this can cause legitimate duplicate records to be removed.
3704
- def post_process(records, dependency_map)
3705
- records.each do |record|
3706
- dependency_map.each do |ta, deps|
3707
- assoc_name = alias_map[ta]
3708
- list = record.public_send(assoc_name)
3709
- rec_list = if type_map[ta]
3710
- list.uniq!
3711
- if lo = limit_map[ta]
3712
- limit, offset = lo
3713
- offset ||= 0
3714
- if type_map[ta] == :offset
3715
- [record.associations[assoc_name] = list[offset]]
3716
- else
3717
- list.replace(list[(offset)..(limit ? (offset)+limit-1 : -1)] || [])
3718
- end
3719
- else
3720
- list
3721
- end
3722
- elsif list
3723
- [list]
3724
- else
3725
- []
3726
- end
3727
- record.send(:run_association_callbacks, reflection_map[ta], :after_load, list) if after_load_map[ta]
3728
- post_process(rec_list, deps) if !rec_list.empty? && !deps.empty?
3729
- end
3730
- end
3731
- end
3732
- end
3733
- end
3734
- end
3735
- end