appmap 0.83.4 → 0.84.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (376) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/main.yml +16 -0
  3. data/CHANGELOG.md +33 -0
  4. data/appmap.gemspec +3 -2
  5. data/lib/appmap/agent.rb +6 -0
  6. data/lib/appmap/{gem_hooks → builtin_hooks}/activesupport.yml +6 -0
  7. data/lib/appmap/builtin_hooks/net/http.yml +1 -1
  8. data/lib/appmap/builtin_hooks/openssl.yml +34 -0
  9. data/lib/appmap/builtin_hooks/ruby.yml +1 -1
  10. data/lib/appmap/config.rb +3 -3
  11. data/lib/appmap/event.rb +2 -2
  12. data/lib/appmap/gem_hooks/actionpack.yml +2 -0
  13. data/lib/appmap/gem_hooks/random.yml +12 -0
  14. data/lib/appmap/handler/{eval.rb → eval_handler.rb} +4 -4
  15. data/lib/appmap/handler/{function.rb → function_handler.rb} +1 -1
  16. data/lib/appmap/handler/{net_http.rb → net_http_handler.rb} +3 -3
  17. data/lib/appmap/handler/open_ssl_handler.rb +16 -0
  18. data/lib/appmap/handler/rails/render_handler.rb +2 -2
  19. data/lib/appmap/handler/rails/template.rb +2 -2
  20. data/lib/appmap/hook/method.rb +1 -1
  21. data/lib/appmap/trace.rb +1 -1
  22. data/lib/appmap/util.rb +1 -0
  23. data/lib/appmap/version.rb +1 -1
  24. data/lib/appmap.rb +0 -7
  25. metadata +13 -361
  26. data/spec/class_map_spec.rb +0 -28
  27. data/spec/config_spec.rb +0 -155
  28. data/spec/depends/api_spec.rb +0 -196
  29. data/spec/depends/spec_helper.rb +0 -18
  30. data/spec/display_string_spec.rb +0 -40
  31. data/spec/fixtures/config/incomplete_config.yml +0 -1
  32. data/spec/fixtures/config/invalid_config.yml +0 -2
  33. data/spec/fixtures/config/invalid_yaml_config.yml +0 -3
  34. data/spec/fixtures/config/maximal_config.yml +0 -14
  35. data/spec/fixtures/config/missing_path_or_gem.yml +0 -3
  36. data/spec/fixtures/config/valid_config.yml +0 -3
  37. data/spec/fixtures/database.yml +0 -11
  38. data/spec/fixtures/depends/.gitignore +0 -2
  39. data/spec/fixtures/depends/app/controllers/api/api_keys_controller.rb +0 -2
  40. data/spec/fixtures/depends/app/controllers/organizations_controller.rb +0 -2
  41. data/spec/fixtures/depends/app/models/api_key.rb +0 -2
  42. data/spec/fixtures/depends/app/models/configuration.rb +0 -2
  43. data/spec/fixtures/depends/app/models/show.rb +0 -2
  44. data/spec/fixtures/depends/app/models/user.rb +0 -2
  45. data/spec/fixtures/depends/spec/actual_rspec_test.rb +0 -7
  46. data/spec/fixtures/depends/spec/api_spec.rb +0 -2
  47. data/spec/fixtures/depends/spec/user_spec.rb +0 -2
  48. data/spec/fixtures/depends/test/actual_minitest_test.rb +0 -5
  49. data/spec/fixtures/hook/.gitignore +0 -2
  50. data/spec/fixtures/hook/app/controllers/api/api_keys_controller.rb +0 -1
  51. data/spec/fixtures/hook/app/controllers/organizations_controller.rb +0 -1
  52. data/spec/fixtures/hook/app/models/api_key.rb +0 -1
  53. data/spec/fixtures/hook/app/models/configuration.rb +0 -1
  54. data/spec/fixtures/hook/app/models/show.rb +0 -1
  55. data/spec/fixtures/hook/app/models/user.rb +0 -1
  56. data/spec/fixtures/hook/attr_accessor.rb +0 -5
  57. data/spec/fixtures/hook/compare.rb +0 -7
  58. data/spec/fixtures/hook/constructor.rb +0 -7
  59. data/spec/fixtures/hook/custom_instance_method.rb +0 -11
  60. data/spec/fixtures/hook/exception_method.rb +0 -61
  61. data/spec/fixtures/hook/exclude.rb +0 -15
  62. data/spec/fixtures/hook/instance_method.rb +0 -31
  63. data/spec/fixtures/hook/kwargs.rb +0 -11
  64. data/spec/fixtures/hook/labels.rb +0 -6
  65. data/spec/fixtures/hook/method_named_call.rb +0 -11
  66. data/spec/fixtures/hook/pkg_a/a.rb +0 -7
  67. data/spec/fixtures/hook/prepended_override.rb +0 -14
  68. data/spec/fixtures/hook/protected_method.rb +0 -29
  69. data/spec/fixtures/hook/report_parameters.rb +0 -8
  70. data/spec/fixtures/hook/singleton_method.rb +0 -63
  71. data/spec/fixtures/hook/spec/api_spec.rb +0 -1
  72. data/spec/fixtures/hook/spec/user_spec.rb +0 -1
  73. data/spec/fixtures/hook/sub_packages.rb +0 -7
  74. data/spec/fixtures/rack_users_app/.dockerignore +0 -2
  75. data/spec/fixtures/rack_users_app/.gitignore +0 -2
  76. data/spec/fixtures/rack_users_app/Gemfile +0 -10
  77. data/spec/fixtures/rack_users_app/appmap.yml +0 -3
  78. data/spec/fixtures/rack_users_app/config.ru +0 -2
  79. data/spec/fixtures/rack_users_app/lib/app.rb +0 -36
  80. data/spec/fixtures/rails5_users_app/.dockerignore +0 -1
  81. data/spec/fixtures/rails5_users_app/.gitignore +0 -39
  82. data/spec/fixtures/rails5_users_app/.rspec +0 -1
  83. data/spec/fixtures/rails5_users_app/.ruby-version +0 -1
  84. data/spec/fixtures/rails5_users_app/Gemfile +0 -54
  85. data/spec/fixtures/rails5_users_app/Rakefile +0 -6
  86. data/spec/fixtures/rails5_users_app/app/controllers/api/users_controller.rb +0 -29
  87. data/spec/fixtures/rails5_users_app/app/controllers/application_controller.rb +0 -2
  88. data/spec/fixtures/rails5_users_app/app/controllers/concerns/.keep +0 -0
  89. data/spec/fixtures/rails5_users_app/app/controllers/health_controller.rb +0 -5
  90. data/spec/fixtures/rails5_users_app/app/controllers/users_controller.rb +0 -21
  91. data/spec/fixtures/rails5_users_app/app/models/activerecord/user.rb +0 -18
  92. data/spec/fixtures/rails5_users_app/app/models/concerns/.keep +0 -0
  93. data/spec/fixtures/rails5_users_app/app/models/sequel/user.rb +0 -25
  94. data/spec/fixtures/rails5_users_app/app/views/layouts/application.html.haml +0 -7
  95. data/spec/fixtures/rails5_users_app/app/views/users/index.html.haml +0 -7
  96. data/spec/fixtures/rails5_users_app/appmap.yml +0 -11
  97. data/spec/fixtures/rails5_users_app/bin/appmap +0 -29
  98. data/spec/fixtures/rails5_users_app/bin/byebug +0 -29
  99. data/spec/fixtures/rails5_users_app/bin/gli +0 -29
  100. data/spec/fixtures/rails5_users_app/bin/htmldiff +0 -29
  101. data/spec/fixtures/rails5_users_app/bin/ldiff +0 -29
  102. data/spec/fixtures/rails5_users_app/bin/nokogiri +0 -29
  103. data/spec/fixtures/rails5_users_app/bin/rackup +0 -29
  104. data/spec/fixtures/rails5_users_app/bin/rails +0 -4
  105. data/spec/fixtures/rails5_users_app/bin/rake +0 -29
  106. data/spec/fixtures/rails5_users_app/bin/rspec +0 -29
  107. data/spec/fixtures/rails5_users_app/bin/ruby-parse +0 -29
  108. data/spec/fixtures/rails5_users_app/bin/ruby-rewrite +0 -29
  109. data/spec/fixtures/rails5_users_app/bin/sequel +0 -29
  110. data/spec/fixtures/rails5_users_app/bin/setup +0 -25
  111. data/spec/fixtures/rails5_users_app/bin/sprockets +0 -29
  112. data/spec/fixtures/rails5_users_app/bin/thor +0 -29
  113. data/spec/fixtures/rails5_users_app/bin/update +0 -25
  114. data/spec/fixtures/rails5_users_app/config/application.rb +0 -45
  115. data/spec/fixtures/rails5_users_app/config/boot.rb +0 -3
  116. data/spec/fixtures/rails5_users_app/config/credentials.yml.enc +0 -1
  117. data/spec/fixtures/rails5_users_app/config/database.yml +0 -1
  118. data/spec/fixtures/rails5_users_app/config/environment.rb +0 -5
  119. data/spec/fixtures/rails5_users_app/config/environments/development.rb +0 -40
  120. data/spec/fixtures/rails5_users_app/config/environments/production.rb +0 -68
  121. data/spec/fixtures/rails5_users_app/config/environments/test.rb +0 -39
  122. data/spec/fixtures/rails5_users_app/config/initializers/application_controller_renderer.rb +0 -8
  123. data/spec/fixtures/rails5_users_app/config/initializers/backtrace_silencers.rb +0 -7
  124. data/spec/fixtures/rails5_users_app/config/initializers/cors.rb +0 -16
  125. data/spec/fixtures/rails5_users_app/config/initializers/filter_parameter_logging.rb +0 -4
  126. data/spec/fixtures/rails5_users_app/config/initializers/inflections.rb +0 -16
  127. data/spec/fixtures/rails5_users_app/config/initializers/mime_types.rb +0 -4
  128. data/spec/fixtures/rails5_users_app/config/initializers/wrap_parameters.rb +0 -9
  129. data/spec/fixtures/rails5_users_app/config/locales/en.yml +0 -33
  130. data/spec/fixtures/rails5_users_app/config/routes.rb +0 -11
  131. data/spec/fixtures/rails5_users_app/config.ru +0 -5
  132. data/spec/fixtures/rails5_users_app/db/migrate/20190728211408_create_users.rb +0 -9
  133. data/spec/fixtures/rails5_users_app/db/schema.rb +0 -23
  134. data/spec/fixtures/rails5_users_app/features/api_users.feature +0 -13
  135. data/spec/fixtures/rails5_users_app/features/support/env.rb +0 -4
  136. data/spec/fixtures/rails5_users_app/features/support/hooks.rb +0 -11
  137. data/spec/fixtures/rails5_users_app/features/support/steps.rb +0 -18
  138. data/spec/fixtures/rails5_users_app/lib/tasks/.keep +0 -0
  139. data/spec/fixtures/rails5_users_app/log/.keep +0 -0
  140. data/spec/fixtures/rails5_users_app/public/robots.txt +0 -1
  141. data/spec/fixtures/rails5_users_app/spec/controllers/users_controller_api_spec.rb +0 -42
  142. data/spec/fixtures/rails5_users_app/spec/controllers/users_controller_spec.rb +0 -27
  143. data/spec/fixtures/rails5_users_app/spec/models/user_spec.rb +0 -29
  144. data/spec/fixtures/rails5_users_app/spec/rails_helper.rb +0 -57
  145. data/spec/fixtures/rails5_users_app/spec/spec_helper.rb +0 -96
  146. data/spec/fixtures/rails5_users_app/users_app/.gitignore +0 -20
  147. data/spec/fixtures/rails6_users_app/.dockerignore +0 -1
  148. data/spec/fixtures/rails6_users_app/.gitignore +0 -39
  149. data/spec/fixtures/rails6_users_app/.rspec +0 -1
  150. data/spec/fixtures/rails6_users_app/Gemfile +0 -28
  151. data/spec/fixtures/rails6_users_app/Rakefile +0 -6
  152. data/spec/fixtures/rails6_users_app/app/controllers/api/users_controller.rb +0 -28
  153. data/spec/fixtures/rails6_users_app/app/controllers/application_controller.rb +0 -2
  154. data/spec/fixtures/rails6_users_app/app/controllers/concerns/.keep +0 -0
  155. data/spec/fixtures/rails6_users_app/app/controllers/health_controller.rb +0 -5
  156. data/spec/fixtures/rails6_users_app/app/controllers/users_controller.rb +0 -21
  157. data/spec/fixtures/rails6_users_app/app/models/activerecord/user.rb +0 -18
  158. data/spec/fixtures/rails6_users_app/app/models/concerns/.keep +0 -0
  159. data/spec/fixtures/rails6_users_app/app/models/sequel/user.rb +0 -25
  160. data/spec/fixtures/rails6_users_app/app/views/layouts/application.html.haml +0 -7
  161. data/spec/fixtures/rails6_users_app/app/views/users/index.html.haml +0 -7
  162. data/spec/fixtures/rails6_users_app/appmap.yml +0 -14
  163. data/spec/fixtures/rails6_users_app/bin/appmap +0 -29
  164. data/spec/fixtures/rails6_users_app/bin/byebug +0 -29
  165. data/spec/fixtures/rails6_users_app/bin/gli +0 -29
  166. data/spec/fixtures/rails6_users_app/bin/htmldiff +0 -29
  167. data/spec/fixtures/rails6_users_app/bin/ldiff +0 -29
  168. data/spec/fixtures/rails6_users_app/bin/nokogiri +0 -29
  169. data/spec/fixtures/rails6_users_app/bin/rackup +0 -29
  170. data/spec/fixtures/rails6_users_app/bin/rails +0 -4
  171. data/spec/fixtures/rails6_users_app/bin/rake +0 -29
  172. data/spec/fixtures/rails6_users_app/bin/rspec +0 -29
  173. data/spec/fixtures/rails6_users_app/bin/ruby-parse +0 -29
  174. data/spec/fixtures/rails6_users_app/bin/ruby-rewrite +0 -29
  175. data/spec/fixtures/rails6_users_app/bin/sequel +0 -29
  176. data/spec/fixtures/rails6_users_app/bin/setup +0 -25
  177. data/spec/fixtures/rails6_users_app/bin/sprockets +0 -29
  178. data/spec/fixtures/rails6_users_app/bin/thor +0 -29
  179. data/spec/fixtures/rails6_users_app/bin/update +0 -25
  180. data/spec/fixtures/rails6_users_app/config/application.rb +0 -45
  181. data/spec/fixtures/rails6_users_app/config/boot.rb +0 -3
  182. data/spec/fixtures/rails6_users_app/config/credentials.yml.enc +0 -1
  183. data/spec/fixtures/rails6_users_app/config/database.yml +0 -1
  184. data/spec/fixtures/rails6_users_app/config/environment.rb +0 -5
  185. data/spec/fixtures/rails6_users_app/config/environments/development.rb +0 -40
  186. data/spec/fixtures/rails6_users_app/config/environments/production.rb +0 -68
  187. data/spec/fixtures/rails6_users_app/config/environments/test.rb +0 -39
  188. data/spec/fixtures/rails6_users_app/config/initializers/application_controller_renderer.rb +0 -8
  189. data/spec/fixtures/rails6_users_app/config/initializers/backtrace_silencers.rb +0 -7
  190. data/spec/fixtures/rails6_users_app/config/initializers/cors.rb +0 -16
  191. data/spec/fixtures/rails6_users_app/config/initializers/filter_parameter_logging.rb +0 -4
  192. data/spec/fixtures/rails6_users_app/config/initializers/inflections.rb +0 -16
  193. data/spec/fixtures/rails6_users_app/config/initializers/mime_types.rb +0 -4
  194. data/spec/fixtures/rails6_users_app/config/initializers/wrap_parameters.rb +0 -9
  195. data/spec/fixtures/rails6_users_app/config/locales/en.yml +0 -33
  196. data/spec/fixtures/rails6_users_app/config/routes.rb +0 -11
  197. data/spec/fixtures/rails6_users_app/config.ru +0 -5
  198. data/spec/fixtures/rails6_users_app/db/migrate/20190728211408_create_users.rb +0 -9
  199. data/spec/fixtures/rails6_users_app/db/schema.rb +0 -23
  200. data/spec/fixtures/rails6_users_app/features/api_users.feature +0 -13
  201. data/spec/fixtures/rails6_users_app/features/support/env.rb +0 -4
  202. data/spec/fixtures/rails6_users_app/features/support/hooks.rb +0 -11
  203. data/spec/fixtures/rails6_users_app/features/support/steps.rb +0 -18
  204. data/spec/fixtures/rails6_users_app/lib/tasks/.keep +0 -0
  205. data/spec/fixtures/rails6_users_app/lib/tasks/appmap.rake +0 -23
  206. data/spec/fixtures/rails6_users_app/log/.keep +0 -0
  207. data/spec/fixtures/rails6_users_app/package.json +0 -8
  208. data/spec/fixtures/rails6_users_app/public/robots.txt +0 -1
  209. data/spec/fixtures/rails6_users_app/spec/controllers/users_controller_api_spec.rb +0 -42
  210. data/spec/fixtures/rails6_users_app/spec/controllers/users_controller_spec.rb +0 -27
  211. data/spec/fixtures/rails6_users_app/spec/models/user_spec.rb +0 -29
  212. data/spec/fixtures/rails6_users_app/spec/rails_helper.rb +0 -57
  213. data/spec/fixtures/rails6_users_app/spec/spec_helper.rb +0 -96
  214. data/spec/fixtures/rails6_users_app/test/controllers/functional_calc_test.rb +0 -10
  215. data/spec/fixtures/rails6_users_app/test/integration/integration_calc_test.rb +0 -12
  216. data/spec/fixtures/rails6_users_app/users_app/.gitignore +0 -20
  217. data/spec/fixtures/rails6_users_app/yarn.lock +0 -2020
  218. data/spec/fixtures/rails7_users_app/.dockerignore +0 -1
  219. data/spec/fixtures/rails7_users_app/.gitattributes +0 -7
  220. data/spec/fixtures/rails7_users_app/.gitignore +0 -31
  221. data/spec/fixtures/rails7_users_app/.rspec +0 -1
  222. data/spec/fixtures/rails7_users_app/Gemfile +0 -75
  223. data/spec/fixtures/rails7_users_app/README.md +0 -24
  224. data/spec/fixtures/rails7_users_app/Rakefile +0 -6
  225. data/spec/fixtures/rails7_users_app/app/assets/config/manifest.js +0 -4
  226. data/spec/fixtures/rails7_users_app/app/assets/images/.keep +0 -0
  227. data/spec/fixtures/rails7_users_app/app/assets/stylesheets/application.css +0 -15
  228. data/spec/fixtures/rails7_users_app/app/channels/application_cable/channel.rb +0 -4
  229. data/spec/fixtures/rails7_users_app/app/channels/application_cable/connection.rb +0 -4
  230. data/spec/fixtures/rails7_users_app/app/controllers/application_controller.rb +0 -2
  231. data/spec/fixtures/rails7_users_app/app/controllers/concerns/.keep +0 -0
  232. data/spec/fixtures/rails7_users_app/app/helpers/application_helper.rb +0 -2
  233. data/spec/fixtures/rails7_users_app/app/javascript/application.js +0 -3
  234. data/spec/fixtures/rails7_users_app/app/javascript/controllers/application.js +0 -9
  235. data/spec/fixtures/rails7_users_app/app/javascript/controllers/hello_controller.js +0 -7
  236. data/spec/fixtures/rails7_users_app/app/javascript/controllers/index.js +0 -11
  237. data/spec/fixtures/rails7_users_app/app/jobs/application_job.rb +0 -7
  238. data/spec/fixtures/rails7_users_app/app/mailers/application_mailer.rb +0 -4
  239. data/spec/fixtures/rails7_users_app/app/models/application_record.rb +0 -3
  240. data/spec/fixtures/rails7_users_app/app/models/concerns/.keep +0 -0
  241. data/spec/fixtures/rails7_users_app/app/models/instance.rb +0 -7
  242. data/spec/fixtures/rails7_users_app/app/models/instructor.rb +0 -7
  243. data/spec/fixtures/rails7_users_app/app/views/layouts/application.html.erb +0 -16
  244. data/spec/fixtures/rails7_users_app/app/views/layouts/mailer.html.erb +0 -13
  245. data/spec/fixtures/rails7_users_app/app/views/layouts/mailer.text.erb +0 -1
  246. data/spec/fixtures/rails7_users_app/appmap.yml +0 -3
  247. data/spec/fixtures/rails7_users_app/bin/bundle +0 -114
  248. data/spec/fixtures/rails7_users_app/bin/importmap +0 -4
  249. data/spec/fixtures/rails7_users_app/bin/rails +0 -4
  250. data/spec/fixtures/rails7_users_app/bin/rake +0 -4
  251. data/spec/fixtures/rails7_users_app/bin/setup +0 -33
  252. data/spec/fixtures/rails7_users_app/config/application.rb +0 -22
  253. data/spec/fixtures/rails7_users_app/config/boot.rb +0 -4
  254. data/spec/fixtures/rails7_users_app/config/cable.yml +0 -10
  255. data/spec/fixtures/rails7_users_app/config/credentials.yml.enc +0 -1
  256. data/spec/fixtures/rails7_users_app/config/database.yml +0 -1
  257. data/spec/fixtures/rails7_users_app/config/environment.rb +0 -5
  258. data/spec/fixtures/rails7_users_app/config/environments/development.rb +0 -70
  259. data/spec/fixtures/rails7_users_app/config/environments/production.rb +0 -93
  260. data/spec/fixtures/rails7_users_app/config/environments/test.rb +0 -60
  261. data/spec/fixtures/rails7_users_app/config/importmap.rb +0 -7
  262. data/spec/fixtures/rails7_users_app/config/initializers/assets.rb +0 -12
  263. data/spec/fixtures/rails7_users_app/config/initializers/content_security_policy.rb +0 -26
  264. data/spec/fixtures/rails7_users_app/config/initializers/filter_parameter_logging.rb +0 -8
  265. data/spec/fixtures/rails7_users_app/config/initializers/inflections.rb +0 -16
  266. data/spec/fixtures/rails7_users_app/config/initializers/permissions_policy.rb +0 -11
  267. data/spec/fixtures/rails7_users_app/config/locales/en.yml +0 -33
  268. data/spec/fixtures/rails7_users_app/config/puma.rb +0 -43
  269. data/spec/fixtures/rails7_users_app/config/routes.rb +0 -6
  270. data/spec/fixtures/rails7_users_app/config/storage.yml +0 -34
  271. data/spec/fixtures/rails7_users_app/config.ru +0 -6
  272. data/spec/fixtures/rails7_users_app/db/migrate/20220328093141_create_instances.rb +0 -8
  273. data/spec/fixtures/rails7_users_app/db/migrate/20220328093154_create_instructors.rb +0 -8
  274. data/spec/fixtures/rails7_users_app/db/schema.rb +0 -27
  275. data/spec/fixtures/rails7_users_app/db/seeds.rb +0 -7
  276. data/spec/fixtures/rails7_users_app/lib/assets/.keep +0 -0
  277. data/spec/fixtures/rails7_users_app/lib/tasks/.keep +0 -0
  278. data/spec/fixtures/rails7_users_app/log/.keep +0 -0
  279. data/spec/fixtures/rails7_users_app/public/404.html +0 -67
  280. data/spec/fixtures/rails7_users_app/public/422.html +0 -67
  281. data/spec/fixtures/rails7_users_app/public/500.html +0 -66
  282. data/spec/fixtures/rails7_users_app/public/apple-touch-icon-precomposed.png +0 -0
  283. data/spec/fixtures/rails7_users_app/public/apple-touch-icon.png +0 -0
  284. data/spec/fixtures/rails7_users_app/public/favicon.ico +0 -0
  285. data/spec/fixtures/rails7_users_app/public/robots.txt +0 -1
  286. data/spec/fixtures/rails7_users_app/storage/.keep +0 -0
  287. data/spec/fixtures/rails7_users_app/test/application_system_test_case.rb +0 -5
  288. data/spec/fixtures/rails7_users_app/test/channels/application_cable/connection_test.rb +0 -11
  289. data/spec/fixtures/rails7_users_app/test/controllers/.keep +0 -0
  290. data/spec/fixtures/rails7_users_app/test/fixtures/files/.keep +0 -0
  291. data/spec/fixtures/rails7_users_app/test/fixtures/instances.yml +0 -11
  292. data/spec/fixtures/rails7_users_app/test/fixtures/instructors.yml +0 -11
  293. data/spec/fixtures/rails7_users_app/test/helpers/.keep +0 -0
  294. data/spec/fixtures/rails7_users_app/test/integration/.keep +0 -0
  295. data/spec/fixtures/rails7_users_app/test/mailers/.keep +0 -0
  296. data/spec/fixtures/rails7_users_app/test/models/.keep +0 -0
  297. data/spec/fixtures/rails7_users_app/test/models/instance_test.rb +0 -6
  298. data/spec/fixtures/rails7_users_app/test/models/instructor_test.rb +0 -7
  299. data/spec/fixtures/rails7_users_app/test/system/.keep +0 -0
  300. data/spec/fixtures/rails7_users_app/test/test_helper.rb +0 -13
  301. data/spec/handler/class_with_eval.rb +0 -13
  302. data/spec/handler/eval_spec.rb +0 -73
  303. data/spec/hook_spec.rb +0 -1216
  304. data/spec/open_spec.rb +0 -19
  305. data/spec/rails_recording_spec.rb +0 -281
  306. data/spec/rails_spec_helper.rb +0 -107
  307. data/spec/rails_test_spec.rb +0 -35
  308. data/spec/railtie_spec.rb +0 -25
  309. data/spec/record_net_http_spec.rb +0 -161
  310. data/spec/record_sql_rails_pg_spec.rb +0 -59
  311. data/spec/remote_recording_spec.rb +0 -108
  312. data/spec/service/config_analyzer_spec.rb +0 -102
  313. data/spec/service/integration_test_path_finder_spec.rb +0 -24
  314. data/spec/service/validator/violation_spec.rb +0 -68
  315. data/spec/spec_helper.rb +0 -37
  316. data/spec/swagger/swagger_spec.rb +0 -85
  317. data/spec/util_spec.rb +0 -38
  318. data/test/agent_setup_init_test.rb +0 -39
  319. data/test/agent_setup_status_test.rb +0 -84
  320. data/test/agent_setup_validate_test.rb +0 -102
  321. data/test/bundle_vendor_test.rb +0 -35
  322. data/test/cucumber_test.rb +0 -72
  323. data/test/expectations/openssl_test_key_sign1.json +0 -53
  324. data/test/expectations/openssl_test_key_sign2-3.1.json +0 -53
  325. data/test/expectations/openssl_test_key_sign2.json +0 -58
  326. data/test/fixtures/bundle_vendor_app/Gemfile +0 -8
  327. data/test/fixtures/bundle_vendor_app/appmap.yml +0 -4
  328. data/test/fixtures/bundle_vendor_app/cli.rb +0 -54
  329. data/test/fixtures/cli_record_test/appmap.yml +0 -3
  330. data/test/fixtures/cli_record_test/lib/cli_record_test/main.rb +0 -9
  331. data/test/fixtures/cucumber4_recorder/Gemfile +0 -5
  332. data/test/fixtures/cucumber4_recorder/appmap.yml +0 -3
  333. data/test/fixtures/cucumber4_recorder/features/say_hello.feature +0 -5
  334. data/test/fixtures/cucumber4_recorder/features/support/env.rb +0 -5
  335. data/test/fixtures/cucumber4_recorder/features/support/hooks.rb +0 -11
  336. data/test/fixtures/cucumber4_recorder/features/support/steps.rb +0 -9
  337. data/test/fixtures/cucumber4_recorder/lib/hello.rb +0 -7
  338. data/test/fixtures/cucumber_recorder/Gemfile +0 -5
  339. data/test/fixtures/cucumber_recorder/appmap.yml +0 -3
  340. data/test/fixtures/cucumber_recorder/features/say_hello.feature +0 -5
  341. data/test/fixtures/cucumber_recorder/features/support/env.rb +0 -5
  342. data/test/fixtures/cucumber_recorder/features/support/hooks.rb +0 -11
  343. data/test/fixtures/cucumber_recorder/features/support/steps.rb +0 -9
  344. data/test/fixtures/cucumber_recorder/lib/hello.rb +0 -7
  345. data/test/fixtures/gem_test/Gemfile +0 -7
  346. data/test/fixtures/gem_test/appmap.yml +0 -3
  347. data/test/fixtures/gem_test/test/parser_test.rb +0 -12
  348. data/test/fixtures/minitest_recorder/Gemfile +0 -5
  349. data/test/fixtures/minitest_recorder/appmap.yml +0 -3
  350. data/test/fixtures/minitest_recorder/lib/hello.rb +0 -5
  351. data/test/fixtures/minitest_recorder/test/hello_test.rb +0 -12
  352. data/test/fixtures/mocha_mock_app/Gemfile +0 -5
  353. data/test/fixtures/mocha_mock_app/appmap.yml +0 -5
  354. data/test/fixtures/mocha_mock_app/lib/sheep.rb +0 -5
  355. data/test/fixtures/mocha_mock_app/test/sheep_test.rb +0 -18
  356. data/test/fixtures/openssl_recorder/Gemfile +0 -3
  357. data/test/fixtures/openssl_recorder/appmap.yml +0 -3
  358. data/test/fixtures/openssl_recorder/lib/openssl_cert_sign.rb +0 -94
  359. data/test/fixtures/openssl_recorder/lib/openssl_encrypt.rb +0 -34
  360. data/test/fixtures/openssl_recorder/lib/openssl_key_sign.rb +0 -28
  361. data/test/fixtures/process_recorder/appmap.yml +0 -3
  362. data/test/fixtures/process_recorder/hello.rb +0 -9
  363. data/test/fixtures/rspec_recorder/Gemfile +0 -5
  364. data/test/fixtures/rspec_recorder/appmap.yml +0 -3
  365. data/test/fixtures/rspec_recorder/lib/hello.rb +0 -5
  366. data/test/fixtures/rspec_recorder/spec/decorated_hello_spec.rb +0 -21
  367. data/test/fixtures/rspec_recorder/spec/labeled_hello_spec.rb +0 -9
  368. data/test/fixtures/rspec_recorder/spec/plain_hello_spec.rb +0 -9
  369. data/test/gem_test.rb +0 -35
  370. data/test/inspect_cli_test.rb +0 -12
  371. data/test/minitest_test.rb +0 -37
  372. data/test/mock_compatibility_test.rb +0 -45
  373. data/test/openssl_test.rb +0 -54
  374. data/test/record_process_test.rb +0 -35
  375. data/test/rspec_test.rb +0 -63
  376. data/test/test_helper.rb +0 -8
@@ -1,63 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- class SingletonMethod
4
- class << self
5
- def say_default
6
- 'default'
7
- end
8
- end
9
-
10
- def SingletonMethod.say_class_defined
11
- 'defined with explicit class scope'
12
- end
13
-
14
- def self.say_self_defined
15
- 'defined with self class scope'
16
- end
17
-
18
- module AddMethod
19
- def self.included(base)
20
- base.module_eval do
21
- define_method "added_method" do
22
- _added_method
23
- end
24
- end
25
- end
26
-
27
- def _added_method
28
- 'defined by including a module'
29
- end
30
- end
31
-
32
- # When called, do_include calls +include+ to bring in the module
33
- # AddMethod. AddMethod defines a new instance method, which gets
34
- # added to the singleton class of SingletonMethod.
35
- def do_include
36
- class << self
37
- SingletonMethod.include(AddMethod)
38
- end
39
- self
40
- end
41
-
42
- def self.new_with_instance_method
43
- SingletonMethod.new.tap do |m|
44
- def m.say_instance_defined
45
- 'defined for an instance'
46
- end
47
- end
48
- end
49
-
50
- STRUCT_TEST = Struct.new(:attr) do
51
- class << self
52
- def say_struct_singleton
53
- 'singleton for a struct'
54
- end
55
- end
56
- end
57
-
58
- def to_s
59
- 'Singleton Method fixture'
60
- end
61
- end
62
-
63
-
@@ -1 +0,0 @@
1
- # dummy
@@ -1 +0,0 @@
1
- # dummy
@@ -1,7 +0,0 @@
1
- require_relative 'pkg_a/a'
2
-
3
- module SubPackages
4
- def self.invoke_a
5
- PkgA::A.hello
6
- end
7
- end
@@ -1,2 +0,0 @@
1
- Gemfile.lock
2
-
@@ -1,2 +0,0 @@
1
- Gemfile.lock
2
-
@@ -1,10 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- gem 'rack'
4
- gem 'rack-app'
5
- gem 'rspec'
6
- gem 'pry-byebug'
7
-
8
- appmap_gem_opts = {}
9
- appmap_gem_opts[:path] = '../../..' if File.exist?('../../../appmap.gemspec')
10
- gem 'appmap', appmap_gem_opts
@@ -1,3 +0,0 @@
1
- name: rack_users_app
2
- packages:
3
- - path: lib
@@ -1,2 +0,0 @@
1
- require './lib/app.rb'
2
- run App
@@ -1,36 +0,0 @@
1
- require 'rack/app'
2
- require 'json'
3
-
4
- class App < Rack::App
5
- USERS = Hash.new
6
-
7
- class CodedError < StandardError
8
- attr_reader :code
9
-
10
- def initialize(code)
11
- @code = code
12
- end
13
- end
14
-
15
- get '/health' do
16
- response.status = 204
17
- end
18
-
19
- post '/users' do
20
- params = JSON.parse(request.body.read)
21
- user_id = params['login']
22
- password = params['password']
23
- halt 422 unless user_id && password
24
- USERS[user_id] = params
25
- response.headers['location'] = "/users/#{user_id}"
26
- response.status = 201
27
- end
28
-
29
- def halt(code)
30
- raise CodedError, code
31
- end
32
-
33
- error CodedError do |ex|
34
- response.status = ex.code
35
- end
36
- end
@@ -1 +0,0 @@
1
- Gemfile.lock
@@ -1,39 +0,0 @@
1
- # See https://help.github.com/articles/ignoring-files for more about ignoring files.
2
- #
3
- # If you find yourself ignoring temporary files generated by your text editor
4
- # or operating system, you probably want to add a global ignore instead:
5
- # git config --global core.excludesfile '~/.gitignore_global'
6
-
7
- # Ignore bundler config.
8
- /.bundle
9
- vendor
10
-
11
- # Ignore all logfiles and tempfiles.
12
- /log/*
13
- /tmp/*
14
- !/log/.keep
15
- !/tmp/.keep
16
-
17
- # Ignore uploaded files in development
18
- /storage/*
19
- !/storage/.keep
20
-
21
- /node_modules
22
- /yarn-error.log
23
-
24
- /public/assets
25
- .byebug_history
26
-
27
- # Ignore master key for decrypting credentials and more.
28
- /config/master.key
29
-
30
- # Other
31
- .DS_Store
32
- .appmap
33
- appmap.json
34
- appmap-recording-*.json
35
- capybara-*.html
36
-
37
- # appmap gem is pre-installed, don't lock to a version
38
- Gemfile.lock
39
-
@@ -1 +0,0 @@
1
- --require spec_helper
@@ -1 +0,0 @@
1
- 2.6.2
@@ -1,54 +0,0 @@
1
- source 'https://rubygems.org'
2
- git_source(:github) { |repo| "https://github.com/#{repo}.git" }
3
-
4
- gem 'rails', '~> 5'
5
-
6
- gem 'haml-rails'
7
-
8
- gem 'activerecord', require: false
9
- gem 'pg'
10
- gem 'sequel', '= 5.20.0', require: false
11
- gem 'sequel-rails', require: false
12
- gem 'sequel_secure_password', require: false
13
-
14
- appmap_path = \
15
- # Support debugging inside the container with volume-mounted source
16
- if File.directory?('/src/appmap-ruby')
17
- '/src/appmap-ruby'
18
- elsif File.exist?('../../../appmap.gemspec')
19
- '../../..'
20
- end
21
-
22
- if appmap_path
23
- # Set the branch parameter, so that 'bundle config local.appmap' will work
24
- appmap_branch = Dir.chdir appmap_path do
25
- `git rev-parse --abbrev-ref HEAD`.strip
26
- end
27
- end
28
-
29
- appmap_options = \
30
- if appmap_path && appmap_branch
31
- { git: appmap_path, branch: appmap_branch }
32
- elsif appmap_path
33
- { path: appmap_path }
34
- else
35
- {}
36
- end.merge(require: %w[appmap])
37
-
38
- group :development, :test do
39
- gem 'appmap', appmap_options
40
- gem 'cucumber-rails', require: false
41
- gem 'rspec-rails'
42
- # Call 'byebug' anywhere in the code to stop execution and get a debugger console
43
- gem 'pry-byebug'
44
- end
45
-
46
- group :test do
47
- # Require only one of these.
48
- # 'database_cleaner' requries 'database_cleaner-active_record', so don't require it.
49
- gem 'database_cleaner-active_record', require: false
50
- gem 'database_cleaner-sequel', require: false
51
- end
52
-
53
- group :development do
54
- end
@@ -1,6 +0,0 @@
1
- # Add your own tasks in files placed in lib/tasks ending in .rake,
2
- # for example lib/tasks/capistrano.rake, and they will automatically be available to Rake.
3
-
4
- require_relative 'config/application'
5
-
6
- Rails.application.load_tasks
@@ -1,29 +0,0 @@
1
- module Api
2
- class UsersController < ActionController::API
3
- def index
4
- @users = User.all
5
- render json: @users
6
- end
7
-
8
- def create
9
- params = self.params.key?(:user) ? self.params[:user] : self.params
10
-
11
- @user = build_user(params.slice(:login).to_unsafe_h)
12
- unless @user.valid?
13
- error = {
14
- code: 'invalid',
15
- target: 'User',
16
- message: @user.errors.full_messages.join(', '),
17
- details: @user.errors.map { |k, v| { code: 'invalid', target: k, message: Array(v).join(', ') } }
18
- }
19
- return render json: error, status: :unprocessable_entity
20
- end
21
- @user.save
22
- render json: @user, status: :created
23
- end
24
-
25
- def build_user(params)
26
- User.new(params)
27
- end
28
- end
29
- end
@@ -1,2 +0,0 @@
1
- class ApplicationController < ActionController::Base
2
- end
@@ -1,5 +0,0 @@
1
- class HealthController < ActionController::API
2
- def show
3
- render nothing: true, status: 204
4
- end
5
- end
@@ -1,21 +0,0 @@
1
- class UsersController < ApplicationController
2
- def index
3
- @users = User.all
4
- end
5
-
6
- def show
7
- find_user = lambda do |id|
8
- if User.respond_to?(:[])
9
- User[login: id]
10
- else
11
- User.find_by_login!(id)
12
- end
13
- end
14
-
15
- if (@user = find_user.(params[:id]))
16
- render plain: @user
17
- else
18
- render plain: 'Not found', status: 404
19
- end
20
- end
21
- end
@@ -1,18 +0,0 @@
1
- class User < ActiveRecord::Base
2
- has_secure_password validations: false
3
- validates_presence_of :login
4
- validates_confirmation_of :password, if: -> { password_provided? }
5
-
6
- def authenticate(unencrypted)
7
- # Just be extra sure that empty passwords aren't accepted
8
- return false if unencrypted.blank? || password.blank?
9
-
10
- super
11
- end
12
-
13
- protected
14
-
15
- def password_provided?
16
- !(password.blank? && password_confirmation.blank?)
17
- end
18
- end
@@ -1,25 +0,0 @@
1
- class User < Sequel::Model(:users)
2
- plugin :secure_password, cost: 12, include_validations: false
3
- plugin :validation_helpers
4
-
5
- def authenticate(unencrypted)
6
- # Just be extra sure that empty passwords aren't accepted
7
- return false if unencrypted.blank? || password.blank?
8
-
9
- super
10
- end
11
-
12
- def validate
13
- super
14
-
15
- errors.add :password, 'doesn\'t match confirmation' if password_provided? && password != password_confirmation
16
-
17
- validates_presence %i[login]
18
- end
19
-
20
- protected
21
-
22
- def password_provided?
23
- !(password.blank? && password_confirmation.blank?)
24
- end
25
- end
@@ -1,7 +0,0 @@
1
- !!!
2
- %html
3
- %head
4
- %meta{:content => "text/html; charset=UTF-8", "http-equiv" => "Content-Type"}/
5
- %title Rails Users App
6
- %body
7
- = yield
@@ -1,7 +0,0 @@
1
- %h1{style: 'margin-top: 2em'}
2
- = pluralize @users.size, 'user'
3
-
4
- %ul
5
- - for user in @users
6
- %li
7
- = user.login
@@ -1,11 +0,0 @@
1
- name: rails5_users_app
2
- packages:
3
- - path: app/models
4
- labels: [ mvc.model ]
5
- - path: app/controllers
6
- labels: [ mvc.controller ]
7
- - gem: sequel
8
- functions:
9
- - name: logger/Logger::LogDevice#write
10
- builtin: true
11
- label: log
@@ -1,29 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # frozen_string_literal: true
3
-
4
- #
5
- # This file was generated by Bundler.
6
- #
7
- # The application 'appmap' is installed as part of a gem, and
8
- # this file is here to facilitate running it.
9
- #
10
-
11
- require "pathname"
12
- ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
13
- Pathname.new(__FILE__).realpath)
14
-
15
- bundle_binstub = File.expand_path("../bundle", __FILE__)
16
-
17
- if File.file?(bundle_binstub)
18
- if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/
19
- load(bundle_binstub)
20
- else
21
- abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
22
- Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
23
- end
24
- end
25
-
26
- require "rubygems"
27
- require "bundler/setup"
28
-
29
- load Gem.bin_path("appmap", "appmap")
@@ -1,29 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # frozen_string_literal: true
3
-
4
- #
5
- # This file was generated by Bundler.
6
- #
7
- # The application 'byebug' is installed as part of a gem, and
8
- # this file is here to facilitate running it.
9
- #
10
-
11
- require "pathname"
12
- ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
13
- Pathname.new(__FILE__).realpath)
14
-
15
- bundle_binstub = File.expand_path("../bundle", __FILE__)
16
-
17
- if File.file?(bundle_binstub)
18
- if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/
19
- load(bundle_binstub)
20
- else
21
- abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
22
- Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
23
- end
24
- end
25
-
26
- require "rubygems"
27
- require "bundler/setup"
28
-
29
- load Gem.bin_path("byebug", "byebug")
@@ -1,29 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # frozen_string_literal: true
3
-
4
- #
5
- # This file was generated by Bundler.
6
- #
7
- # The application 'gli' is installed as part of a gem, and
8
- # this file is here to facilitate running it.
9
- #
10
-
11
- require "pathname"
12
- ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
13
- Pathname.new(__FILE__).realpath)
14
-
15
- bundle_binstub = File.expand_path("../bundle", __FILE__)
16
-
17
- if File.file?(bundle_binstub)
18
- if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/
19
- load(bundle_binstub)
20
- else
21
- abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
22
- Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
23
- end
24
- end
25
-
26
- require "rubygems"
27
- require "bundler/setup"
28
-
29
- load Gem.bin_path("gli", "gli")
@@ -1,29 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # frozen_string_literal: true
3
-
4
- #
5
- # This file was generated by Bundler.
6
- #
7
- # The application 'htmldiff' is installed as part of a gem, and
8
- # this file is here to facilitate running it.
9
- #
10
-
11
- require "pathname"
12
- ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
13
- Pathname.new(__FILE__).realpath)
14
-
15
- bundle_binstub = File.expand_path("../bundle", __FILE__)
16
-
17
- if File.file?(bundle_binstub)
18
- if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/
19
- load(bundle_binstub)
20
- else
21
- abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
22
- Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
23
- end
24
- end
25
-
26
- require "rubygems"
27
- require "bundler/setup"
28
-
29
- load Gem.bin_path("diff-lcs", "htmldiff")
@@ -1,29 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # frozen_string_literal: true
3
-
4
- #
5
- # This file was generated by Bundler.
6
- #
7
- # The application 'ldiff' is installed as part of a gem, and
8
- # this file is here to facilitate running it.
9
- #
10
-
11
- require "pathname"
12
- ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
13
- Pathname.new(__FILE__).realpath)
14
-
15
- bundle_binstub = File.expand_path("../bundle", __FILE__)
16
-
17
- if File.file?(bundle_binstub)
18
- if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/
19
- load(bundle_binstub)
20
- else
21
- abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
22
- Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
23
- end
24
- end
25
-
26
- require "rubygems"
27
- require "bundler/setup"
28
-
29
- load Gem.bin_path("diff-lcs", "ldiff")
@@ -1,29 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # frozen_string_literal: true
3
-
4
- #
5
- # This file was generated by Bundler.
6
- #
7
- # The application 'nokogiri' is installed as part of a gem, and
8
- # this file is here to facilitate running it.
9
- #
10
-
11
- require "pathname"
12
- ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
13
- Pathname.new(__FILE__).realpath)
14
-
15
- bundle_binstub = File.expand_path("../bundle", __FILE__)
16
-
17
- if File.file?(bundle_binstub)
18
- if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/
19
- load(bundle_binstub)
20
- else
21
- abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
22
- Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
23
- end
24
- end
25
-
26
- require "rubygems"
27
- require "bundler/setup"
28
-
29
- load Gem.bin_path("nokogiri", "nokogiri")
@@ -1,29 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # frozen_string_literal: true
3
-
4
- #
5
- # This file was generated by Bundler.
6
- #
7
- # The application 'rackup' is installed as part of a gem, and
8
- # this file is here to facilitate running it.
9
- #
10
-
11
- require "pathname"
12
- ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
13
- Pathname.new(__FILE__).realpath)
14
-
15
- bundle_binstub = File.expand_path("../bundle", __FILE__)
16
-
17
- if File.file?(bundle_binstub)
18
- if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/
19
- load(bundle_binstub)
20
- else
21
- abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
22
- Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
23
- end
24
- end
25
-
26
- require "rubygems"
27
- require "bundler/setup"
28
-
29
- load Gem.bin_path("rack", "rackup")
@@ -1,4 +0,0 @@
1
- #!/usr/bin/env ruby
2
- APP_PATH = File.expand_path('../config/application', __dir__)
3
- require_relative '../config/boot'
4
- require 'rails/commands'
@@ -1,29 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # frozen_string_literal: true
3
-
4
- #
5
- # This file was generated by Bundler.
6
- #
7
- # The application 'rake' is installed as part of a gem, and
8
- # this file is here to facilitate running it.
9
- #
10
-
11
- require "pathname"
12
- ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
13
- Pathname.new(__FILE__).realpath)
14
-
15
- bundle_binstub = File.expand_path("../bundle", __FILE__)
16
-
17
- if File.file?(bundle_binstub)
18
- if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/
19
- load(bundle_binstub)
20
- else
21
- abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
22
- Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
23
- end
24
- end
25
-
26
- require "rubygems"
27
- require "bundler/setup"
28
-
29
- load Gem.bin_path("rake", "rake")