appmap 0.83.4 → 0.84.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/main.yml +16 -0
- data/CHANGELOG.md +33 -0
- data/appmap.gemspec +3 -2
- data/lib/appmap/agent.rb +6 -0
- data/lib/appmap/{gem_hooks → builtin_hooks}/activesupport.yml +6 -0
- data/lib/appmap/builtin_hooks/net/http.yml +1 -1
- data/lib/appmap/builtin_hooks/openssl.yml +34 -0
- data/lib/appmap/builtin_hooks/ruby.yml +1 -1
- data/lib/appmap/config.rb +3 -3
- data/lib/appmap/event.rb +2 -2
- data/lib/appmap/gem_hooks/actionpack.yml +2 -0
- data/lib/appmap/gem_hooks/random.yml +12 -0
- data/lib/appmap/handler/{eval.rb → eval_handler.rb} +4 -4
- data/lib/appmap/handler/{function.rb → function_handler.rb} +1 -1
- data/lib/appmap/handler/{net_http.rb → net_http_handler.rb} +3 -3
- data/lib/appmap/handler/open_ssl_handler.rb +16 -0
- data/lib/appmap/handler/rails/render_handler.rb +2 -2
- data/lib/appmap/handler/rails/template.rb +2 -2
- data/lib/appmap/hook/method.rb +1 -1
- data/lib/appmap/trace.rb +1 -1
- data/lib/appmap/util.rb +1 -0
- data/lib/appmap/version.rb +1 -1
- data/lib/appmap.rb +0 -7
- metadata +13 -361
- data/spec/class_map_spec.rb +0 -28
- data/spec/config_spec.rb +0 -155
- data/spec/depends/api_spec.rb +0 -196
- data/spec/depends/spec_helper.rb +0 -18
- data/spec/display_string_spec.rb +0 -40
- data/spec/fixtures/config/incomplete_config.yml +0 -1
- data/spec/fixtures/config/invalid_config.yml +0 -2
- data/spec/fixtures/config/invalid_yaml_config.yml +0 -3
- data/spec/fixtures/config/maximal_config.yml +0 -14
- data/spec/fixtures/config/missing_path_or_gem.yml +0 -3
- data/spec/fixtures/config/valid_config.yml +0 -3
- data/spec/fixtures/database.yml +0 -11
- data/spec/fixtures/depends/.gitignore +0 -2
- data/spec/fixtures/depends/app/controllers/api/api_keys_controller.rb +0 -2
- data/spec/fixtures/depends/app/controllers/organizations_controller.rb +0 -2
- data/spec/fixtures/depends/app/models/api_key.rb +0 -2
- data/spec/fixtures/depends/app/models/configuration.rb +0 -2
- data/spec/fixtures/depends/app/models/show.rb +0 -2
- data/spec/fixtures/depends/app/models/user.rb +0 -2
- data/spec/fixtures/depends/spec/actual_rspec_test.rb +0 -7
- data/spec/fixtures/depends/spec/api_spec.rb +0 -2
- data/spec/fixtures/depends/spec/user_spec.rb +0 -2
- data/spec/fixtures/depends/test/actual_minitest_test.rb +0 -5
- data/spec/fixtures/hook/.gitignore +0 -2
- data/spec/fixtures/hook/app/controllers/api/api_keys_controller.rb +0 -1
- data/spec/fixtures/hook/app/controllers/organizations_controller.rb +0 -1
- data/spec/fixtures/hook/app/models/api_key.rb +0 -1
- data/spec/fixtures/hook/app/models/configuration.rb +0 -1
- data/spec/fixtures/hook/app/models/show.rb +0 -1
- data/spec/fixtures/hook/app/models/user.rb +0 -1
- data/spec/fixtures/hook/attr_accessor.rb +0 -5
- data/spec/fixtures/hook/compare.rb +0 -7
- data/spec/fixtures/hook/constructor.rb +0 -7
- data/spec/fixtures/hook/custom_instance_method.rb +0 -11
- data/spec/fixtures/hook/exception_method.rb +0 -61
- data/spec/fixtures/hook/exclude.rb +0 -15
- data/spec/fixtures/hook/instance_method.rb +0 -31
- data/spec/fixtures/hook/kwargs.rb +0 -11
- data/spec/fixtures/hook/labels.rb +0 -6
- data/spec/fixtures/hook/method_named_call.rb +0 -11
- data/spec/fixtures/hook/pkg_a/a.rb +0 -7
- data/spec/fixtures/hook/prepended_override.rb +0 -14
- data/spec/fixtures/hook/protected_method.rb +0 -29
- data/spec/fixtures/hook/report_parameters.rb +0 -8
- data/spec/fixtures/hook/singleton_method.rb +0 -63
- data/spec/fixtures/hook/spec/api_spec.rb +0 -1
- data/spec/fixtures/hook/spec/user_spec.rb +0 -1
- data/spec/fixtures/hook/sub_packages.rb +0 -7
- data/spec/fixtures/rack_users_app/.dockerignore +0 -2
- data/spec/fixtures/rack_users_app/.gitignore +0 -2
- data/spec/fixtures/rack_users_app/Gemfile +0 -10
- data/spec/fixtures/rack_users_app/appmap.yml +0 -3
- data/spec/fixtures/rack_users_app/config.ru +0 -2
- data/spec/fixtures/rack_users_app/lib/app.rb +0 -36
- data/spec/fixtures/rails5_users_app/.dockerignore +0 -1
- data/spec/fixtures/rails5_users_app/.gitignore +0 -39
- data/spec/fixtures/rails5_users_app/.rspec +0 -1
- data/spec/fixtures/rails5_users_app/.ruby-version +0 -1
- data/spec/fixtures/rails5_users_app/Gemfile +0 -54
- data/spec/fixtures/rails5_users_app/Rakefile +0 -6
- data/spec/fixtures/rails5_users_app/app/controllers/api/users_controller.rb +0 -29
- data/spec/fixtures/rails5_users_app/app/controllers/application_controller.rb +0 -2
- data/spec/fixtures/rails5_users_app/app/controllers/concerns/.keep +0 -0
- data/spec/fixtures/rails5_users_app/app/controllers/health_controller.rb +0 -5
- data/spec/fixtures/rails5_users_app/app/controllers/users_controller.rb +0 -21
- data/spec/fixtures/rails5_users_app/app/models/activerecord/user.rb +0 -18
- data/spec/fixtures/rails5_users_app/app/models/concerns/.keep +0 -0
- data/spec/fixtures/rails5_users_app/app/models/sequel/user.rb +0 -25
- data/spec/fixtures/rails5_users_app/app/views/layouts/application.html.haml +0 -7
- data/spec/fixtures/rails5_users_app/app/views/users/index.html.haml +0 -7
- data/spec/fixtures/rails5_users_app/appmap.yml +0 -11
- data/spec/fixtures/rails5_users_app/bin/appmap +0 -29
- data/spec/fixtures/rails5_users_app/bin/byebug +0 -29
- data/spec/fixtures/rails5_users_app/bin/gli +0 -29
- data/spec/fixtures/rails5_users_app/bin/htmldiff +0 -29
- data/spec/fixtures/rails5_users_app/bin/ldiff +0 -29
- data/spec/fixtures/rails5_users_app/bin/nokogiri +0 -29
- data/spec/fixtures/rails5_users_app/bin/rackup +0 -29
- data/spec/fixtures/rails5_users_app/bin/rails +0 -4
- data/spec/fixtures/rails5_users_app/bin/rake +0 -29
- data/spec/fixtures/rails5_users_app/bin/rspec +0 -29
- data/spec/fixtures/rails5_users_app/bin/ruby-parse +0 -29
- data/spec/fixtures/rails5_users_app/bin/ruby-rewrite +0 -29
- data/spec/fixtures/rails5_users_app/bin/sequel +0 -29
- data/spec/fixtures/rails5_users_app/bin/setup +0 -25
- data/spec/fixtures/rails5_users_app/bin/sprockets +0 -29
- data/spec/fixtures/rails5_users_app/bin/thor +0 -29
- data/spec/fixtures/rails5_users_app/bin/update +0 -25
- data/spec/fixtures/rails5_users_app/config/application.rb +0 -45
- data/spec/fixtures/rails5_users_app/config/boot.rb +0 -3
- data/spec/fixtures/rails5_users_app/config/credentials.yml.enc +0 -1
- data/spec/fixtures/rails5_users_app/config/database.yml +0 -1
- data/spec/fixtures/rails5_users_app/config/environment.rb +0 -5
- data/spec/fixtures/rails5_users_app/config/environments/development.rb +0 -40
- data/spec/fixtures/rails5_users_app/config/environments/production.rb +0 -68
- data/spec/fixtures/rails5_users_app/config/environments/test.rb +0 -39
- data/spec/fixtures/rails5_users_app/config/initializers/application_controller_renderer.rb +0 -8
- data/spec/fixtures/rails5_users_app/config/initializers/backtrace_silencers.rb +0 -7
- data/spec/fixtures/rails5_users_app/config/initializers/cors.rb +0 -16
- data/spec/fixtures/rails5_users_app/config/initializers/filter_parameter_logging.rb +0 -4
- data/spec/fixtures/rails5_users_app/config/initializers/inflections.rb +0 -16
- data/spec/fixtures/rails5_users_app/config/initializers/mime_types.rb +0 -4
- data/spec/fixtures/rails5_users_app/config/initializers/wrap_parameters.rb +0 -9
- data/spec/fixtures/rails5_users_app/config/locales/en.yml +0 -33
- data/spec/fixtures/rails5_users_app/config/routes.rb +0 -11
- data/spec/fixtures/rails5_users_app/config.ru +0 -5
- data/spec/fixtures/rails5_users_app/db/migrate/20190728211408_create_users.rb +0 -9
- data/spec/fixtures/rails5_users_app/db/schema.rb +0 -23
- data/spec/fixtures/rails5_users_app/features/api_users.feature +0 -13
- data/spec/fixtures/rails5_users_app/features/support/env.rb +0 -4
- data/spec/fixtures/rails5_users_app/features/support/hooks.rb +0 -11
- data/spec/fixtures/rails5_users_app/features/support/steps.rb +0 -18
- data/spec/fixtures/rails5_users_app/lib/tasks/.keep +0 -0
- data/spec/fixtures/rails5_users_app/log/.keep +0 -0
- data/spec/fixtures/rails5_users_app/public/robots.txt +0 -1
- data/spec/fixtures/rails5_users_app/spec/controllers/users_controller_api_spec.rb +0 -42
- data/spec/fixtures/rails5_users_app/spec/controllers/users_controller_spec.rb +0 -27
- data/spec/fixtures/rails5_users_app/spec/models/user_spec.rb +0 -29
- data/spec/fixtures/rails5_users_app/spec/rails_helper.rb +0 -57
- data/spec/fixtures/rails5_users_app/spec/spec_helper.rb +0 -96
- data/spec/fixtures/rails5_users_app/users_app/.gitignore +0 -20
- data/spec/fixtures/rails6_users_app/.dockerignore +0 -1
- data/spec/fixtures/rails6_users_app/.gitignore +0 -39
- data/spec/fixtures/rails6_users_app/.rspec +0 -1
- data/spec/fixtures/rails6_users_app/Gemfile +0 -28
- data/spec/fixtures/rails6_users_app/Rakefile +0 -6
- data/spec/fixtures/rails6_users_app/app/controllers/api/users_controller.rb +0 -28
- data/spec/fixtures/rails6_users_app/app/controllers/application_controller.rb +0 -2
- data/spec/fixtures/rails6_users_app/app/controllers/concerns/.keep +0 -0
- data/spec/fixtures/rails6_users_app/app/controllers/health_controller.rb +0 -5
- data/spec/fixtures/rails6_users_app/app/controllers/users_controller.rb +0 -21
- data/spec/fixtures/rails6_users_app/app/models/activerecord/user.rb +0 -18
- data/spec/fixtures/rails6_users_app/app/models/concerns/.keep +0 -0
- data/spec/fixtures/rails6_users_app/app/models/sequel/user.rb +0 -25
- data/spec/fixtures/rails6_users_app/app/views/layouts/application.html.haml +0 -7
- data/spec/fixtures/rails6_users_app/app/views/users/index.html.haml +0 -7
- data/spec/fixtures/rails6_users_app/appmap.yml +0 -14
- data/spec/fixtures/rails6_users_app/bin/appmap +0 -29
- data/spec/fixtures/rails6_users_app/bin/byebug +0 -29
- data/spec/fixtures/rails6_users_app/bin/gli +0 -29
- data/spec/fixtures/rails6_users_app/bin/htmldiff +0 -29
- data/spec/fixtures/rails6_users_app/bin/ldiff +0 -29
- data/spec/fixtures/rails6_users_app/bin/nokogiri +0 -29
- data/spec/fixtures/rails6_users_app/bin/rackup +0 -29
- data/spec/fixtures/rails6_users_app/bin/rails +0 -4
- data/spec/fixtures/rails6_users_app/bin/rake +0 -29
- data/spec/fixtures/rails6_users_app/bin/rspec +0 -29
- data/spec/fixtures/rails6_users_app/bin/ruby-parse +0 -29
- data/spec/fixtures/rails6_users_app/bin/ruby-rewrite +0 -29
- data/spec/fixtures/rails6_users_app/bin/sequel +0 -29
- data/spec/fixtures/rails6_users_app/bin/setup +0 -25
- data/spec/fixtures/rails6_users_app/bin/sprockets +0 -29
- data/spec/fixtures/rails6_users_app/bin/thor +0 -29
- data/spec/fixtures/rails6_users_app/bin/update +0 -25
- data/spec/fixtures/rails6_users_app/config/application.rb +0 -45
- data/spec/fixtures/rails6_users_app/config/boot.rb +0 -3
- data/spec/fixtures/rails6_users_app/config/credentials.yml.enc +0 -1
- data/spec/fixtures/rails6_users_app/config/database.yml +0 -1
- data/spec/fixtures/rails6_users_app/config/environment.rb +0 -5
- data/spec/fixtures/rails6_users_app/config/environments/development.rb +0 -40
- data/spec/fixtures/rails6_users_app/config/environments/production.rb +0 -68
- data/spec/fixtures/rails6_users_app/config/environments/test.rb +0 -39
- data/spec/fixtures/rails6_users_app/config/initializers/application_controller_renderer.rb +0 -8
- data/spec/fixtures/rails6_users_app/config/initializers/backtrace_silencers.rb +0 -7
- data/spec/fixtures/rails6_users_app/config/initializers/cors.rb +0 -16
- data/spec/fixtures/rails6_users_app/config/initializers/filter_parameter_logging.rb +0 -4
- data/spec/fixtures/rails6_users_app/config/initializers/inflections.rb +0 -16
- data/spec/fixtures/rails6_users_app/config/initializers/mime_types.rb +0 -4
- data/spec/fixtures/rails6_users_app/config/initializers/wrap_parameters.rb +0 -9
- data/spec/fixtures/rails6_users_app/config/locales/en.yml +0 -33
- data/spec/fixtures/rails6_users_app/config/routes.rb +0 -11
- data/spec/fixtures/rails6_users_app/config.ru +0 -5
- data/spec/fixtures/rails6_users_app/db/migrate/20190728211408_create_users.rb +0 -9
- data/spec/fixtures/rails6_users_app/db/schema.rb +0 -23
- data/spec/fixtures/rails6_users_app/features/api_users.feature +0 -13
- data/spec/fixtures/rails6_users_app/features/support/env.rb +0 -4
- data/spec/fixtures/rails6_users_app/features/support/hooks.rb +0 -11
- data/spec/fixtures/rails6_users_app/features/support/steps.rb +0 -18
- data/spec/fixtures/rails6_users_app/lib/tasks/.keep +0 -0
- data/spec/fixtures/rails6_users_app/lib/tasks/appmap.rake +0 -23
- data/spec/fixtures/rails6_users_app/log/.keep +0 -0
- data/spec/fixtures/rails6_users_app/package.json +0 -8
- data/spec/fixtures/rails6_users_app/public/robots.txt +0 -1
- data/spec/fixtures/rails6_users_app/spec/controllers/users_controller_api_spec.rb +0 -42
- data/spec/fixtures/rails6_users_app/spec/controllers/users_controller_spec.rb +0 -27
- data/spec/fixtures/rails6_users_app/spec/models/user_spec.rb +0 -29
- data/spec/fixtures/rails6_users_app/spec/rails_helper.rb +0 -57
- data/spec/fixtures/rails6_users_app/spec/spec_helper.rb +0 -96
- data/spec/fixtures/rails6_users_app/test/controllers/functional_calc_test.rb +0 -10
- data/spec/fixtures/rails6_users_app/test/integration/integration_calc_test.rb +0 -12
- data/spec/fixtures/rails6_users_app/users_app/.gitignore +0 -20
- data/spec/fixtures/rails6_users_app/yarn.lock +0 -2020
- data/spec/fixtures/rails7_users_app/.dockerignore +0 -1
- data/spec/fixtures/rails7_users_app/.gitattributes +0 -7
- data/spec/fixtures/rails7_users_app/.gitignore +0 -31
- data/spec/fixtures/rails7_users_app/.rspec +0 -1
- data/spec/fixtures/rails7_users_app/Gemfile +0 -75
- data/spec/fixtures/rails7_users_app/README.md +0 -24
- data/spec/fixtures/rails7_users_app/Rakefile +0 -6
- data/spec/fixtures/rails7_users_app/app/assets/config/manifest.js +0 -4
- data/spec/fixtures/rails7_users_app/app/assets/images/.keep +0 -0
- data/spec/fixtures/rails7_users_app/app/assets/stylesheets/application.css +0 -15
- data/spec/fixtures/rails7_users_app/app/channels/application_cable/channel.rb +0 -4
- data/spec/fixtures/rails7_users_app/app/channels/application_cable/connection.rb +0 -4
- data/spec/fixtures/rails7_users_app/app/controllers/application_controller.rb +0 -2
- data/spec/fixtures/rails7_users_app/app/controllers/concerns/.keep +0 -0
- data/spec/fixtures/rails7_users_app/app/helpers/application_helper.rb +0 -2
- data/spec/fixtures/rails7_users_app/app/javascript/application.js +0 -3
- data/spec/fixtures/rails7_users_app/app/javascript/controllers/application.js +0 -9
- data/spec/fixtures/rails7_users_app/app/javascript/controllers/hello_controller.js +0 -7
- data/spec/fixtures/rails7_users_app/app/javascript/controllers/index.js +0 -11
- data/spec/fixtures/rails7_users_app/app/jobs/application_job.rb +0 -7
- data/spec/fixtures/rails7_users_app/app/mailers/application_mailer.rb +0 -4
- data/spec/fixtures/rails7_users_app/app/models/application_record.rb +0 -3
- data/spec/fixtures/rails7_users_app/app/models/concerns/.keep +0 -0
- data/spec/fixtures/rails7_users_app/app/models/instance.rb +0 -7
- data/spec/fixtures/rails7_users_app/app/models/instructor.rb +0 -7
- data/spec/fixtures/rails7_users_app/app/views/layouts/application.html.erb +0 -16
- data/spec/fixtures/rails7_users_app/app/views/layouts/mailer.html.erb +0 -13
- data/spec/fixtures/rails7_users_app/app/views/layouts/mailer.text.erb +0 -1
- data/spec/fixtures/rails7_users_app/appmap.yml +0 -3
- data/spec/fixtures/rails7_users_app/bin/bundle +0 -114
- data/spec/fixtures/rails7_users_app/bin/importmap +0 -4
- data/spec/fixtures/rails7_users_app/bin/rails +0 -4
- data/spec/fixtures/rails7_users_app/bin/rake +0 -4
- data/spec/fixtures/rails7_users_app/bin/setup +0 -33
- data/spec/fixtures/rails7_users_app/config/application.rb +0 -22
- data/spec/fixtures/rails7_users_app/config/boot.rb +0 -4
- data/spec/fixtures/rails7_users_app/config/cable.yml +0 -10
- data/spec/fixtures/rails7_users_app/config/credentials.yml.enc +0 -1
- data/spec/fixtures/rails7_users_app/config/database.yml +0 -1
- data/spec/fixtures/rails7_users_app/config/environment.rb +0 -5
- data/spec/fixtures/rails7_users_app/config/environments/development.rb +0 -70
- data/spec/fixtures/rails7_users_app/config/environments/production.rb +0 -93
- data/spec/fixtures/rails7_users_app/config/environments/test.rb +0 -60
- data/spec/fixtures/rails7_users_app/config/importmap.rb +0 -7
- data/spec/fixtures/rails7_users_app/config/initializers/assets.rb +0 -12
- data/spec/fixtures/rails7_users_app/config/initializers/content_security_policy.rb +0 -26
- data/spec/fixtures/rails7_users_app/config/initializers/filter_parameter_logging.rb +0 -8
- data/spec/fixtures/rails7_users_app/config/initializers/inflections.rb +0 -16
- data/spec/fixtures/rails7_users_app/config/initializers/permissions_policy.rb +0 -11
- data/spec/fixtures/rails7_users_app/config/locales/en.yml +0 -33
- data/spec/fixtures/rails7_users_app/config/puma.rb +0 -43
- data/spec/fixtures/rails7_users_app/config/routes.rb +0 -6
- data/spec/fixtures/rails7_users_app/config/storage.yml +0 -34
- data/spec/fixtures/rails7_users_app/config.ru +0 -6
- data/spec/fixtures/rails7_users_app/db/migrate/20220328093141_create_instances.rb +0 -8
- data/spec/fixtures/rails7_users_app/db/migrate/20220328093154_create_instructors.rb +0 -8
- data/spec/fixtures/rails7_users_app/db/schema.rb +0 -27
- data/spec/fixtures/rails7_users_app/db/seeds.rb +0 -7
- data/spec/fixtures/rails7_users_app/lib/assets/.keep +0 -0
- data/spec/fixtures/rails7_users_app/lib/tasks/.keep +0 -0
- data/spec/fixtures/rails7_users_app/log/.keep +0 -0
- data/spec/fixtures/rails7_users_app/public/404.html +0 -67
- data/spec/fixtures/rails7_users_app/public/422.html +0 -67
- data/spec/fixtures/rails7_users_app/public/500.html +0 -66
- data/spec/fixtures/rails7_users_app/public/apple-touch-icon-precomposed.png +0 -0
- data/spec/fixtures/rails7_users_app/public/apple-touch-icon.png +0 -0
- data/spec/fixtures/rails7_users_app/public/favicon.ico +0 -0
- data/spec/fixtures/rails7_users_app/public/robots.txt +0 -1
- data/spec/fixtures/rails7_users_app/storage/.keep +0 -0
- data/spec/fixtures/rails7_users_app/test/application_system_test_case.rb +0 -5
- data/spec/fixtures/rails7_users_app/test/channels/application_cable/connection_test.rb +0 -11
- data/spec/fixtures/rails7_users_app/test/controllers/.keep +0 -0
- data/spec/fixtures/rails7_users_app/test/fixtures/files/.keep +0 -0
- data/spec/fixtures/rails7_users_app/test/fixtures/instances.yml +0 -11
- data/spec/fixtures/rails7_users_app/test/fixtures/instructors.yml +0 -11
- data/spec/fixtures/rails7_users_app/test/helpers/.keep +0 -0
- data/spec/fixtures/rails7_users_app/test/integration/.keep +0 -0
- data/spec/fixtures/rails7_users_app/test/mailers/.keep +0 -0
- data/spec/fixtures/rails7_users_app/test/models/.keep +0 -0
- data/spec/fixtures/rails7_users_app/test/models/instance_test.rb +0 -6
- data/spec/fixtures/rails7_users_app/test/models/instructor_test.rb +0 -7
- data/spec/fixtures/rails7_users_app/test/system/.keep +0 -0
- data/spec/fixtures/rails7_users_app/test/test_helper.rb +0 -13
- data/spec/handler/class_with_eval.rb +0 -13
- data/spec/handler/eval_spec.rb +0 -73
- data/spec/hook_spec.rb +0 -1216
- data/spec/open_spec.rb +0 -19
- data/spec/rails_recording_spec.rb +0 -281
- data/spec/rails_spec_helper.rb +0 -107
- data/spec/rails_test_spec.rb +0 -35
- data/spec/railtie_spec.rb +0 -25
- data/spec/record_net_http_spec.rb +0 -161
- data/spec/record_sql_rails_pg_spec.rb +0 -59
- data/spec/remote_recording_spec.rb +0 -108
- data/spec/service/config_analyzer_spec.rb +0 -102
- data/spec/service/integration_test_path_finder_spec.rb +0 -24
- data/spec/service/validator/violation_spec.rb +0 -68
- data/spec/spec_helper.rb +0 -37
- data/spec/swagger/swagger_spec.rb +0 -85
- data/spec/util_spec.rb +0 -38
- data/test/agent_setup_init_test.rb +0 -39
- data/test/agent_setup_status_test.rb +0 -84
- data/test/agent_setup_validate_test.rb +0 -102
- data/test/bundle_vendor_test.rb +0 -35
- data/test/cucumber_test.rb +0 -72
- data/test/expectations/openssl_test_key_sign1.json +0 -53
- data/test/expectations/openssl_test_key_sign2-3.1.json +0 -53
- data/test/expectations/openssl_test_key_sign2.json +0 -58
- data/test/fixtures/bundle_vendor_app/Gemfile +0 -8
- data/test/fixtures/bundle_vendor_app/appmap.yml +0 -4
- data/test/fixtures/bundle_vendor_app/cli.rb +0 -54
- data/test/fixtures/cli_record_test/appmap.yml +0 -3
- data/test/fixtures/cli_record_test/lib/cli_record_test/main.rb +0 -9
- data/test/fixtures/cucumber4_recorder/Gemfile +0 -5
- data/test/fixtures/cucumber4_recorder/appmap.yml +0 -3
- data/test/fixtures/cucumber4_recorder/features/say_hello.feature +0 -5
- data/test/fixtures/cucumber4_recorder/features/support/env.rb +0 -5
- data/test/fixtures/cucumber4_recorder/features/support/hooks.rb +0 -11
- data/test/fixtures/cucumber4_recorder/features/support/steps.rb +0 -9
- data/test/fixtures/cucumber4_recorder/lib/hello.rb +0 -7
- data/test/fixtures/cucumber_recorder/Gemfile +0 -5
- data/test/fixtures/cucumber_recorder/appmap.yml +0 -3
- data/test/fixtures/cucumber_recorder/features/say_hello.feature +0 -5
- data/test/fixtures/cucumber_recorder/features/support/env.rb +0 -5
- data/test/fixtures/cucumber_recorder/features/support/hooks.rb +0 -11
- data/test/fixtures/cucumber_recorder/features/support/steps.rb +0 -9
- data/test/fixtures/cucumber_recorder/lib/hello.rb +0 -7
- data/test/fixtures/gem_test/Gemfile +0 -7
- data/test/fixtures/gem_test/appmap.yml +0 -3
- data/test/fixtures/gem_test/test/parser_test.rb +0 -12
- data/test/fixtures/minitest_recorder/Gemfile +0 -5
- data/test/fixtures/minitest_recorder/appmap.yml +0 -3
- data/test/fixtures/minitest_recorder/lib/hello.rb +0 -5
- data/test/fixtures/minitest_recorder/test/hello_test.rb +0 -12
- data/test/fixtures/mocha_mock_app/Gemfile +0 -5
- data/test/fixtures/mocha_mock_app/appmap.yml +0 -5
- data/test/fixtures/mocha_mock_app/lib/sheep.rb +0 -5
- data/test/fixtures/mocha_mock_app/test/sheep_test.rb +0 -18
- data/test/fixtures/openssl_recorder/Gemfile +0 -3
- data/test/fixtures/openssl_recorder/appmap.yml +0 -3
- data/test/fixtures/openssl_recorder/lib/openssl_cert_sign.rb +0 -94
- data/test/fixtures/openssl_recorder/lib/openssl_encrypt.rb +0 -34
- data/test/fixtures/openssl_recorder/lib/openssl_key_sign.rb +0 -28
- data/test/fixtures/process_recorder/appmap.yml +0 -3
- data/test/fixtures/process_recorder/hello.rb +0 -9
- data/test/fixtures/rspec_recorder/Gemfile +0 -5
- data/test/fixtures/rspec_recorder/appmap.yml +0 -3
- data/test/fixtures/rspec_recorder/lib/hello.rb +0 -5
- data/test/fixtures/rspec_recorder/spec/decorated_hello_spec.rb +0 -21
- data/test/fixtures/rspec_recorder/spec/labeled_hello_spec.rb +0 -9
- data/test/fixtures/rspec_recorder/spec/plain_hello_spec.rb +0 -9
- data/test/gem_test.rb +0 -35
- data/test/inspect_cli_test.rb +0 -12
- data/test/minitest_test.rb +0 -37
- data/test/mock_compatibility_test.rb +0 -45
- data/test/openssl_test.rb +0 -54
- data/test/record_process_test.rb +0 -35
- data/test/rspec_test.rb +0 -63
- data/test/test_helper.rb +0 -8
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: bc5d48a877bd0953d1d374fcabfa23bf584ac81bd4f303d4f759fb531a778b22
|
4
|
+
data.tar.gz: 6fe7282152760a910275176ea36987747671e4d06d3983b41ac04edfc217d22c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3385416af1ca8318f5e08fe8edc242be03e7e40b8c15a5a68e6ec0678915cd3ca37a3948bf2651db20f2d56dc3b9ba93dda777a5d21ebcd134de252c78d5af91
|
7
|
+
data.tar.gz: 67ee12c6708a5e29e86462d086b0509db2d4c0b05643182b9ea5209d4acfe792d52532bb3314a48911c07e7d1891a2a32868a55feb13455172e7571c1b7a3570
|
@@ -0,0 +1,16 @@
|
|
1
|
+
name: Add new issues to project tracker
|
2
|
+
|
3
|
+
on:
|
4
|
+
issues:
|
5
|
+
types:
|
6
|
+
- opened
|
7
|
+
|
8
|
+
jobs:
|
9
|
+
add-to-project:
|
10
|
+
name: Add issue to project
|
11
|
+
runs-on: ubuntu-latest
|
12
|
+
steps:
|
13
|
+
- uses: actions/add-to-project@main
|
14
|
+
with:
|
15
|
+
project-url: https://github.com/orgs/applandinc/projects/15
|
16
|
+
github-token: ${{ secrets.ADD_TO_PROJECT_BOARD_PAT }}
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,36 @@
|
|
1
|
+
# [0.84.0](https://github.com/applandinc/appmap-ruby/compare/v0.83.6...v0.84.0) (2022-08-04)
|
2
|
+
|
3
|
+
|
4
|
+
### Bug Fixes
|
5
|
+
|
6
|
+
* Address stack overflow error with tracing? ([f426210](https://github.com/applandinc/appmap-ruby/commit/f426210b8dfb48987f2b6c1b5e57e80e3a2c921d))
|
7
|
+
* Handle nil class names ([263f2fc](https://github.com/applandinc/appmap-ruby/commit/263f2fc97b716f1a8205a3e85292c59ee19bc6bc))
|
8
|
+
|
9
|
+
|
10
|
+
### Features
|
11
|
+
|
12
|
+
* Label ActiveSupport::MessageEncryptor ([38a7aeb](https://github.com/applandinc/appmap-ruby/commit/38a7aeb446a2baa63f6724eea8dcf36276d336c9))
|
13
|
+
* Label crypto function with algorithm name ([a7a9c61](https://github.com/applandinc/appmap-ruby/commit/a7a9c6145790fc5bc425e413d56984ef777f9fd1))
|
14
|
+
* Label EncryptedKeyRotatingCookieJar.commit ([8e1d015](https://github.com/applandinc/appmap-ruby/commit/8e1d0158d25f2cc386c32ba899085fd21fadafcb))
|
15
|
+
* Label OpenSSL::Random ([5c947a9](https://github.com/applandinc/appmap-ruby/commit/5c947a90037300639a94ab89d9e1a4dca26265bc))
|
16
|
+
* Label Random ([7572803](https://github.com/applandinc/appmap-ruby/commit/7572803991693ad80f8526c44056133cca13d4b8))
|
17
|
+
* Label the rest of OpenSSL::Cipher ([7863b7b](https://github.com/applandinc/appmap-ruby/commit/7863b7b3fcf2ecccda16b80e637e216c06a95108))
|
18
|
+
* Make activesupport a runtime dependency ([140a674](https://github.com/applandinc/appmap-ruby/commit/140a6744be2abf47d01e880a98f1dd06c8a505b1))
|
19
|
+
|
20
|
+
## [0.83.6](https://github.com/applandinc/appmap-ruby/compare/v0.83.5...v0.83.6) (2022-08-01)
|
21
|
+
|
22
|
+
|
23
|
+
### Bug Fixes
|
24
|
+
|
25
|
+
* Catch an uncaught EINVAL on Windows when attempting to parse source code ([9a152d8](https://github.com/applandinc/appmap-ruby/commit/9a152d8e48846b46572a3e7061bcdb35942b8993))
|
26
|
+
|
27
|
+
## [0.83.5](https://github.com/applandinc/appmap-ruby/compare/v0.83.4...v0.83.5) (2022-06-30)
|
28
|
+
|
29
|
+
|
30
|
+
### Bug Fixes
|
31
|
+
|
32
|
+
* Remove spec and test from the gem ([ab2f6cb](https://github.com/applandinc/appmap-ruby/commit/ab2f6cbd99b2380cd3bc6fcea6a128c080bbcde0))
|
33
|
+
|
1
34
|
## [0.83.4](https://github.com/applandinc/appmap-ruby/compare/v0.83.3...v0.83.4) (2022-06-22)
|
2
35
|
|
3
36
|
|
data/appmap.gemspec
CHANGED
@@ -19,7 +19,7 @@ Gem::Specification.new do |spec|
|
|
19
19
|
# Specify which files should be added to the gem when it is released.
|
20
20
|
# The `git ls-files -z` loads the files in the RubyGem that have been added into git.
|
21
21
|
spec.files = `git ls-files --no-deleted`.split("
|
22
|
-
").grep_v(/appmap\.json$/)
|
22
|
+
").grep_v(/appmap\.json$/).grep_v(/^spec\//).grep_v(/^test\//)
|
23
23
|
|
24
24
|
spec.bindir = 'exe'
|
25
25
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
@@ -27,11 +27,12 @@ Gem::Specification.new do |spec|
|
|
27
27
|
spec.extensions << "ext/appmap/extconf.rb"
|
28
28
|
spec.require_paths = ['lib']
|
29
29
|
|
30
|
-
spec.add_dependency 'activesupport'
|
31
30
|
spec.add_dependency 'method_source'
|
32
31
|
spec.add_dependency 'rack'
|
33
32
|
spec.add_dependency 'reverse_markdown'
|
34
33
|
|
34
|
+
spec.add_runtime_dependency 'activesupport'
|
35
|
+
|
35
36
|
spec.add_development_dependency 'bundler', '>= 1.16'
|
36
37
|
spec.add_development_dependency 'minitest', '~> 5.15'
|
37
38
|
spec.add_development_dependency 'pry-byebug'
|
data/lib/appmap/agent.rb
CHANGED
@@ -14,3 +14,9 @@
|
|
14
14
|
label: deserialize.safe
|
15
15
|
require_name: active_support/lazy_load_hooks
|
16
16
|
force: true
|
17
|
+
- method: ActiveSupport::MessageEncryptor#encrypt_and_sign
|
18
|
+
require_name: active_support/message_encryptor
|
19
|
+
force: true
|
20
|
+
- method: ActiveSupport::MessageEncryptor#decrypt_and_verifdy
|
21
|
+
require_name: active_support/message_encryptor
|
22
|
+
force: true
|
@@ -12,5 +12,39 @@
|
|
12
12
|
label: crypto.pkcs5
|
13
13
|
- method: OpenSSL::Cipher#encrypt
|
14
14
|
label: crypto.encrypt
|
15
|
+
handler_class: AppMap::Handler::OpenSSLHandler
|
15
16
|
- method: OpenSSL::Cipher#decrypt
|
16
17
|
label: crypto.decrypt
|
18
|
+
handler_class: AppMap::Handler::OpenSSLHandler
|
19
|
+
- method: OpenSSL::Cipher#auth_data=
|
20
|
+
label: crypto.set_auth_data
|
21
|
+
- method: OpenSSL::Cipher#auth_tag=
|
22
|
+
label: crypto.set_auth_tag
|
23
|
+
- method: OpenSSL::Cipher#auth_tag_len=
|
24
|
+
label: crypto.set_auth_tag_len
|
25
|
+
- method: OpenSSL::Cipher#ccm_data_len=
|
26
|
+
label: crypto.set_ccm_data_len
|
27
|
+
- method: OpenSSL::Cipher#iv=
|
28
|
+
label: crypto.set_iv
|
29
|
+
- method: OpenSSL::Cipher#iv_len=
|
30
|
+
label: crypto.set_iv_len
|
31
|
+
- method: OpenSSL::Cipher#key=
|
32
|
+
label: crypto.set_key
|
33
|
+
- method: OpenSSL::Cipher#key_len=
|
34
|
+
label: crypto.set_key_len
|
35
|
+
- method: OpenSSL::Cipher#padding=
|
36
|
+
label: crypto.set_padding
|
37
|
+
- method: OpenSSL::Cipher#final
|
38
|
+
label: crypto.final
|
39
|
+
- methods:
|
40
|
+
- OpenSSL::Cipher#random_iv
|
41
|
+
- OpenSSL::Cipher#random_key
|
42
|
+
- OpenSSL::Cipher#reset
|
43
|
+
- OpenSSL::Cipher#update
|
44
|
+
- methods:
|
45
|
+
- OpenSSL::Random.random_bytes
|
46
|
+
label: random.secure
|
47
|
+
- methods:
|
48
|
+
- OpenSSL::Random#add
|
49
|
+
- OpenSSL::Random#seed
|
50
|
+
label: pseudorandom.seed
|
data/lib/appmap/config.rb
CHANGED
@@ -32,8 +32,8 @@ module AppMap
|
|
32
32
|
attr_writer :handler_class
|
33
33
|
|
34
34
|
def handler_class
|
35
|
-
require 'appmap/handler/
|
36
|
-
@handler_class || AppMap::Handler::
|
35
|
+
require 'appmap/handler/function_handler'
|
36
|
+
@handler_class || AppMap::Handler::FunctionHandler
|
37
37
|
end
|
38
38
|
|
39
39
|
# Indicates that only the entry points to a package will be recorded.
|
@@ -72,7 +72,7 @@ module AppMap
|
|
72
72
|
# Builds a package for gem. Generally corresponds to a `gem:` entry in appmap.yml. Also used when mapping
|
73
73
|
# a builtin.
|
74
74
|
def build_from_gem(gem, shallow: true, require_name: nil, exclude: [], labels: [], optional: false, force: false)
|
75
|
-
if !force && %w[method_source
|
75
|
+
if !force && %w[method_source].member?(gem)
|
76
76
|
warn "WARNING: #{gem} cannot be AppMapped because it is a dependency of the appmap gem"
|
77
77
|
return
|
78
78
|
end
|
data/lib/appmap/event.rb
CHANGED
@@ -84,10 +84,10 @@ module AppMap
|
|
84
84
|
# Heuristic for dynamically defined class whose name can be nil
|
85
85
|
def best_class_name(value)
|
86
86
|
value_cls = value.class
|
87
|
-
while value_cls.name.nil?
|
87
|
+
while value_cls && value_cls.name.nil?
|
88
88
|
value_cls = value_cls.superclass
|
89
89
|
end
|
90
|
-
value_cls
|
90
|
+
value_cls&.name || 'unknown'
|
91
91
|
end
|
92
92
|
|
93
93
|
def encode_display_string(value)
|
@@ -1,6 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require 'appmap/handler/
|
3
|
+
require 'appmap/handler/function_handler'
|
4
4
|
|
5
5
|
module AppMap
|
6
6
|
module Handler
|
@@ -14,15 +14,15 @@ module AppMap
|
|
14
14
|
#
|
15
15
|
# If the binding is not provided, by default eval will run in the
|
16
16
|
# current frame. Since we call it here, this will mean the #do_call
|
17
|
-
# frame, which would make AppMap::Handler::
|
17
|
+
# frame, which would make AppMap::Handler::EvalHandler the lexical scope
|
18
18
|
# for constant lookup and definition; as a consequence
|
19
19
|
# eg. `eval "class Foo; end"` would define
|
20
|
-
# AppMap::Handler::
|
20
|
+
# AppMap::Handler::EvalHandler::Foo instead of defining it in
|
21
21
|
# the module where the original call was made.
|
22
22
|
#
|
23
23
|
# To avoid this, we explicitly substitute the correct execution
|
24
24
|
# context, up several stack frames.
|
25
|
-
class
|
25
|
+
class EvalHandler < FunctionHandler
|
26
26
|
# The depth of the frame we need to pluck out:
|
27
27
|
# 1. Hook::Method#do_call
|
28
28
|
# 2. Hook::Method#trace_call
|
@@ -6,7 +6,7 @@ require 'appmap/hook/method'
|
|
6
6
|
module AppMap
|
7
7
|
module Handler
|
8
8
|
# Base handler class, will emit method call and return events.
|
9
|
-
class
|
9
|
+
class FunctionHandler < Hook::Method
|
10
10
|
def handle_call(receiver, args)
|
11
11
|
AppMap::Event::MethodCall.build_from_invocation(defined_class, hook_method, receiver, args)
|
12
12
|
end
|
@@ -29,7 +29,7 @@ module AppMap
|
|
29
29
|
|
30
30
|
self.request_method = request.method
|
31
31
|
self.url = url
|
32
|
-
self.headers =
|
32
|
+
self.headers = NetHTTPHandler.copy_headers(request)
|
33
33
|
self.params = Rack::Utils.parse_nested_query(query)
|
34
34
|
end
|
35
35
|
|
@@ -64,7 +64,7 @@ module AppMap
|
|
64
64
|
|
65
65
|
if response
|
66
66
|
self.status = response.code.to_i
|
67
|
-
self.headers =
|
67
|
+
self.headers = NetHTTPHandler.copy_headers(response)
|
68
68
|
else
|
69
69
|
self.headers = {}
|
70
70
|
end
|
@@ -84,7 +84,7 @@ module AppMap
|
|
84
84
|
|
85
85
|
# Handler class for HTTP requests.
|
86
86
|
# Emits HTTP request events instead of method calls.
|
87
|
-
class
|
87
|
+
class NetHTTPHandler < Hook::Method
|
88
88
|
def self.copy_headers(obj)
|
89
89
|
{}.tap do |headers|
|
90
90
|
obj.each_header do |key, value|
|
@@ -0,0 +1,16 @@
|
|
1
|
+
require 'appmap/handler/function_handler'
|
2
|
+
|
3
|
+
module AppMap
|
4
|
+
module Handler
|
5
|
+
class OpenSSLHandler < FunctionHandler
|
6
|
+
def handle_call(receiver, args)
|
7
|
+
super.tap do |event|
|
8
|
+
algorithm = receiver.name
|
9
|
+
event.receiver[:labels] ||= []
|
10
|
+
label = [ 'crypto.algorithm', algorithm ].join('.')
|
11
|
+
event.receiver[:labels] << label unless event.receiver[:labels].include?(label)
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
@@ -1,9 +1,9 @@
|
|
1
|
-
require 'appmap/handler/
|
1
|
+
require 'appmap/handler/function_handler'
|
2
2
|
|
3
3
|
module AppMap
|
4
4
|
module Handler
|
5
5
|
module Rails
|
6
|
-
class RenderHandler < AppMap::Handler::
|
6
|
+
class RenderHandler < AppMap::Handler::FunctionHandler
|
7
7
|
def handle_call(receiver, args)
|
8
8
|
options, _ = args
|
9
9
|
# TODO: :file, :xml
|
@@ -1,6 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require 'appmap/handler/
|
3
|
+
require 'appmap/handler/function_handler'
|
4
4
|
require 'appmap/event'
|
5
5
|
|
6
6
|
module AppMap
|
@@ -110,7 +110,7 @@ module AppMap
|
|
110
110
|
# Hooks the ActionView::Resolver methods +find_all+, +find_all_anywhere+. The resolver is used
|
111
111
|
# during template rendering to lookup the template file path from parameters such as the
|
112
112
|
# template name, prefix, and partial (boolean).
|
113
|
-
class ResolverHandler < AppMap::Handler::
|
113
|
+
class ResolverHandler < AppMap::Handler::FunctionHandler
|
114
114
|
def handle_call(receiver, args)
|
115
115
|
name, prefix, partial = args
|
116
116
|
warn "Resolver: #{{ name: name, prefix: prefix, partial: partial }}" if LOG
|
data/lib/appmap/hook/method.rb
CHANGED
@@ -83,7 +83,7 @@ module AppMap
|
|
83
83
|
end
|
84
84
|
|
85
85
|
def trace?
|
86
|
-
return false unless AppMap.
|
86
|
+
return false unless AppMap.tracing_enabled?
|
87
87
|
return false if Thread.current[HOOK_DISABLE_KEY]
|
88
88
|
return false if hook_package&.shallow? && AppMap.tracing.last_package_for_current_thread == hook_package
|
89
89
|
|
data/lib/appmap/trace.rb
CHANGED
data/lib/appmap/util.rb
CHANGED
data/lib/appmap/version.rb
CHANGED
data/lib/appmap.rb
CHANGED
@@ -20,13 +20,6 @@
|
|
20
20
|
# - appmap/swagger (Rake task)
|
21
21
|
# - appmap/depends (Rake task)
|
22
22
|
|
23
|
-
begin
|
24
|
-
require 'active_support'
|
25
|
-
require 'active_support/core_ext'
|
26
|
-
rescue NameError
|
27
|
-
warn 'active_support is not available. AppMap execution will continue optimistically without it...'
|
28
|
-
end
|
29
|
-
|
30
23
|
require 'appmap/version'
|
31
24
|
require 'appmap/agent'
|
32
25
|
|