🚀 The easiest way to automate building and releasing your iOS and Android apps
This report presents the forensic synthetic code analysis of fastlane/fastlane, a Ruby project with 41,787 GitHub stars. SynthScan v2.0 examined 191,021 lines of code across 1683 source files, recording 679 pattern matches distributed across 11 syntactic categories. The overall adjusted score of 4.7 places this repository in the Likely human-written band.
The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).
This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.
Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.
This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.
The scanner identified 679 distinct pattern matches across 11 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | snapshot/lib/snapshot/test_command_generator.rb | 144 | def get_device_type_with_simctl(device_names) | CODE |
| LOW | snapshot/lib/snapshot/test_command_generator_base.rb | 102 | def resolve_result_bundle_path(language, locale) | CODE |
| LOW | …napshot/simulator_launchers/simulator_launcher_base.rb | 37 | def prepare_directories_for_launch(language: nil, locale: nil, launch_arguments: nil) | CODE |
| LOW | …napshot/simulator_launchers/simulator_launcher_base.rb | 51 | def prepare_simulators_for_launch(device_types, language: nil, locale: nil) | CODE |
| LOW | …shot/simulator_launchers/simulator_launcher_xcode_8.rb | 34 | def run_for_device_and_language(language, locale, device, launch_arguments, retries = 0) | CODE |
| LOW | …shot/simulator_launchers/simulator_launcher_xcode_8.rb | 106 | def open_simulator_for_device(device_name) | CODE |
| LOW | frameit/spec/device_spec.rb | 22 | def expect_screen_size_from_file(file, platform) | CODE |
| LOW | frameit/spec/device_spec.rb | 26 | def expect_forced_screen_size(value) | CODE |
| LOW | frameit/spec/device_spec.rb | 150 | def expect_invalid_screen_size_from_file(file, platform) | CODE |
| LOW | frameit/lib/frameit/editor.rb | 282 | def put_device_into_background(background) | CODE |
| LOW | frameit/lib/frameit/editor.rb | 316 | def put_title_into_background_stacked(background, title, keyword) | CODE |
| LOW | frameit/lib/frameit/editor.rb | 347 | def put_title_into_background(background, stack_title) | CODE |
| LOW | frameit/lib/frameit/mac_editor.rb | 12 | def put_device_into_background(background) | CODE |
| LOW | match/spec/spec_helper.rb | 57 | def create_match_config_with_git_storage(extra_values: {}, git_url: nil, app_identifier: nil, type: nil, username: nil) | CODE |
| LOW | match/spec/spec_helper.rb | 96 | def provisioning_path_for_xcode_version(xcode_version) | CODE |
| LOW | match/spec/commands_generator_spec.rb | 45 | def expect_change_password_with(expected_options) | CODE |
| LOW | match/spec/commands_generator_spec.rb | 74 | def expect_githelper_clone_with(git_url, shallow_clone, git_branch) | CODE |
| LOW | match/lib/match/migrate.rb | 103 | def ensure_parameters_are_valid(params) | CODE |
| LOW | match/lib/match/nuke.rb | 92 | def update_optional_values_depending_on_storage_type(params) | CODE |
| LOW | match/lib/match/nuke.rb | 330 | def filter_by_certificate_ids(certificate_ids, missing_error_message: nil) | CODE |
| LOW | match/lib/match/runner.rb | 153 | def update_optional_values_depending_on_storage_type(params) | CODE |
| LOW | match/lib/match/runner.rb | 270 | def fetch_provisioning_profile(params: nil, profile_type:, certificate_id: nil, app_identifier: nil, working_directo | CODE |
| LOW | match/lib/match/storage/s3_storage.rb | 173 | def generate_matchfile_content(template: nil) | CODE |
| LOW | match/lib/match/storage/gitlab_secure_files.rb | 181 | def generate_matchfile_content(template: nil) | CODE |
| LOW | match/lib/match/storage/interface.rb | 110 | def generate_matchfile_content(template: nil) | CODE |
| LOW | match/lib/match/storage/git_storage.rb | 68 | def convert_private_key_path_to_absolute(git_private_key) | CODE |
| LOW | fastlane_core/spec/spec_helper.rb | 36 | def stub_commander_runner_args(args) | CODE |
| LOW | fastlane_core/spec/itunes_transporter_spec.rb | 103 | def shell_provider_id_command(jwt: nil) | CODE |
| LOW | fastlane_core/spec/itunes_transporter_spec.rb | 155 | def altool_provider_id_command(api_key: nil) | CODE |
| LOW | fastlane_core/spec/android_package_name_guesser_spec.rb | 46 | def allow_non_target_configuration_file(file_name) | CODE |
| LOW | fastlane_core/spec/android_package_name_guesser_spec.rb | 52 | def allow_target_configuration_file(file_name, package_name_key) | CODE |
| LOW | fastlane_core/spec/ios_app_identifier_guesser_spec.rb | 43 | def allow_non_target_configuration_file(file_name) | CODE |
| LOW | fastlane_core/spec/ios_app_identifier_guesser_spec.rb | 49 | def allow_target_configuration_file(file_name) | CODE |
| LOW | fastlane_core/spec/core_ext/shellwords_ext_spec.rb | 206 | def confirm_shell_unescapes_string_correctly(string, escaped) | CODE |
| LOW | fastlane_core/spec/core_ext/shellwords_ext_spec.rb | 235 | def simulate_windows_shell_unwrapping(string) | CODE |
| LOW | fastlane_core/spec/core_ext/shellwords_ext_spec.rb | 245 | def simulate_normal_shell_unwrapping(string) | CODE |
| LOW | fastlane_core/spec/core_ext/shellwords_ext_spec.rb | 378 | def expect_correct_implementation_to_be_called(obj, method, os) | CODE |
| LOW | …core/lib/fastlane_core/android_package_name_guesser.rb | 16 | def guess_package_name_from_args(gem_name, args) | CODE |
| LOW | …core/lib/fastlane_core/android_package_name_guesser.rb | 41 | def fetch_package_name_from_file(file_name, package_name_key) | CODE |
| LOW | fastlane_core/lib/fastlane_core/device_manager.rb | 131 | def latest_simulator_version_for_device(device) | CODE |
| LOW | fastlane_core/lib/fastlane_core/build_watcher.rb | 14 | def wait_for_build_processing_to_be_complete(app_id: nil, platform: nil, train_version: nil, app_version: nil, bui | CODE |
| LOW | fastlane_core/lib/fastlane_core/build_watcher.rb | 75 | def remove_version_leading_zeros(version: nil) | CODE |
| LOW | fastlane_core/lib/fastlane_core/build_watcher.rb | 182 | def force_stop_build_watching_if_required(start_time: nil, timeout_duration: nil) | CODE |
| LOW | fastlane_core/lib/fastlane_core/itunes_transporter.rb | 42 | def build_provider_ids_command(username, password, jwt = nil, api_key = nil) | CODE |
| LOW | fastlane_core/lib/fastlane_core/itunes_transporter.rb | 343 | def build_provider_ids_command(username, password, jwt = nil, api_key = nil) | CODE |
| LOW | fastlane_core/lib/fastlane_core/itunes_transporter.rb | 472 | def build_provider_ids_command(username, password, jwt = nil, api_key = nil) | CODE |
| LOW | fastlane_core/lib/fastlane_core/itunes_transporter.rb | 678 | def build_provider_ids_command(username, password, jwt = nil, api_key = nil) | CODE |
| LOW | …e_core/lib/fastlane_core/ios_app_identifier_guesser.rb | 10 | def guess_app_identifier_from_args(args) | CODE |
| LOW | …e_core/lib/fastlane_core/ios_app_identifier_guesser.rb | 33 | def fetch_app_identifier_from_ruby_file(file_name) | CODE |
| LOW | …e_core/lib/fastlane_core/ios_app_identifier_guesser.rb | 50 | def fetch_app_identifier_from_swift_file(file_name) | CODE |
| LOW | …e_core/lib/fastlane_core/ios_app_identifier_guesser.rb | 75 | def match_swift_application_id(text_line: nil) | CODE |
| LOW | fastlane_core/lib/fastlane_core/ui/fastlane_runner.rb | 202 | def rescue_connection_failed_error(e) | CODE |
| LOW | …ib/fastlane_core/ui/github_issue_inspector_reporter.rb | 19 | def inspector_successfully_received_report(report, inspector) | CODE |
| LOW | …ib/fastlane_core/ui/github_issue_inspector_reporter.rb | 32 | def inspector_received_empty_report(report, inspector) | CODE |
| LOW | …ib/fastlane_core/ui/github_issue_inspector_reporter.rb | 39 | def inspector_could_not_create_report(error, query, inspector) | CODE |
| LOW | …ne_core/lib/fastlane_core/configuration/config_item.rb | 198 | def ensure_generic_type_passes_validation(value) | CODE |
| LOW | …ne_core/lib/fastlane_core/configuration/config_item.rb | 208 | def ensure_boolean_type_passes_validation(value) | CODE |
| LOW | …ne_core/lib/fastlane_core/configuration/config_item.rb | 219 | def ensure_array_type_passes_validation(value) | CODE |
| LOW | deliver/spec/sync_screenshots_spec.rb | 160 | def mock_app_screenshot_iterator(each_app_screenshot: [], each_local_screenshot: []) | CODE |
| LOW | deliver/spec/sync_screenshots_spec.rb | 206 | def mock_app_store_version_localization(locale: 'en-US', app_screenshot_sets: []) | CODE |
| 270 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .rubocop_todo.yml | 1 | # This configuration was generated by | COMMENT |
| LOW | .rubocop_todo.yml | 101 | # Offense count: 38 | COMMENT |
| LOW | .rubocop_todo.yml | 401 | # Offense count: 1 | COMMENT |
| LOW | .rubocop_todo.yml | 421 | Style/AccessorGrouping: | COMMENT |
| LOW | .rubocop_todo.yml | 521 | # Offense count: 10 | COMMENT |
| LOW | .rubocop_todo.yml | 721 | # Offense count: 15 | COMMENT |
| LOW | .rubocop.yml | 81 | # This rule isn't useful, lots of discussion happening around it also | COMMENT |
| LOW | snapshot/example/fastlane/SnapshotHelper.swift | 1 | // | COMMENT |
| LOW | snapshot/lib/snapshot/detect_values.rb | 41 | all_simulators = FastlaneCore::Simulator.all | COMMENT |
| LOW | snapshot/lib/assets/SnapfileTemplate.swift | 1 | // Uncomment the lines below you want to change by removing the // in the beginning | COMMENT |
| LOW | snapshot/lib/assets/SnapfileTemplate.swift | 21 | ] | COMMENT |
| LOW | snapshot/lib/assets/SnapshotHelper.swift | 1 | // | COMMENT |
| LOW | snapshot/lib/assets/SnapshotHelperXcode8.swift | 1 | // | COMMENT |
| LOW | frameit/lib/frameit/screenshot.rb | 21 | @size = FastImage.size(path) | COMMENT |
| LOW | fastlane_core/spec/core_ext/shellwords_ext_spec.rb | 1 | # references | COMMENT |
| LOW | fastlane_core/lib/fastlane_core/provisioning_profile.rb | 1 | require_relative 'ui/ui' | COMMENT |
| LOW | fastlane_core/lib/fastlane_core/helper.rb | 261 | return '' | COMMENT |
| LOW | fastlane_core/lib/fastlane_core/helper.rb | 301 | end | COMMENT |
| LOW | fastlane_core/lib/fastlane_core/device_manager.rb | 141 | COMMENT | |
| LOW | fastlane_core/lib/fastlane_core/device_manager.rb | 161 | # os = os_version.gsub(requested_os_type + " ", "").strip | COMMENT |
| LOW | fastlane_core/lib/fastlane_core/itunes_transporter.rb | 741 | @hide_transporter_output = !FastlaneCore::Globals.verbose? | COMMENT |
| LOW | fastlane_core/lib/fastlane_core/itunes_transporter.rb | 821 | end | COMMENT |
| LOW | fastlane_core/lib/fastlane_core/test_parser.rb | 41 | # [{"Subtests"=> | COMMENT |
| LOW | fastlane_core/lib/fastlane_core/string_filters.rb | 1 | class String | COMMENT |
| LOW | fastlane_core/lib/fastlane_core/ui/fastlane_runner.rb | 41 | # `optparse` is guessing that command option `-e` is referring to global option `--env` (because it starts with an | COMMENT |
| LOW | fastlane_core/lib/fastlane_core/ui/interface.rb | 1 | require_relative 'errors' | COMMENT |
| LOW | fastlane_core/lib/fastlane_core/ui/interface.rb | 121 | # @!group Abort helper methods | COMMENT |
| LOW | fastlane_core/lib/fastlane_core/ui/interface.rb | 141 | raise FastlaneError.new(show_github_issues: options[:show_github_issues], error_info: options[:error_info]), error | COMMENT |
| LOW | fastlane_core/lib/fastlane_core/ui/interface.rb | 161 | # fastlane failures | COMMENT |
| LOW | …ne_core/lib/fastlane_core/configuration/config_item.rb | 21 | # [String] A string of length 1 which is used for the command parameters (e.g. -f) | COMMENT |
| LOW | …ne_core/lib/fastlane_core/configuration/config_item.rb | 61 | # [Boolean] Set if the default value should never be used during code generation for Swift | COMMENT |
| LOW | …ne_core/lib/fastlane_core/configuration/config_item.rb | 81 | # @param default_value_dynamic (Boolean) Set if the default value is generated dynamically | COMMENT |
| LOW | …/lib/fastlane_core/configuration/configuration_file.rb | 141 | # | COMMENT |
| LOW | …lib/fastlane_core/configuration/commander_generator.rb | 41 | type = nil | COMMENT |
| LOW | …lib/fastlane_core/configuration/commander_generator.rb | 61 | # automatically in Configuration is to coerce special Strings into boolean values. | COMMENT |
| LOW | deliver/lib/assets/DeliverfileDefault.swift | 1 | // The Deliverfile allows you to store various App Store Connect metadata | COMMENT |
| LOW | scan/examples/Mac/Mac/main.m | 1 | // | COMMENT |
| LOW | scan/lib/scan/error_handler.rb | 41 | when /Testing started.*\*\* TEST FAILED \*\*/m, /Testing started.*\*\* TEST EXECUTE FAILED \*\*/m | COMMENT |
| LOW | scan/lib/assets/ScanfileTemplate.swift | 1 | // For more information about this configuration visit | COMMENT |
| LOW | fastlane/spec/actions_specs/download_dsyms_spec.rb | 61 | end | COMMENT |
| LOW | fastlane/spec/actions_specs/xcodebuild_spec.rb | 361 | # describe "xcbuild without xpretty and with test" do | COMMENT |
| LOW | fastlane/spec/actions_specs/xcodebuild_spec.rb | 421 | # ) | COMMENT |
| LOW | fastlane/swift/ScanfileProtocol.swift | 581 | COMMENT | |
| LOW | fastlane/swift/Snapshotfile.swift | 1 | // Snapshotfile.swift | COMMENT |
| LOW | fastlane/swift/ScreengrabfileProtocol.swift | 161 | COMMENT | |
| LOW | fastlane/swift/RubyCommandable.swift | 41 | // Please don't remove the lines below | COMMENT |
| LOW | fastlane/swift/Plugins.swift | 1 | // Plugins.swift | COMMENT |
| LOW | fastlane/swift/SocketResponse.swift | 81 | COMMENT | |
| LOW | fastlane/swift/Scanfile.swift | 1 | // Scanfile.swift | COMMENT |
| LOW | fastlane/swift/Gymfile.swift | 1 | // Gymfile.swift | COMMENT |
| LOW | fastlane/swift/RunnerArgument.swift | 1 | // RunnerArgument.swift | COMMENT |
| LOW | fastlane/swift/Precheckfile.swift | 1 | // Precheckfile.swift | COMMENT |
| LOW | fastlane/swift/Appfile.swift | 21 | // Please don't remove the lines below | COMMENT |
| LOW | fastlane/swift/Deliverfile.swift | 1 | // Deliverfile.swift | COMMENT |
| LOW | fastlane/swift/Screengrabfile.swift | 1 | // Screengrabfile.swift | COMMENT |
| LOW | fastlane/swift/Matchfile.swift | 1 | // Matchfile.swift | COMMENT |
| LOW | fastlane/swift/Actions.swift | 1 | // Actions.swift | COMMENT |
| LOW | fastlane/lib/fastlane/fast_file.rb | 181 | end | COMMENT |
| LOW | fastlane/lib/fastlane/other_action.rb | 1 | module Fastlane | COMMENT |
| LOW | fastlane/lib/fastlane/cli_tools_distributor.rb | 101 | # First, remove the tool's name from the arguments | COMMENT |
| 120 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | spec_helper.rb | 1 | # This module is only used to check the environment is currently a testing env | COMMENT |
| MEDIUM | frameit/lib/frameit/trim_box.rb | 37 | # Create a JSON string from the trim box parameters: | COMMENT |
| MEDIUM | frameit/lib/frameit/editor.rb | 122 | # Create a mask | COMMENT |
| MEDIUM | frameit/lib/frameit/editor.rb | 468 | # Create a Trimbox object from the MiniMagick .identify string with syntax "<width>x<height>+<offset_x>+<offset_ | COMMENT |
| MEDIUM | match/lib/match/storage/interface.rb | 48 | # This method is blocking, meaning it might take multiple | COMMENT |
| MEDIUM | match/lib/match/storage/google_cloud_storage.rb | 95 | # Create the Google Cloud Storage client | COMMENT |
| MEDIUM | fastlane_core/lib/fastlane_core/helper.rb | 481 | # This method is deprecated, use the `UI` class | COMMENT |
| MEDIUM | deliver/spec/upload_metadata_spec.rb | 383 | # Create a phased release | COMMENT |
| MEDIUM | deliver/spec/upload_metadata_spec.rb | 436 | # Create a reset ratings request | COMMENT |
| MEDIUM | …load_app_clip_default_experience_header_images_spec.rb | 16 | # Create a default image and one language-specific image | COMMENT |
| MEDIUM | …load_app_clip_default_experience_header_images_spec.rb | 88 | # Create an image from default folder | COMMENT |
| MEDIUM | cert/spec/spec_helper.rb | 1 | # Create a stub certificate object that reports its expiration date | COMMENT |
| MEDIUM | cert/lib/cert/runner.rb | 201 | # Create a new certificate signing request | COMMENT |
| MEDIUM | …tlane/spec/actions_specs/update_app_identifier_spec.rb | 20 | # Create an Info.plist file with a supplied bundle_identifier parameter | COMMENT |
| MEDIUM | fastlane/lib/fastlane/swift_runner_upgrader.rb | 251 | # Create a copy files build phase | COMMENT |
| MEDIUM | fastlane/lib/fastlane/other_action.rb | 2 | # This class is used to call other actions from within actions | COMMENT |
| MEDIUM | fastlane/lib/fastlane/cli_tools_distributor.rb | 2 | # This class is responsible for checking the ARGV | COMMENT |
| MEDIUM | fastlane/lib/fastlane/command_line_handler.rb | 3 | # This method handles command line inputs and properly transforms them to a usable format | COMMENT |
| MEDIUM | fastlane/lib/fastlane/runner.rb | 17 | # This method is **not** executed when switching a lane | COMMENT |
| MEDIUM | fastlane/lib/fastlane/runner.rb | 93 | # This method is being called by `trigger_action_by_name` to see | COMMENT |
| MEDIUM | fastlane/lib/fastlane/setup/setup.rb | 269 | # This method is responsible for ensuring there is a working | COMMENT |
| MEDIUM | fastlane/lib/fastlane/actions/backup_xcarchive.rb | 125 | versioned: true # Create a versioned (date and app version) subfolder where to put the archive | CODE |
| MEDIUM | …ane/actions/download_universal_apk_from_google_play.rb | 104 | # Define the shared values you are going to provide | COMMENT |
| MEDIUM | …ane/actions/upload_app_privacy_details_to_app_store.rb | 147 | # Creating an array with nil so that purposes can be iterated over and | COMMENT |
| MEDIUM | fastlane/lib/assets/custom_action_template.rb | 58 | # Define the shared values you are going to provide | COMMENT |
| MEDIUM⚡ | spaceship/lib/spaceship/client.rb | 560 | # This method is used for both the Apple Dev Portal and App Store Connect | COMMENT |
| MEDIUM | spaceship/lib/spaceship/client.rb | 712 | # This method is used to log if the session is valid or not and then exit | COMMENT |
| MEDIUM | spaceship/lib/spaceship/tunes/app_details.rb | 59 | # Create a new object based on a hash. | COMMENT |
| MEDIUM | spaceship/lib/spaceship/tunes/iap_families.rb | 9 | # Create a new Purchase Family | COMMENT |
| MEDIUM | spaceship/lib/spaceship/tunes/availability.rb | 41 | # Create a new object based on a set of territories. | COMMENT |
| MEDIUM | spaceship/lib/spaceship/tunes/app_review.rb | 36 | # Create a new object based on a hash. | COMMENT |
| MEDIUM | spaceship/lib/spaceship/tunes/app_submission.rb | 6 | # This class handles the submission of all review information and documents | COMMENT |
| MEDIUM | spaceship/lib/spaceship/tunes/app_submission.rb | 94 | # Create a new object based on a hash. | COMMENT |
| MEDIUM | spaceship/lib/spaceship/tunes/application.rb | 228 | # Create a new version of your app | COMMENT |
| MEDIUM | spaceship/lib/spaceship/tunes/app_version.rb | 273 | # Create a new object based on a hash. | COMMENT |
| MEDIUM | spaceship/lib/spaceship/tunes/territory.rb | 30 | # Create a new object based on a two-character country code (e.g. "US" for the United States) | COMMENT |
| MEDIUM | spaceship/lib/spaceship/portal/provisioning_profile.rb | 193 | # Create a new object based on a hash. | COMMENT |
| MEDIUM | spaceship/lib/spaceship/portal/provisioning_profile.rb | 245 | # Create a new provisioning profile | COMMENT |
| MEDIUM | spaceship/lib/spaceship/portal/portal_client.rb | 861 | # This method is being called from all requests that modify, create or downloading provisioning | COMMENT |
| MEDIUM | spaceship/lib/spaceship/portal/certificate.rb | 208 | # Create a new cert signing request that can be used to | COMMENT |
| MEDIUM | spaceship/lib/spaceship/portal/certificate.rb | 211 | # Create a new certificate signing request | COMMENT |
| MEDIUM | spaceship/lib/spaceship/portal/certificate.rb | 228 | # Create a new object based on a hash. | COMMENT |
| MEDIUM | spaceship/lib/spaceship/portal/certificate.rb | 304 | # # Create a new certificate signing request | COMMENT |
| MEDIUM | spaceship/lib/spaceship/du/du_client.rb | 6 | # This class is used to upload Digital files (Images, Videos, JSON files) onto the du-itc service. | COMMENT |
| MEDIUM | …ceship/lib/spaceship/connect_api/models/certificate.rb | 59 | # Create a new cert signing request that can be used to | COMMENT |
| MEDIUM | …ceship/lib/spaceship/connect_api/models/certificate.rb | 62 | # Create a new certificate signing request | COMMENT |
| MEDIUM⚡ | pilot/lib/pilot/build_manager.rb | 666 | # Create the localization | COMMENT |
| MEDIUM | screengrab/spec/spec_helper.rb | 9 | # The following methods is taken from activesupport, | COMMENT |
| MEDIUM | trainer/spec/spec_helper.rb | 3 | # This module is only used to check the environment is currently a testing env | COMMENT |
| MEDIUM | trainer/lib/trainer/xcresult/test_plan.rb | 49 | # Create the root testsuites element with calculated summary attributes | COMMENT |
| MEDIUM | sigh/lib/sigh/runner.rb | 154 | # Create a new profile and return it | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | frameit/lib/frameit/editor.rb | 502 | # Check if the height needs to be adjusted to reach the bottom offset: | COMMENT |
| LOW | match/spec/storage/git_storage_spec_helper.rb | 3 | # Check if branch exists. | COMMENT |
| LOW | match/lib/match/nuke.rb | 315 | # Check if the profile is installed on the local machine | COMMENT |
| LOW | match/lib/match/storage/s3_storage.rb | 101 | # Check if we already have a functional working_directory | COMMENT |
| LOW | match/lib/match/storage/gitlab_secure_files.rb | 103 | # Check if we already have a functional working_directory | COMMENT |
| LOW | match/lib/match/storage/git_storage.rb | 81 | # Check if we already have a functional working_directory | COMMENT |
| LOW | match/lib/match/storage/google_cloud_storage.rb | 148 | # Check if we already have a functional working_directory | COMMENT |
| LOW | match/lib/match/storage/google_cloud_storage.rb | 340 | # Verify if the bucket exists | COMMENT |
| LOW | fastlane_core/lib/fastlane_core/itunes_transporter.rb | 185 | # Check if it's a login error | COMMENT |
| LOW | …ore/lib/fastlane_core/update_checker/update_checker.rb | 87 | # Check if RubyGems is set as a gem source | COMMENT |
| LOW | deliver/lib/deliver/commands_generator.rb | 70 | # Check if we already have a deliver setup in the current directory | COMMENT |
| LOW | deliver/lib/deliver/upload_screenshots.rb | 218 | # Check if local screenshots' checksum exist on App Store Connect | COMMENT |
| LOW | …er/upload_app_clip_default_experience_header_images.rb | 142 | # Check if there's a default image (from 'default' folder) | COMMENT |
| LOW | scan/lib/scan/runner.rb | 60 | # Set retries to 0 if Xcode 13 because TestCommandGenerator will set '-retry-tests-on-failure -test-iterations' | COMMENT |
| LOW | supply/lib/supply/client.rb | 340 | # Check if user specified '--track' option if version information from 'production' track is nil | COMMENT |
| LOW | cert/lib/cert/runner.rb | 179 | # Check if apple certs (Xcode 11 and later) should be used | COMMENT |
| LOW | fastlane/lib/fastlane/swift_runner_upgrader.rb | 216 | # Check if upgrade is needed | COMMENT |
| LOW | fastlane/lib/fastlane/swift_runner_upgrader.rb | 234 | # Check if upgrade is needed | COMMENT |
| LOW | fastlane/lib/fastlane/swift_runner_upgrader.rb | 236 | # Check if Copy Files build phase contains FastlaneRunner target. | COMMENT |
| LOW | fastlane/lib/fastlane/fast_file.rb | 352 | # Check if checked out "branch" is actually a branch or a tag | COMMENT |
| LOW | fastlane/lib/fastlane/plugins/plugin_manager.rb | 69 | # Check if a plugin is added as dependency to either the | COMMENT |
| LOW | fastlane/lib/fastlane/plugins/plugin_manager.rb | 382 | # Check if this overwrites a built-in action and | COMMENT |
| LOW | fastlane/lib/fastlane/actions/update_fastlane.rb | 81 | # Set no_update to true so we don't try to update again | COMMENT |
| LOW | fastlane/lib/fastlane/actions/appledoc.rb | 64 | # Check if an output path was given | COMMENT |
| LOW | fastlane/lib/fastlane/actions/gcovr.rb | 66 | # Check if an output path was given | COMMENT |
| LOW | fastlane/lib/fastlane/actions/update_app_identifier.rb | 16 | # Check if current app identifier product bundle identifier | COMMENT |
| LOW | fastlane/lib/fastlane/actions/update_info_plist.rb | 8 | # Check if parameters are set | COMMENT |
| LOW | spaceship/lib/spaceship/client.rb | 405 | # Check if we have a cached/valid session | COMMENT |
| LOW | spaceship/lib/spaceship/client.rb | 417 | # Check if the session is still valid here | COMMENT |
| LOW⚡ | spaceship/lib/spaceship/client.rb | 566 | # Check if the cache or FASTLANE_SESSION is still valid | COMMENT |
| LOW | spaceship/lib/spaceship/client.rb | 722 | # Check if we have a local cache of the key | COMMENT |
| LOW | spaceship/lib/spaceship/client.rb | 934 | # Check if the failure is due to missing permissions (App Store Connect) | COMMENT |
| LOW | spaceship/lib/spaceship/portal/provisioning_profile.rb | 223 | # Verify if `attrs` contains the info needed to instantiate a template. | COMMENT |
| LOW | spaceship/lib/spaceship/portal/portal_client.rb | 194 | # Check if the input string was modified, since it might be empty now | COMMENT |
| LOW | spaceship/lib/spaceship/connect_api/client.rb | 59 | # Check if environment variables are set for Spaceship::Portal or Spaceship::Tunes to select team | COMMENT |
| LOW⚡ | pilot/lib/pilot/build_manager.rb | 658 | # Check if we should update it | COMMENT |
| LOW⚡ | pilot/lib/pilot/build_manager.rb | 670 | # Check if we should update it | COMMENT |
| LOW | gym/lib/gym/error_handler.rb | 279 | # Check if there is a mismatch between the name and the selected export method | COMMENT |
| LOW | trainer/lib/trainer/xcresult/helper.rb | 35 | # Check if the current xcresulttool supports new commands introduced in Xcode 16+ | COMMENT |
| LOW | sigh/lib/assets/resign.sh | 310 | # Check if the supplied file is an ipa or an app file | COMMENT |
| LOW | sigh/lib/assets/resign.sh | 596 | # Check if Info.plist has a reference to another app or extension | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | internal/rubocop/missing_keys_on_shared_area.rb | 45 | keys = children.map { |child| child.children.first.source.to_s.gsub(/\s|"|'/, '') } | CODE |
| CRITICAL | sigh/spec/spec_helper.rb | 44 | allow(profile).to receive(:expiration_date).and_return(Date.today.next_year.to_time.utc.strftime("%Y-%m-%dT%H:%M:% | CODE |
| CRITICAL | sigh/spec/spec_helper.rb | 67 | allow(profile).to receive(:expiration_date).and_return(Date.today.next_year.to_time.utc.strftime("%Y-%m-%dT%H:%M | CODE |
| CRITICAL | sigh/spec/spec_helper.rb | 69 | allow(profile).to receive(:expiration_date).and_return(Date.today.prev_year.to_time.utc.strftime("%Y-%m-%dT%H:%M | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | scan/lib/scan/error_handler.rb | 51 | # ------------------------------------------------ | COMMENT |
| MEDIUM | fastlane/spec/update_app_age_rating_spec.rb | 46 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | fastlane/spec/update_app_age_rating_spec.rb | 99 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | fastlane/spec/update_app_age_rating_spec.rb | 174 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | fastlane/spec/update_app_age_rating_spec.rb | 198 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | fastlane/spec/update_app_age_rating_spec.rb | 206 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | fastlane/spec/update_app_age_rating_spec.rb | 213 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | sigh/spec/resign_sh_spec.rb | 41 | # ─── Group A: does_bundle_id_match ──────────────────────────────────── | COMMENT |
| MEDIUM | sigh/spec/resign_sh_spec.rb | 111 | # ─── Group B: provision_for_bundle_id ───────────────────────────────── | COMMENT |
| MEDIUM | sigh/spec/resign_sh_spec.rb | 160 | # ─── Group C: Bundle ID replacement sed ─────────────────────────────── | COMMENT |
| MEDIUM | sigh/spec/resign_sh_spec.rb | 238 | # ─── Group D: Entitlements sed patterns ─────────────────────────────── | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | match/lib/match/spaceship_ensure.rb | 99 | # it's easier to just create a new one, than to repair an existing profile | COMMENT |
| LOW | fastlane_core/lib/fastlane_core/helper.rb | 273 | # So, if the passed value can't be resolved as a file in Library/Keychains, just use it as-is | COMMENT |
| LOW | fastlane_core/lib/fastlane_core/device_manager.rb | 178 | # We don't want to deal with that, so we just use the UDID | COMMENT |
| LOW | …_core/lib/fastlane_core/configuration/configuration.rb | 236 | # Since we don't want to be asked on tests, we'll just call the verify block with no value | COMMENT |
| LOW | fastlane/spec/actions_specs/dsym_zip_spec.rb | 53 | # MyApp is hardcoded into tested class so we'll just use that here | COMMENT |
| LOW | fastlane/lib/fastlane/swift_runner_upgrader.rb | 126 | # no work needed, just return | COMMENT |
| LOW | fastlane/lib/fastlane/swift_runner_upgrader.rb | 194 | # don't bother doing anything and just return true | COMMENT |
| LOW | fastlane/lib/fastlane/swift_fastlane_function.rb | 395 | # if we don't have a default value, but the param is options, just set a default value to nil | COMMENT |
| LOW | fastlane/lib/fastlane/swift_fastlane_api_generator.rb | 321 | # no changes at all, just return the same old api version string | COMMENT |
| LOW | fastlane/lib/fastlane/runner.rb | 235 | # Since we usually just need the passed hash, we'll just use the first object if there is only one | COMMENT |
| LOW | fastlane/lib/fastlane/server/socket_server.rb | 182 | ## probably need to just return Strings, or ready_for_next with object isn't String | COMMENT |
| LOW | fastlane/lib/fastlane/actions/add_git_tag.rb | 6 | # lane name in lane_context could be nil because you can just call $fastlane add_git_tag which has no context | COMMENT |
| LOW | …e/lib/fastlane/actions/update_code_signing_settings.rb | 61 | # Since Xcode 8, this is no longer needed, you simply use PROVISIONING_PROFILE_SPECIFIER | COMMENT |
| LOW | fastlane/lib/fastlane/actions/environment_variable.rb | 22 | # if no variable is requested, just return empty string | COMMENT |
| LOW | fastlane/lib/fastlane/actions/automatic_code_signing.rb | 68 | # Since Xcode 8, this is no longer needed, you simply use PROVISIONING_PROFILE_SPECIFIER | COMMENT |
| LOW | fastlane/lib/fastlane/actions/get_version_number.rb | 109 | # We can just set this as empty string since we join with `folder` below | COMMENT |
| LOW | spaceship/spec/portal/portal_client_spec.rb | 342 | # The method should just return the "message" key's value(s) in an array. | COMMENT |
| MEDIUM | spaceship/lib/spaceship/test_flight/base.rb | 25 | # Essentially, we are making a class-inheritable-accessor as described here: | COMMENT |
| LOW | precheck/lib/precheck/rule_processor.rb | 86 | # each rule will determine if it can handle this item, if not, it will just pass nil back | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | match/spec/runner_spec.rb | 611 | allow(Spaceship::ConnectAPI).to receive(:token).and_return("fake_token") | CODE |
| LOW | fastlane/spec/update_app_age_rating_spec.rb | 42 | username: 'user@example.com' | CODE |
| LOW | fastlane/spec/update_app_age_rating_spec.rb | 87 | 'user@example.com', | CODE |
| LOW | fastlane/spec/actions_specs/register_devices_spec.rb | 54 | username: 'test@test.com', | CODE |
| LOW | fastlane/spec/actions_specs/register_devices_spec.rb | 71 | username: 'test@test.com', | CODE |
| LOW | fastlane/spec/actions_specs/register_devices_spec.rb | 89 | username: 'test@test.com', | CODE |
| LOW | fastlane/spec/actions_specs/register_devices_spec.rb | 101 | username: 'test@test.com', | CODE |
| LOW | fastlane/spec/actions_specs/register_devices_spec.rb | 113 | username: 'test@test.com', | CODE |
| LOW | fastlane/lib/fastlane/actions/update_app_age_rating.rb | 149 | username: "user@example.com", | CODE |
| LOW | spaceship/spec/tunes/testers_spec.rb | 15 | expect(t.email).to eq("test@test.com") | CODE |
| LOW | spaceship/spec/tunes/testers_spec.rb | 43 | expect { Spaceship::Tunes::SandboxTester.delete!(['test@test.com']) }.not_to(raise_error) | CODE |
| LOW | pilot/spec/tester_importer_spec.rb | 71 | let(:fake_email) { "valid@email.address" } | CODE |
| LOW | pilot/spec/tester_importer_spec.rb | 72 | let(:fake_row) { ["FirstName", "LastName", fake_email, "group-1;group-2"] } | CODE |
| LOW | pilot/spec/tester_importer_spec.rb | 83 | email: fake_email, | CODE |
| LOW | pilot/spec/tester_importer_spec.rb | 102 | email: fake_email, | CODE |
| LOW | pilot/spec/tester_importer_spec.rb | 109 | expect(UI).to receive(:error).with("Error adding tester #{fake_email}: #{fake_exception}") | CODE |
| LOW⚡ | precheck/lib/precheck/rules/placeholder_words_rule.rb | 18 | "using placeholder text (e.g.:\"lorem ipsum\", \"text here\", etc...)" | CODE |
| LOW⚡ | precheck/lib/precheck/rules/placeholder_words_rule.rb | 25 | "lorem ipsum", | CODE |
| LOW⚡ | precheck/lib/precheck/rules/placeholder_words_rule.rb | 26 | "placeholder", | CODE |
| LOW⚡ | sigh/spec/manager_spec.rb | 71 | expect(FastlaneCore::ProvisioningProfile).to receive(:name).with(profile, keychain_path).and_return("fake-name") | CODE |
| LOW⚡ | sigh/spec/manager_spec.rb | 78 | expect(ENV["SIGH_NAME"]).to eq("fake-name") | CODE |
| LOW⚡ | sigh/spec/manager_spec.rb | 85 | expect(FastlaneCore::ProvisioningProfile).to receive(:name).with(profile, nil).and_return("fake-name") | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | match/lib/match/storage/google_cloud_storage.rb | 215 | UI.user_error!("Couldn't find Google Cloud Storage bucket with name #{self.bucket_name} for the currently used | CODE |
| LOW | fastlane_core/lib/fastlane_core/helper.rb | 251 | UI.user_error!("Could not find transporter at #{self.xcode_path}. Please make sure you set the correct path to y | CODE |
| LOW | fastlane_core/lib/fastlane_core/ui/fastlane_runner.rb | 109 | FastlaneCore::UI.user_error!("fastlane requires a minimum version of Xcode #{Fastlane::MINIMUM_XCODE_RELEASE}, | CODE |
| LOW | …_core/lib/fastlane_core/configuration/configuration.rb | 262 | # as this will make sure to use the `fetch` method | COMMENT |
| LOW | supply/lib/supply/client.rb | 257 | # make sure to have an active edit | COMMENT |
| LOW | fastlane/lib/fastlane/auto_complete.rb | 65 | UI.success("Don't forget to source that file in your current shell! 🐚") | CODE |
| LOW | fastlane/lib/fastlane/junit_generator.rb | 21 | UI.error("Couldn't save report.xml at path '#{File.expand_path(path)}', make sure you have write access to the c | CODE |
| LOW | fastlane/lib/fastlane/runner.rb | 166 | UI.user_error!("Plugin '#{method_sym}' was not properly loaded, make sure to follow the plugin docs for troubles | CODE |
| LOW | …/lib/fastlane/documentation/markdown_docs_generator.rb | 184 | raise "Could not find mkdocs.yml in #{target_path}, make sure to point to the fastlane/docs repo" unless File.exis | CODE |
| LOW | fastlane/lib/fastlane/documentation/docs_generator.rb | 59 | UI.error("Couldn't save fastlane documentation at path '#{File.expand_path(output_path)}', make sure you have wr | CODE |
| LOW | fastlane/lib/fastlane/plugins/plugin_manager.rb | 279 | # This will make sure to load the action | COMMENT |
| LOW | fastlane/lib/fastlane/actions/set_github_release.rb | 49 | UI.user_error!("You are not authorized to access #{repo_name}, please make sure you provided a valid API t | CODE |
| LOW | fastlane/lib/fastlane/actions/get_github_release.rb | 23 | UI.error("You are not authorized to access #{params[:url]}, please make sure you provided a valid API toke | CODE |
| LOW | spaceship/lib/spaceship/test_flight/group.rb | 117 | raise "The app #{app.name} does not have a default external group. Please make sure to pass group names to the | CODE |
| LOW | spaceship/lib/spaceship/tunes/app_version.rb | 359 | # Don't forget to call save! after calling this method | COMMENT |
| LOW | gym/lib/gym/code_signing_mapping.rb | 29 | # With the code below, we'll make sure to take the best of it: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | spaceship/lib/spaceship/upgrade_2fa_later_client.rb | 26 | # Step 1 - Request repair | COMMENT |
| LOW | spaceship/lib/spaceship/upgrade_2fa_later_client.rb | 31 | # Step 2 - Request repair options | COMMENT |
| LOW | spaceship/lib/spaceship/upgrade_2fa_later_client.rb | 47 | # Step 3 - Request setup later | COMMENT |
| LOW | spaceship/lib/spaceship/upgrade_2fa_later_client.rb | 62 | # Step 4 - Post complete | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | fastlane/lib/fastlane/actions/appaloosa.rb | 251 | api_token: 'your_api_key', | CODE |