[INFO] fetching crate luauperf 1.0.2... [INFO] testing luauperf-1.0.2 against try#dec9417b8611e34e787a3e4c37686b5131f9e5c5 for pr-154210-1 [INFO] extracting crate luauperf 1.0.2 into /workspace/builds/worker-7-tc2/source [INFO] started tweaking crates.io crate luauperf 1.0.2 [INFO] finished tweaking crates.io crate luauperf 1.0.2 [INFO] tweaked toml for crates.io crate luauperf 1.0.2 written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate luauperf 1.0.2 on toolchain dec9417b8611e34e787a3e4c37686b5131f9e5c5 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate luauperf 1.0.2 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] d822d336ff0fce5fb03756e9d9080b622c679164db70609482228e03af69fcd3 [INFO] running `Command { std: "docker" "start" "-a" "d822d336ff0fce5fb03756e9d9080b622c679164db70609482228e03af69fcd3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "d822d336ff0fce5fb03756e9d9080b622c679164db70609482228e03af69fcd3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d822d336ff0fce5fb03756e9d9080b622c679164db70609482228e03af69fcd3", kill_on_drop: false }` [INFO] [stdout] d822d336ff0fce5fb03756e9d9080b622c679164db70609482228e03af69fcd3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] b484b15e1eee60ae1ad2206885fe40dd9645865f5692657cfed15d9542e29aae [INFO] running `Command { std: "docker" "start" "-a" "b484b15e1eee60ae1ad2206885fe40dd9645865f5692657cfed15d9542e29aae", kill_on_drop: false }` [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling hashbrown v0.12.3 [INFO] [stderr] Compiling winnow v0.7.15 [INFO] [stderr] Compiling indexmap v1.9.3 [INFO] [stderr] Compiling syn v2.0.117 [INFO] [stderr] Compiling smol_str v0.3.6 [INFO] [stderr] Compiling rayon v1.11.0 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling derive_more-impl v1.0.0 [INFO] [stderr] Compiling full_moon_derive v0.11.0 [INFO] [stderr] Compiling derive_more v1.0.0 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling serde_spanned v0.6.9 [INFO] [stderr] Compiling toml_datetime v0.6.11 [INFO] [stderr] Compiling full_moon v2.1.1 [INFO] [stderr] Compiling toml_edit v0.22.27 [INFO] [stderr] Compiling toml v0.8.23 [INFO] [stderr] Compiling luauperf v1.0.2 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 20.76s [INFO] running `Command { std: "docker" "inspect" "b484b15e1eee60ae1ad2206885fe40dd9645865f5692657cfed15d9542e29aae", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b484b15e1eee60ae1ad2206885fe40dd9645865f5692657cfed15d9542e29aae", kill_on_drop: false }` [INFO] [stdout] b484b15e1eee60ae1ad2206885fe40dd9645865f5692657cfed15d9542e29aae [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 24a50bb7bf78bf736e26f8d7b7a447d3db811716f624afd46e89eb016c5a3307 [INFO] running `Command { std: "docker" "start" "-a" "24a50bb7bf78bf736e26f8d7b7a447d3db811716f624afd46e89eb016c5a3307", kill_on_drop: false }` [INFO] [stderr] Compiling luauperf v1.0.2 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 9.51s [INFO] running `Command { std: "docker" "inspect" "24a50bb7bf78bf736e26f8d7b7a447d3db811716f624afd46e89eb016c5a3307", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "24a50bb7bf78bf736e26f8d7b7a447d3db811716f624afd46e89eb016c5a3307", kill_on_drop: false }` [INFO] [stdout] 24a50bb7bf78bf736e26f8d7b7a447d3db811716f624afd46e89eb016c5a3307 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 081926d34044d1c2f63ae20acec92880fdae07616b1964ff667f48657be1f4b1 [INFO] running `Command { std: "docker" "start" "-a" "081926d34044d1c2f63ae20acec92880fdae07616b1964ff667f48657be1f4b1", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.09s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/luauperf-5c65cb62be18940e) [INFO] [stdout] [INFO] [stdout] running 989 tests [INFO] [stdout] test fix::tests::test_find_matching_paren ... ok [INFO] [stdout] test fix::tests::test_fix_classname_eq ... ok [INFO] [stdout] test fix::tests::test_end_to_start_application ... ok [INFO] [stdout] test fix::tests::test_fix_cframe_identity ... ok [INFO] [stdout] test fix::tests::test_fix_classname_neq ... ok [INFO] [stdout] test fix::tests::test_fix_color3_new_misuse ... ok [INFO] [stdout] test fix::tests::test_fix_coroutine_resume_create ... ok [INFO] [stdout] test fix::tests::test_fix_deprecated_delay_via_rule ... ok [INFO] [stdout] test fix::tests::test_fix_deprecated_elapsed_time ... ok [INFO] [stdout] test fix::tests::test_fix_deprecated_elapsed_time_capital ... ok [INFO] [stdout] test fix::tests::test_fix_deprecated_delay ... ok [INFO] [stdout] test fix::tests::test_fix_deprecated_lowercase_disconnect ... ok [INFO] [stdout] test fix::tests::test_fix_deprecated_lowercase_wait ... ok [INFO] [stdout] test fix::tests::test_fix_deprecated_lowercase_find_first_child ... ok [INFO] [stdout] test fix::tests::test_fix_deprecated_tick ... ok [INFO] [stdout] test fix::tests::test_fix_deprecated_userid ... ok [INFO] [stdout] test fix::tests::test_fix_deprecated_wait ... ok [INFO] [stdout] test fix::tests::test_fix_direct_service_access ... ok [INFO] [stdout] test fix::tests::test_fix_deprecated_version ... ok [INFO] [stdout] test fix::tests::test_fix_direct_service_access_debris ... ok [INFO] [stdout] test fix::tests::test_fix_deprecated_userid_in_expression ... ok [INFO] [stdout] test fix::tests::test_fix_floor_to_multiple ... ok [INFO] [stdout] test fix::tests::test_fix_deprecated_wait_already_task ... ok [INFO] [stdout] test fix::tests::test_fix_floor_to_multiple_with_number ... ok [INFO] [stdout] test fix::tests::test_fix_format_no_args ... ok [INFO] [stdout] test fix::tests::test_fix_format_with_args_returns_none ... ok [INFO] [stdout] test fix::tests::test_fix_deprecated_spawn ... ok [INFO] [stdout] test fix::tests::test_fix_floor_round_manual ... ok [INFO] [stdout] test fix::tests::test_fix_getservice_workspace ... ok [INFO] [stdout] test fix::tests::test_fix_floor_division_complex_rejected ... ok [INFO] [stdout] test fix::tests::test_fix_deprecated_lowercase_connect ... ok [INFO] [stdout] test fix::tests::test_fix_fmod_over_modulo ... ok [INFO] [stdout] test fix::tests::test_fix_ipairs_over_generalized ... ok [INFO] [stdout] test fix::tests::test_fix_game_workspace ... ok [INFO] [stdout] test fix::tests::test_fix_foreach_deprecated ... ok [INFO] [stdout] test fix::tests::test_fix_ipairs_over_getchildren ... ok [INFO] [stdout] test fix::tests::test_fix_getservice_workspace_single_quote ... ok [INFO] [stdout] test fix::tests::test_fix_foreachi_deprecated ... ok [INFO] [stdout] test fix::tests::test_fix_ipairs_discard_value ... ok [INFO] [stdout] test fix::tests::test_fix_len_over_hash_method ... ok [INFO] [stdout] test fix::tests::test_fix_missing_native_after_strict ... ok [INFO] [stdout] test fix::tests::test_fix_missing_native_with_optimize_already ... ok [INFO] [stdout] test fix::tests::test_fix_missing_native_alone ... ok [INFO] [stdout] test fix::tests::test_fix_missing_strict_alone ... ok [INFO] [stdout] test fix::tests::test_fix_missing_strict_after_native ... ok [INFO] [stdout] test fix::tests::test_fix_next_comma_expression ... ok [INFO] [stdout] test fix::tests::test_fix_getn_deprecated ... ok [INFO] [stdout] test fix::tests::test_fix_pairs_over_generalized ... ok [INFO] [stdout] test fix::tests::test_fix_pairs_over_getchildren ... ok [INFO] [stdout] test fix::tests::test_fix_parent_nil_over_destroy ... ok [INFO] [stdout] test fix::tests::test_fix_parent_nil_over_destroy_dotted ... ok [INFO] [stdout] test fix::tests::test_fix_pairs_discard_value ... ok [INFO] [stdout] test fix::tests::test_fix_pow_three_returns_none ... ok [INFO] [stdout] test fix::tests::test_fix_format_no_args_single_quote ... ok [INFO] [stdout] test fix::tests::test_fix_len_over_hash_dot ... ok [INFO] [stdout] test fix::tests::test_fix_next_comma_simple ... ok [INFO] [stdout] test fix::tests::test_fix_missing_optimize_after_native ... ok [INFO] [stdout] test fix::tests::test_fix_random_one_arg ... ok [INFO] [stdout] test fix::tests::test_fix_random_two_args ... ok [INFO] [stdout] test fix::tests::test_fix_randomseed_nested_parens ... ok [INFO] [stdout] test fix::tests::test_fix_randomseed_simple ... ok [INFO] [stdout] test fix::tests::test_fix_pairs_nested_call ... ok [INFO] [stdout] test fix::tests::test_fix_redundant_bool_return_true ... ok [INFO] [stdout] test fix::tests::test_fix_random_nested_call ... ok [INFO] [stdout] test fix::tests::test_fix_redundant_nil_eq ... ok [INFO] [stdout] test fix::tests::test_fix_redundant_nil_neq ... ok [INFO] [stdout] test fix::tests::test_fix_redundant_tostring ... ok [INFO] [stdout] test fix::tests::test_fix_tostring_in_interpolation ... ok [INFO] [stdout] test fix::tests::test_fix_set_primary_part_cframe ... ok [INFO] [stdout] test fix::tests::test_fix_tostring_on_string ... ok [INFO] [stdout] test fix::tests::test_fix_tostring_on_string_single_quote ... ok [INFO] [stdout] test fix::tests::test_fix_type_over_typeof ... ok [INFO] [stdout] test fix::tests::test_fix_udim2_from_offset ... ok [INFO] [stdout] test fix::tests::test_fix_udim2_from_scale ... ok [INFO] [stdout] test fix::tests::test_fix_unnecessary_closure_method_rejected ... ok [INFO] [stdout] test fix::tests::test_fix_two_arg_instance_new ... ok [INFO] [stdout] test fix::tests::test_fix_two_arg_instance_new_complex_parent ... ok [INFO] [stdout] test fix::tests::test_fix_redundant_bool_return_false ... ok [INFO] [stdout] test fix::tests::test_fix_parent_nil_over_destroy_indented ... ok [INFO] [stdout] test fix::tests::test_fix_pow_two_expr ... ok [INFO] [stdout] test fix::tests::test_fix_pow_two_simple ... ok [INFO] [stdout] test fix::tests::test_fix_tostring_in_interpolation_nested ... ok [INFO] [stdout] test fix::tests::test_fix_unnecessary_closure_pcall ... ok [INFO] [stdout] test fix::tests::test_fix_unnecessary_closure_task_defer_not_fixed ... ok [INFO] [stdout] test fix::tests::test_fix_floor_division ... ok [INFO] [stdout] test fix::tests::test_fix_random_no_args ... ok [INFO] [stdout] test fix::tests::test_fix_raycast_filter_deprecated ... ok [INFO] [stdout] test fix::tests::test_fix_unnecessary_closure_task_delay_not_fixed ... ok [INFO] [stdout] test fix::tests::test_fix_unnecessary_closure_task_spawn ... ok [INFO] [stdout] test fix::tests::test_fix_unnecessary_tonumber ... ok [INFO] [stdout] test fix::tests::test_fix_vector3_one_constant ... ok [INFO] [stdout] test fix::tests::test_fix_vector2_one_constant ... ok [INFO] [stdout] test fix::tests::test_fix_vector3_zero_constant ... ok [INFO] [stdout] test fix::tests::test_fix_wait_for_child_already_has_timeout ... ok [INFO] [stdout] test fix::tests::test_fix_wait_after_utf8 ... ok [INFO] [stdout] test fix::tests::test_fix_vector2_zero_constant ... ok [INFO] [stdout] test fix::tests::test_no_overlap_keeps_both ... ok [INFO] [stdout] test fix::tests::test_merge_same_position ... ok [INFO] [stdout] test fix::tests::test_remove_overlapping ... ok [INFO] [stdout] test fix::tests::test_unfixable_rule_returns_none ... ok [INFO] [stdout] test ignore::tests::bare_ignore_with_reason ... ok [INFO] [stdout] test ignore::tests::both_inline_and_next_line_merge ... ok [INFO] [stdout] test ignore::tests::directive_bare ... ok [INFO] [stdout] test ignore::tests::directive_no_colon_with_text_not_parsed ... ok [INFO] [stdout] test ignore::tests::directive_bare_with_reason_parsed ... ok [INFO] [stdout] test ignore::tests::directive_with_reason_parsed ... ok [INFO] [stdout] test ignore::tests::directive_with_rules ... ok [INFO] [stdout] test ignore::tests::extract_standalone_comment ... ok [INFO] [stdout] test ignore::tests::extract_comment_after_string ... ok [INFO] [stdout] test fix::tests::test_fix_ypcall ... ok [INFO] [stdout] test fix::tests::test_fix_unnecessary_tonumber_float ... ok [INFO] [stdout] test ignore::tests::extract_comment_inside_double_string ... ok [INFO] [stdout] test ignore::tests::directive_wrong_prefix ... ok [INFO] [stdout] test ignore::tests::empty_source ... ok [INFO] [stdout] test ignore::tests::file_and_line_ignores_together ... ok [INFO] [stdout] test ignore::tests::extract_no_comment ... ok [INFO] [stdout] test ignore::tests::extract_inline_comment ... ok [INFO] [stdout] test fix::tests::test_fix_unnecessary_tonumber_variable_returns_none ... ok [INFO] [stdout] test ignore::tests::file_directive_bare ... ok [INFO] [stdout] test ignore::tests::file_directive_with_rules ... ok [INFO] [stdout] test ignore::tests::file_ignore_after_directives_and_blank_lines ... ok [INFO] [stdout] test ignore::tests::file_ignore_after_multiple_directives ... ok [INFO] [stdout] test ignore::tests::file_ignore_all ... ok [INFO] [stdout] test ignore::tests::file_ignore_all_overrides_specific ... ok [INFO] [stdout] test fix::tests::test_fix_unnecessary_closure_with_assignment ... ok [INFO] [stdout] test ignore::tests::file_ignore_after_native_directive ... ok [INFO] [stdout] test ignore::tests::extract_comment_inside_single_string ... ok [INFO] [stdout] test ignore::tests::file_ignore_on_first_line ... ok [INFO] [stdout] test ignore::tests::file_ignore_specific_rules ... ok [INFO] [stdout] test ignore::tests::file_ignore_not_after_code ... ok [INFO] [stdout] test ignore::tests::file_ignore_with_comment_before ... ok [INFO] [stdout] test ignore::tests::ignore_does_not_affect_other_lines ... ok [INFO] [stdout] test ignore::tests::inline_ignore_with_reason ... ok [INFO] [stdout] test ignore::tests::line_past_end_never_matched ... ok [INFO] [stdout] test ignore::tests::line_zero_never_matched ... ok [INFO] [stdout] test ignore::tests::ignore_in_double_quoted_string_not_parsed ... ok [INFO] [stdout] test ignore::tests::ignore_in_single_quoted_string_not_parsed ... ok [INFO] [stdout] test ignore::tests::indented_comment ... ok [INFO] [stdout] test ignore::tests::inline_ignore_all_rules ... ok [INFO] [stdout] test ignore::tests::inline_ignore_multiple_rules ... ok [INFO] [stdout] test ignore::tests::inline_ignore_multiple_rules_with_reason ... ok [INFO] [stdout] test ignore::tests::next_line_directive_bare ... ok [INFO] [stdout] test ignore::tests::inline_ignore_specific_rule ... ok [INFO] [stdout] test ignore::tests::multiple_file_ignore_directives_merge ... ok [INFO] [stdout] test ignore::tests::next_line_ignore_specific_rule ... ok [INFO] [stdout] test ignore::tests::next_line_ignore_all ... ok [INFO] [stdout] test ignore::tests::next_line_ignore_with_reason ... ok [INFO] [stdout] test ignore::tests::next_line_directive_with_rules ... ok [INFO] [stdout] test ignore::tests::no_ignores ... ok [INFO] [stdout] test ignore::tests::next_line_only_affects_next_line ... ok [INFO] [stdout] test ignore::tests::prefix_not_confused_with_next_line ... ok [INFO] [stdout] test ignore::tests::reason_with_commas_not_parsed_as_rules ... ok [INFO] [stdout] test ignore::tests::unrelated_comment_not_parsed ... ok [INFO] [stdout] test ignore::tests::standalone_comment_ignore ... ok [INFO] [stdout] test ignore::tests::trailing_comma_ignored ... ok [INFO] [stdout] test ignore::tests::multiple_ignores_on_different_lines ... ok [INFO] [stdout] test ignore::tests::inline_ignore_all_with_colon_no_rules ... ok [INFO] [stdout] test ignore::tests::file_ignore_with_reason ... ok [INFO] [stdout] test rules::alloc::tests::excessive_string_split_outside_loop_ok ... ok [INFO] [stdout] test rules::alloc::tests::coroutine_wrap_outside_loop_ok ... ok [INFO] [stdout] test rules::alloc::tests::buffer_over_string_pack_detected ... ok [INFO] [stdout] test rules::alloc::tests::closure_in_loop_assignment_detected ... ok [INFO] [stdout] test ignore::tests::next_line_at_last_line_targets_beyond_file ... ok [INFO] [stdout] test rules::alloc::tests::excessive_string_split_in_loop_detected ... ok [INFO] [stdout] test ignore::tests::whitespace_around_rules ... ok [INFO] [stdout] test rules::alloc::tests::buffer_over_string_pack_outside_loop_ok ... ok [INFO] [stdout] test fix::tests::test_fix_wait_for_child_timeout ... ok [INFO] [stdout] test ignore::tests::extract_luau_directive_skipped ... ok [INFO] [stdout] test rules::alloc::tests::closure_in_loop_table_assignment_ok ... ok [INFO] [stdout] test rules::alloc::tests::closure_in_loop_table_field_ok ... ok [INFO] [stdout] test rules::alloc::tests::coroutine_wrap_in_loop_detected ... ok [INFO] [stdout] test ignore::tests::next_line_all_plus_inline_specific_merges_to_all ... ok [INFO] [stdout] test rules::alloc::tests::mutable_upvalue_detected ... ok [INFO] [stdout] test rules::alloc::tests::gsub_string_replacement_in_loop_ok ... ok [INFO] [stdout] test rules::alloc::tests::closure_in_loop_callback_ok ... ok [INFO] [stdout] test rules::alloc::tests::repeated_string_byte_outside_loop_ok ... ok [INFO] [stdout] test rules::alloc::tests::repeated_gsub_detected ... ok [INFO] [stdout] test rules::alloc::tests::closure_in_loop_variable_name_ok ... ok [INFO] [stdout] test rules::alloc::tests::single_gsub_ok ... ok [INFO] [stdout] test rules::alloc::tests::select_in_loop_detected ... ok [INFO] [stdout] test rules::alloc::tests::select_varargs_in_loop_ok ... ok [INFO] [stdout] test rules::alloc::tests::string_concat_in_loop_compound_detected ... ok [INFO] [stdout] test rules::alloc::tests::select_outside_loop_ok ... ok [INFO] [stdout] test rules::alloc::tests::gsub_function_in_loop_detected ... ok [INFO] [stdout] test rules::alloc::tests::immutable_upvalue_ok ... ok [INFO] [stdout] test rules::alloc::tests::string_concat_in_loop_accumulative_detected ... ok [INFO] [stdout] test rules::alloc::tests::repeated_string_byte_in_loop_detected ... ok [INFO] [stdout] test rules::alloc::tests::table_create_for_dict_detected ... ok [INFO] [stdout] test rules::alloc::tests::string_concat_in_loop_function_arg_ok ... ok [INFO] [stdout] test rules::alloc::tests::table_insert_known_size_detected ... ok [INFO] [stdout] test rules::alloc::tests::table_create_preferred_outside_loop_ok ... ok [INFO] [stdout] test rules::alloc::tests::table_create_preferred_in_loop_detected ... ok [INFO] [stdout] test rules::alloc::tests::table_insert_generic_loop_ok ... ok [INFO] [stdout] test rules::alloc::tests::string_concat_in_loop_non_accumulative_ok ... ok [INFO] [stdout] test rules::alloc::tests::string_concat_varname_in_string_literal_ok ... ok [INFO] [stdout] test rules::alloc::tests::table_clone_outside_loop_ok ... ok [INFO] [stdout] test rules::alloc::tests::table_create_for_array_ok ... ok [INFO] [stdout] test rules::alloc::tests::string_concat_outside_loop_ok ... ok [INFO] [stdout] test rules::alloc::tests::typeof_outside_loop_ok ... ok [INFO] [stdout] test rules::alloc::tests::table_clone_in_loop_detected ... ok [INFO] [stdout] test rules::alloc::tests::two_gsub_calls_ok ... ok [INFO] [stdout] test rules::alloc::tests::unnecessary_closure_in_block_comment_not_flagged ... ok [INFO] [stdout] test rules::alloc::tests::unnecessary_closure_multi_line_ok ... ok [INFO] [stdout] test rules::alloc::tests::unnecessary_closure_task_defer_ok ... ok [INFO] [stdout] test rules::alloc::tests::unnecessary_closure_chained_call_not_flagged ... ok [INFO] [stdout] test rules::alloc::tests::unnecessary_closure_task_spawn_detected ... ok [INFO] [stdout] test rules::alloc::tests::unnecessary_closure_single_call_detected ... ok [INFO] [stdout] test rules::alloc::tests::unnecessary_closure_pcall_detected ... ok [INFO] [stdout] test rules::alloc::tests::unnecessary_closure_method_call_ok ... ok [INFO] [stdout] test rules::alloc::tests::unnecessary_closure_with_params_ok ... ok [INFO] [stdout] test rules::alloc::tests::unnecessary_closure_nested_call_args_ok ... ok [INFO] [stdout] test rules::alloc::tests::unnecessary_closure_dotted_call_detected ... ok [INFO] [stdout] test rules::alloc::tests::unnecessary_closure_multi_statement_not_flagged ... ok [INFO] [stdout] test rules::alloc::tests::unnecessary_closure_code_on_wrapper_line_not_flagged ... ok [INFO] [stdout] test rules::cache::tests::cframe_new_in_loop_detected ... ok [INFO] [stdout] test rules::alloc::tests::typeof_in_loop_detected ... ok [INFO] [stdout] test rules::alloc::tests::unnecessary_closure_task_delay_ok ... ok [INFO] [stdout] test rules::alloc::tests::unnecessary_closure_yielding_args_ok ... ok [INFO] [stdout] test rules::cache::tests::current_camera_single_ok ... ok [INFO] [stdout] test rules::cache::tests::current_camera_uncached_detected ... ok [INFO] [stdout] test rules::cache::tests::brick_color_outside_loop_ok ... ok [INFO] [stdout] test rules::cache::tests::cframe_new_outside_loop_ok ... ok [INFO] [stdout] test rules::cache::tests::color3_new_in_loop_detected ... ok [INFO] [stdout] test rules::alloc::tests::varargs_not_flagged_as_concat ... ok [INFO] [stdout] test rules::cache::tests::different_objects_not_flagged ... ok [INFO] [stdout] test rules::cache::tests::different_services_ok ... ok [INFO] [stdout] test rules::cache::tests::brick_color_in_loop_detected ... ok [INFO] [stdout] test rules::cache::tests::color_sequence_in_function_detected ... ok [INFO] [stdout] test rules::cache::tests::color_sequence_at_module_level_ok ... ok [INFO] [stdout] test rules::cache::tests::color3_new_outside_loop_ok ... ok [INFO] [stdout] test rules::cache::tests::enum_lookup_outside_loop_ok ... ok [INFO] [stdout] test rules::cache::tests::load_animation_outside_loop_ok ... ok [INFO] [stdout] test rules::cache::tests::local_player_single_ok ... ok [INFO] [stdout] test rules::cache::tests::instance_new_in_loop_detected ... ok [INFO] [stdout] test rules::cache::tests::number_range_at_module_level_ok ... ok [INFO] [stdout] test rules::cache::tests::local_player_uncached_detected ... ok [INFO] [stdout] test rules::cache::tests::get_attribute_in_loop_detected ... ok [INFO] [stdout] test rules::cache::tests::local_player_two_refs_ok ... ok [INFO] [stdout] test rules::cache::tests::instance_new_outside_loop_ok ... ok [INFO] [stdout] test rules::cache::tests::number_range_in_function_detected ... ok [INFO] [stdout] test rules::cache::tests::get_attribute_outside_loop_ok ... ok [INFO] [stdout] test rules::cache::tests::magnitude_over_squared_detected ... ok [INFO] [stdout] test rules::cache::tests::duplicate_get_service_detected ... ok [INFO] [stdout] test rules::cache::tests::magnitude_both_sides_one_hit ... ok [INFO] [stdout] test rules::cache::tests::enum_lookup_in_loop_detected ... ok [INFO] [stdout] test rules::cache::tests::raycast_params_factory_ok ... ok [INFO] [stdout] test rules::cache::tests::overlap_params_factory_ok ... ok [INFO] [stdout] test rules::cache::tests::region_new_in_loop_detected ... ok [INFO] [stdout] test rules::cache::tests::raycast_params_in_function_detected ... ok [INFO] [stdout] test rules::cache::tests::load_animation_in_loop_detected ... ok [INFO] [stdout] test rules::cache::tests::overlap_params_in_function_detected ... ok [INFO] [stdout] test rules::cache::tests::region_new_outside_loop_ok ... ok [INFO] [stdout] test rules::cache::tests::repeated_color3_detected ... ok [INFO] [stdout] test rules::cache::tests::repeated_get_children_detected ... ok [INFO] [stdout] test rules::cache::tests::tween_create_outside_loop_ok ... ok [INFO] [stdout] test rules::cache::tests::single_get_children_ok ... ok [INFO] [stdout] test rules::cache::tests::tween_info_enum_args_detected ... ok [INFO] [stdout] test rules::cache::tests::repeated_color3_different_args_ok ... ok [INFO] [stdout] test rules::cache::tests::tween_info_at_module_level_ok ... ok [INFO] [stdout] test rules::cache::tests::number_sequence_at_module_level_ok ... ok [INFO] [stdout] test rules::cache::tests::overlap_params_at_module_level_ok ... ok [INFO] [stdout] test rules::cache::tests::number_sequence_in_function_detected ... ok [INFO] [stdout] test rules::cache::tests::repeated_property_chain_under_threshold_ok ... ok [INFO] [stdout] test rules::cache::tests::repeated_property_chain_detected ... ok [INFO] [stdout] test rules::cache::tests::tween_info_variable_args_ok ... ok [INFO] [stdout] test rules::cache::tests::tween_create_in_loop_detected ... ok [INFO] [stdout] test rules::cache::tests::udim2_from_scale_in_loop_detected ... ok [INFO] [stdout] test rules::cache::tests::single_get_service_ok ... ok [INFO] [stdout] test rules::cache::tests::magnitude_squared_ok ... ok [INFO] [stdout] test rules::cache::tests::tween_info_in_function_detected ... ok [INFO] [stdout] test rules::cache::tests::vector3_new_outside_loop_ok ... ok [INFO] [stdout] test rules::cache::tests::workspace_lookup_in_loop_detected ... ok [INFO] [stdout] test rules::cache::tests::vector3_new_constant_in_loop_detected ... ok [INFO] [stdout] test rules::cache::tests::uncached_get_service_return_function_ok ... ok [INFO] [stdout] test rules::cache::tests::workspace_lookup_outside_loop_ok ... ok [INFO] [stdout] test rules::cache::tests::vector2_new_outside_loop_ok ... ok [INFO] [stdout] test rules::complexity::tests::datastore_mock_file_skipped ... ok [INFO] [stdout] test rules::complexity::tests::accumulating_rebuild_detected ... ok [INFO] [stdout] test rules::cache::tests::vector2_new_in_loop_detected ... ok [INFO] [stdout] test rules::complexity::tests::datastore_with_pcall_ok ... ok [INFO] [stdout] test rules::complexity::tests::datastore_xpcall_closure_ok ... ok [INFO] [stdout] test rules::complexity::tests::datastore_pcall_closure_ok ... ok [INFO] [stdout] test rules::complexity::tests::elseif_chain_detected ... ok [INFO] [stdout] test rules::complexity::tests::filter_collect_all_ok ... ok [INFO] [stdout] test rules::cache::tests::vector3_new_variable_in_loop_ok ... ok [INFO] [stdout] test rules::complexity::tests::filter_then_first_detected ... ok [INFO] [stdout] test rules::cache::tests::vector2_new_constant_in_loop_detected ... ok [INFO] [stdout] test rules::cache::tests::unique_color3_ok ... ok [INFO] [stdout] test rules::complexity::tests::datastore_nested_calls_in_pcall_ok ... ok [INFO] [stdout] test rules::complexity::tests::datastore_no_pcall_detected ... ok [INFO] [stdout] test rules::complexity::tests::deep_metatable_chain_detected ... ok [INFO] [stdout] test rules::cache::tests::udim2_new_outside_loop_ok ... ok [INFO] [stdout] test rules::complexity::tests::datastore_pcall_two_lines_above_ok ... ok [INFO] [stdout] test rules::cache::tests::uncached_get_service_in_func_detected ... ok [INFO] [stdout] test rules::complexity::tests::accumulating_rebuild_outside_loop_ok ... ok [INFO] [stdout] test rules::cache::tests::udim2_new_in_loop_detected ... ok [INFO] [stdout] test rules::complexity::tests::find_first_child_non_recursive_ok ... ok [INFO] [stdout] test rules::complexity::tests::for_in_first_element_idiom_ok ... ok [INFO] [stdout] test rules::complexity::tests::filter_then_first_direct_return_detected ... ok [INFO] [stdout] test rules::complexity::tests::find_first_child_recursive_detected ... ok [INFO] [stdout] test rules::complexity::tests::find_first_child_recursive_module_level_ok ... ok [INFO] [stdout] test rules::complexity::tests::datastore_large_pcall_closure_ok ... ok [INFO] [stdout] test rules::complexity::tests::filter_then_first_nested_if_return_ok ... ok [INFO] [stdout] test rules::complexity::tests::get_descendants_in_loop_detected ... ok [INFO] [stdout] test rules::complexity::tests::get_descendants_outside_loop_ok ... ok [INFO] [stdout] test rules::complexity::tests::shallow_metatable_not_flagged ... ok [INFO] [stdout] test rules::complexity::tests::short_elseif_ok ... ok [INFO] [stdout] test rules::complexity::tests::get_tagged_in_loop_detected ... ok [INFO] [stdout] test rules::complexity::tests::single_loop_table_find_ok ... ok [INFO] [stdout] test rules::complexity::tests::gmatch_in_loop_detected ... ok [INFO] [stdout] test rules::complexity::tests::get_tagged_outside_loop_ok ... ok [INFO] [stdout] test rules::complexity::tests::gmatch_outside_loop_ok ... ok [INFO] [stdout] test rules::complexity::tests::normal_loop_ok ... ok [INFO] [stdout] test rules::complexity::tests::one_iteration_loop_detected ... ok [INFO] [stdout] test rules::complexity::tests::one_iteration_loop_single_line_then_return_ok ... ok [INFO] [stdout] test rules::complexity::tests::nested_table_find_detected ... ok [INFO] [stdout] test rules::complexity::tests::promise_chain_in_loop_detected ... ok [INFO] [stdout] test rules::complexity::tests::repeated_typeof_detected ... ok [INFO] [stdout] test rules::complexity::tests::promise_chain_outside_loop_ok ... ok [INFO] [stdout] test rules::complexity::tests::string_match_outside_loop_ok ... ok [INFO] [stdout] test rules::complexity::tests::string_match_in_loop_detected ... ok [INFO] [stdout] test rules::complexity::tests::table_find_outside_loop_ok ... ok [INFO] [stdout] test rules::instance::tests::changed_on_model_detected ... ok [INFO] [stdout] test rules::complexity::tests::require_in_function_detected ... ok [INFO] [stdout] test rules::instance::tests::changed_no_args_callback_ok ... ok [INFO] [stdout] test rules::complexity::tests::table_remove_shift_detected ... ok [INFO] [stdout] test rules::instance::tests::changed_on_part_detected ... ok [INFO] [stdout] test rules::instance::tests::changed_named_function_ref_ok ... ok [INFO] [stdout] test rules::instance::tests::bulk_property_set_detected ... ok [INFO] [stdout] test rules::complexity::tests::table_sort_in_loop_detected ... ok [INFO] [stdout] test rules::complexity::tests::require_at_module_level_ok ... ok [INFO] [stdout] test rules::instance::tests::changed_non_value_detected ... ok [INFO] [stdout] test rules::complexity::tests::table_remove_last_not_flagged ... ok [INFO] [stdout] test rules::instance::tests::classname_eq_detected ... ok [INFO] [stdout] test rules::complexity::tests::table_find_in_loop_detected ... ok [INFO] [stdout] test rules::instance::tests::changed_skip_property_filter ... ok [INFO] [stdout] test rules::instance::tests::changed_skip_value_base_isa ... ok [INFO] [stdout] test rules::instance::tests::changed_value_base_dot_value_ok ... ok [INFO] [stdout] test rules::instance::tests::classname_custom_class_ok ... ok [INFO] [stdout] test rules::instance::tests::changed_on_workspace_ok ... ok [INFO] [stdout] test rules::complexity::tests::wait_for_child_outside_loop_ok ... ok [INFO] [stdout] test rules::instance::tests::classname_part_still_detected ... ok [INFO] [stdout] test rules::instance::tests::classname_script_exact_match_ok ... ok [INFO] [stdout] test rules::complexity::tests::wait_for_child_in_loop_detected ... ok [INFO] [stdout] test rules::instance::tests::classname_module_script_exact_match_ok ... ok [INFO] [stdout] test rules::instance::tests::classname_not_equal_detected ... ok [INFO] [stdout] test rules::instance::tests::classname_neq_detected ... ok [INFO] [stdout] test rules::instance::tests::get_children_in_loop_lune_path_skipped ... ok [INFO] [stdout] test rules::instance::tests::classname_over_isa_detected ... ok [INFO] [stdout] test rules::instance::tests::get_children_in_loop_detected ... ok [INFO] [stdout] test rules::instance::tests::clone_parent_last_ok ... ok [INFO] [stdout] test rules::instance::tests::getchildren_direct_ok ... ok [INFO] [stdout] test rules::instance::tests::ipairs_over_getchildren_detected ... ok [INFO] [stdout] test rules::instance::tests::get_children_outside_loop_ok ... ok [INFO] [stdout] test rules::instance::tests::different_find_first_child_not_flagged ... ok [INFO] [stdout] test rules::instance::tests::isa_call_ok ... ok [INFO] [stdout] test rules::instance::tests::classname_local_script_exact_match_ok ... ok [INFO] [stdout] test rules::instance::tests::destroy_with_isa_filter_ok ... ok [INFO] [stdout] test rules::instance::tests::clear_all_children_loop_detected ... ok [INFO] [stdout] test rules::instance::tests::get_children_in_for_in_header_ok ... ok [INFO] [stdout] test rules::complexity::tests::table_sort_outside_loop_ok ... ok [INFO] [stdout] test rules::complexity::tests::typeof_twice_ok ... ok [INFO] [stdout] test rules::instance::tests::changed_on_non_part_ok ... ok [INFO] [stdout] test rules::instance::tests::name_indexing_outside_loop_ok ... ok [INFO] [stdout] test rules::instance::tests::clone_parent_before_properties ... ok [INFO] [stdout] test rules::instance::tests::pairs_over_getdescendants_detected ... ok [INFO] [stdout] test rules::instance::tests::one_arg_instance_new_ok ... ok [INFO] [stdout] test rules::instance::tests::name_indexing_in_loop_detected ... ok [INFO] [stdout] test rules::instance::tests::classname_variable_comparison_ok ... ok [INFO] [stdout] test rules::instance::tests::pairs_over_getchildren_detected ... ok [INFO] [stdout] test rules::instance::tests::property_before_parent_correct_order ... ok [INFO] [stdout] test rules::instance::tests::repeated_find_first_child_detected ... ok [INFO] [stdout] test rules::instance::tests::isa_ok ... ok [INFO] [stdout] test rules::instance::tests::property_change_signal_value_base_ok ... ok [INFO] [stdout] test rules::instance::tests::get_children_in_for_header_ok ... ok [INFO] [stdout] test rules::instance::tests::few_property_sets_not_flagged ... ok [INFO] [stdout] test rules::instance::tests::property_before_parent_child_props_ok ... ok [INFO] [stdout] test rules::instance::tests::property_change_signal_wrong_detected ... ok [INFO] [stdout] test rules::instance::tests::repeated_find_first_child_nested_if_ok ... ok [INFO] [stdout] test rules::instance::tests::repeated_find_first_child_same_line_ok ... ok [INFO] [stdout] test rules::instance::tests::set_parent_after_instance_new_ok ... ok [INFO] [stdout] test rules::instance::tests::repeated_find_first_child_test_file_skipped ... ok [INFO] [stdout] test rules::instance::tests::set_parent_outside_loop_ok ... ok [INFO] [stdout] test rules::instance::tests::set_parent_in_loop_detected ... ok [INFO] [stdout] test rules::instance::tests::wait_for_child_chain_detected ... ok [INFO] [stdout] test rules::instance::tests::set_parent_comparison_not_flagged ... ok [INFO] [stdout] test rules::math::tests::abs_for_sign_check_detected ... ok [INFO] [stdout] test rules::math::tests::cframe_identity_with_args_ok ... ok [INFO] [stdout] test rules::math::tests::clamp_manual_detected ... ok [INFO] [stdout] test rules::math::tests::exp_outside_loop_ok ... ok [INFO] [stdout] test rules::instance::tests::two_arg_instance_new_detected ... ok [INFO] [stdout] test rules::math::tests::clamp_not_flagged ... ok [INFO] [stdout] test rules::instance::tests::set_parent_not_equal_not_flagged ... ok [INFO] [stdout] test rules::math::tests::cframe_with_args_not_flagged ... ok [INFO] [stdout] test rules::math::tests::floor_division_detected ... ok [INFO] [stdout] test rules::instance::tests::single_wait_for_child_ok ... ok [INFO] [stdout] test rules::math::tests::floor_no_division_ok ... ok [INFO] [stdout] test rules::math::tests::floor_round_manual_detected ... ok [INFO] [stdout] test rules::math::tests::floor_round_half_away_from_zero_ok ... ok [INFO] [stdout] test rules::math::tests::floor_to_multiple_different_vars_ok ... ok [INFO] [stdout] test rules::math::tests::floor_to_multiple_detected ... ok [INFO] [stdout] test rules::math::tests::floor_no_multiply_ok ... ok [INFO] [stdout] test rules::math::tests::exp_in_loop_detected ... ok [INFO] [stdout] test rules::math::tests::abs_standalone_not_flagged ... ok [INFO] [stdout] test rules::math::tests::floor_normal_ok ... ok [INFO] [stdout] test rules::math::tests::fmod_detected ... ok [INFO] [stdout] test rules::math::tests::floor_division_nested_call_detected ... ok [INFO] [stdout] test rules::math::tests::pow_fast_exponents_ok ... ok [INFO] [stdout] test rules::math::tests::min_single_arg_detected ... ok [INFO] [stdout] test rules::math::tests::lerp_manual_detected ... ok [INFO] [stdout] test rules::instance::tests::property_before_parent_detected ... ok [INFO] [stdout] test rules::math::tests::modulo_not_flagged ... ok [INFO] [stdout] test rules::math::tests::max_two_args_ok ... ok [INFO] [stdout] test rules::math::tests::fmod_nested_ok ... ok [INFO] [stdout] test rules::math::tests::huge_comparison_in_loop_detected ... ok [INFO] [stdout] test rules::math::tests::pow_slow_exponent_detected ... ok [INFO] [stdout] test rules::math::tests::huge_outside_loop_ok ... ok [INFO] [stdout] test rules::math::tests::math_random_no_args_detected ... ok [INFO] [stdout] test rules::math::tests::pow_slow_negative_detected ... ok [INFO] [stdout] test rules::math::tests::max_single_arg_detected ... ok [INFO] [stdout] test rules::math::tests::pow_three_not_flagged ... ok [INFO] [stdout] test rules::math::tests::pow_two_detected ... ok [INFO] [stdout] test rules::math::tests::random_deprecated_detected ... ok [INFO] [stdout] test rules::math::tests::simple_multiply_not_flagged_as_lerp ... ok [INFO] [stdout] test rules::math::tests::random_new_ok ... ok [INFO] [stdout] test rules::math::tests::random_new_in_loop_detected ... ok [INFO] [stdout] test rules::math::tests::random_new_outside_loop_ok ... ok [INFO] [stdout] test rules::math::tests::sqrt_assignment_ok ... ok [INFO] [stdout] test rules::math::tests::sqrt_ge_comparison_detected ... ok [INFO] [stdout] test rules::math::tests::sqrt_in_comparison_flagged ... ok [INFO] [stdout] test rules::math::tests::cframe_identity_detected ... ok [INFO] [stdout] test rules::math::tests::sqrt_standalone_not_flagged ... ok [INFO] [stdout] test rules::math::tests::max_single_arg_unpack_ok ... ok [INFO] [stdout] test rules::math::tests::vector3_one_constant_detected ... ok [INFO] [stdout] test rules::math::tests::vector3_zero_constant_detected ... ok [INFO] [stdout] test rules::math::tests::vector3_non_zero_ok ... ok [INFO] [stdout] test rules::math::tests::vector3_zero_definition_not_flagged ... ok [INFO] [stdout] test rules::math::tests::vector3_constant_definition_not_flagged ... ok [INFO] [stdout] test rules::math::tests::vector3_nonzero_not_flagged ... ok [INFO] [stdout] test rules::math::tests::unnecessary_tonumber_detected ... ok [INFO] [stdout] test rules::math::tests::vector2_constant_definition_not_flagged ... ok [INFO] [stdout] test rules::math::tests::vector2_non_zero_ok ... ok [INFO] [stdout] test rules::math::tests::vector2_nonzero_ok ... ok [INFO] [stdout] test rules::math::tests::vector2_one_detected ... ok [INFO] [stdout] test rules::math::tests::vector2_other_not_flagged ... ok [INFO] [stdout] test rules::math::tests::vector2_zero_detected ... ok [INFO] [stdout] test rules::math::tests::vector2_zero_constant_detected ... ok [INFO] [stdout] test rules::math::tests::tonumber_on_string_ok ... ok [INFO] [stdout] test rules::math::tests::vector_normalize_different_vars_ok ... ok [INFO] [stdout] test rules::math::tests::vector_normalize_scalar_div_magnitude ... ok [INFO] [stdout] test rules::math::tests::vector_unit_not_flagged ... ok [INFO] [stdout] test rules::memory::tests::attribute_changed_outside_loop_ok ... ok [INFO] [stdout] test rules::memory::tests::destroy_call_ok ... ok [INFO] [stdout] test rules::memory::tests::debris_positive_duration_ok ... ok [INFO] [stdout] test rules::memory::tests::character_added_with_removing_ok ... ok [INFO] [stdout] test rules::memory::tests::collection_tag_no_cleanup_detected ... ok [INFO] [stdout] test rules::memory::tests::connect_in_connect_detected ... ok [INFO] [stdout] test rules::memory::tests::character_added_with_died_ok ... ok [INFO] [stdout] test rules::memory::tests::character_added_wait_ok ... ok [INFO] [stdout] test rules::memory::tests::connect_in_connect_player_char_ok ... ok [INFO] [stdout] test rules::memory::tests::connect_in_connect_char_died_ok ... ok [INFO] [stdout] test rules::memory::tests::heartbeat_allocation_detected ... ok [INFO] [stdout] test rules::memory::tests::heartbeat_no_alloc_ok ... ok [INFO] [stdout] test rules::memory::tests::bounded_table_growth_ok ... ok [INFO] [stdout] test rules::memory::tests::debris_negative_duration_detected ... ok [INFO] [stdout] test rules::memory::tests::collection_tag_with_cleanup_ok ... ok [INFO] [stdout] test rules::memory::tests::character_added_no_cleanup_detected ... ok [INFO] [stdout] test rules::memory::tests::missing_player_removing_detected ... ok [INFO] [stdout] test rules::memory::tests::parent_nil_in_comment_ok ... ok [INFO] [stdout] test rules::memory::tests::player_removing_present_ok ... ok [INFO] [stdout] test rules::memory::tests::renderstepped_table_create_detected ... ok [INFO] [stdout] test rules::memory::tests::runservice_no_disconnect_detected ... ok [INFO] [stdout] test rules::memory::tests::runservice_stored_connection_ok ... ok [INFO] [stdout] test rules::memory::tests::attribute_changed_in_loop_detected ... ok [INFO] [stdout] test rules::math::tests::vector_normalize_manual_detected ... ok [INFO] [stdout] test rules::memory::tests::sound_not_destroyed_detected ... ok [INFO] [stdout] test rules::memory::tests::task_delay_short_ok ... ok [INFO] [stdout] test rules::memory::tests::task_delay_long_duration_detected ... ok [INFO] [stdout] test rules::memory::tests::tween_completed_connect_detected ... ok [INFO] [stdout] test rules::memory::tests::single_connect_ok ... ok [INFO] [stdout] test rules::memory::tests::parent_nil_detected ... ok [INFO] [stdout] test rules::memory::tests::unbounded_table_growth_detected ... ok [INFO] [stdout] test rules::memory::tests::untracked_connection_maid_ok ... ok [INFO] [stdout] test rules::memory::tests::untracked_connection_method_init_ok ... ok [INFO] [stdout] test rules::memory::tests::untracked_connection_destroying_ok ... ok [INFO] [stdout] test rules::memory::tests::runservice_with_disconnect_ok ... ok [INFO] [stdout] test rules::memory::tests::untracked_connection_detected ... ok [INFO] [stdout] test rules::memory::tests::untracked_connection_plain_init_ok ... ok [INFO] [stdout] test rules::memory::tests::untracked_connection_plain_start_ok ... ok [INFO] [stdout] test rules::memory::tests::untracked_connection_nested_in_init_ok ... ok [INFO] [stdout] test rules::memory::tests::sound_with_ended_ok ... ok [INFO] [stdout] test rules::memory::tests::untracked_connection_on_client_event_ok ... ok [INFO] [stdout] test rules::memory::tests::set_attribute_in_heartbeat_detected ... ok [INFO] [stdout] test rules::memory::tests::tween_completed_once_ok ... ok [INFO] [stdout] test rules::memory::tests::untracked_connection_module_scope_ok ... ok [INFO] [stdout] test rules::memory::tests::weak_table_with_shrink_ok ... ok [INFO] [stdout] test rules::native::tests::coroutine_in_native_detected ... ok [INFO] [stdout] test rules::memory::tests::while_true_with_yield_ok ... ok [INFO] [stdout] test rules::native::tests::computation_script_not_flagged ... ok [INFO] [stdout] test rules::memory::tests::while_true_with_break_ok ... ok [INFO] [stdout] test rules::memory::tests::untracked_connection_local_init_ok ... ok [INFO] [stdout] test rules::memory::tests::set_attribute_outside_heartbeat_ok ... ok [INFO] [stdout] test rules::memory::tests::weak_table_no_shrink_detected ... ok [INFO] [stdout] test rules::memory::tests::while_true_no_yield_detected ... ok [INFO] [stdout] test rules::native::tests::coroutine_without_native_ok ... ok [INFO] [stdout] test rules::native::tests::global_write_detected ... ok [INFO] [stdout] test rules::native::tests::dynamic_table_key_no_native_ok ... ok [INFO] [stdout] test rules::native::tests::heavy_api_script_detected ... ok [INFO] [stdout] test rules::native::tests::dot_call_fastcall_ok ... ok [INFO] [stdout] test rules::native::tests::dynamic_require_bracket_detected ... ok [INFO] [stdout] test rules::native::tests::loadstring_detected ... ok [INFO] [stdout] test rules::native::tests::getfenv_method_ok ... ok [INFO] [stdout] test rules::native::tests::import_chain_in_loop_detected ... ok [INFO] [stdout] test rules::native::tests::getfenv_detected ... ok [INFO] [stdout] test rules::native::tests::dynamic_require_string_bracket_ok ... ok [INFO] [stdout] test rules::native::tests::local_math_equals_math_ok ... ok [INFO] [stdout] test rules::native::tests::global_read_ok ... ok [INFO] [stdout] test rules::native::tests::math_huge_comparison_neq_detected ... ok [INFO] [stdout] test rules::native::tests::dynamic_table_key_in_native_detected ... ok [INFO] [stdout] test rules::native::tests::math_huge_comparison_eq_detected ... ok [INFO] [stdout] test rules::native::tests::loadstring_not_method ... ok [INFO] [stdout] test rules::native::tests::math_huge_no_comparison_ok ... ok [INFO] [stdout] test rules::native::tests::no_native_not_flagged ... ok [INFO] [stdout] test rules::native::tests::mixed_computation_api_detected ... ok [INFO] [stdout] test rules::native::tests::method_call_defeats_fastcall_detected ... ok [INFO] [stdout] test rules::native::tests::non_fastcall_in_native_loop ... ok [INFO] [stdout] test rules::native::tests::non_fastcall_no_native_ok ... ok [INFO] [stdout] test rules::native::tests::non_fastcall_outside_loop_ok ... ok [INFO] [stdout] test rules::native::tests::pcall_in_non_native_ok ... ok [INFO] [stdout] test rules::native::tests::setfenv_detected ... ok [INFO] [stdout] test rules::native::tests::shared_global_mutation_detected ... ok [INFO] [stdout] test rules::native::tests::shadowed_builtin_detected ... ok [INFO] [stdout] test rules::native::tests::pcall_in_native_loop_detected ... ok [INFO] [stdout] test rules::native::tests::pure_computation_not_flagged ... ok [INFO] [stdout] test rules::native::tests::shared_local_override_ok ... ok [INFO] [stdout] test rules::native::tests::shared_read_ok ... ok [INFO] [stdout] test rules::native::tests::shared_cached_still_flagged ... ok [INFO] [stdout] test rules::native::tests::short_chain_ok ... ok [INFO] [stdout] test rules::native::tests::small_table_in_native_ok ... ok [INFO] [stdout] test rules::native::tests::string_pattern_in_native_no_loop_ok ... ok [INFO] [stdout] test rules::native::tests::static_require_ok ... ok [INFO] [stdout] test rules::native::tests::vararg_in_native_no_loop_ok ... ok [INFO] [stdout] test rules::native::tests::untyped_params_in_native ... ok [INFO] [stdout] test rules::native::tests::string_pattern_in_native_detected ... ok [INFO] [stdout] test rules::network::tests::datastore_in_loop_detected ... ok [INFO] [stdout] test rules::network::tests::dict_keys_in_remote_data_detected ... ok [INFO] [stdout] test rules::native::tests::table_one_index_ok ... ok [INFO] [stdout] test rules::network::tests::dict_keys_outside_heartbeat_ok ... ok [INFO] [stdout] test rules::network::tests::fire_client_ok ... ok [INFO] [stdout] test rules::network::tests::fire_client_single_ok ... ok [INFO] [stdout] test rules::network::tests::fire_client_per_player_detected ... ok [INFO] [stdout] test rules::network::tests::fire_client_in_loop_ok ... ok [INFO] [stdout] test rules::native::tests::large_table_literal_detected ... ok [INFO] [stdout] test rules::native::tests::table_zero_index_detected ... ok [INFO] [stdout] test rules::native::tests::untyped_params_no_native_not_flagged ... ok [INFO] [stdout] test rules::native::tests::vararg_in_native_detected ... ok [INFO] [stdout] test rules::network::tests::datastore_outside_loop_ok ... ok [INFO] [stdout] test rules::native::tests::typed_params_not_flagged ... ok [INFO] [stdout] test rules::network::tests::fire_outside_loop_ok ... ok [INFO] [stdout] test rules::network::tests::fire_in_loop_detected ... ok [INFO] [stdout] test rules::network::tests::http_service_outside_loop_ok ... ok [INFO] [stdout] test rules::network::tests::invoke_client_direct_still_detected ... ok [INFO] [stdout] test rules::network::tests::http_service_in_loop_detected ... ok [INFO] [stdout] test rules::network::tests::fire_in_while_wait_game_loop_ok ... ok [INFO] [stdout] test rules::network::tests::invoke_in_loop_detected ... ok [INFO] [stdout] test rules::network::tests::fire_in_while_true_task_wait_ok ... ok [INFO] [stdout] test rules::network::tests::invoke_client_self_wrapper_ok ... ok [INFO] [stdout] test rules::network::tests::invoke_server_in_loop_detected ... ok [INFO] [stdout] test rules::network::tests::json_deep_clone_short_var_detected ... ok [INFO] [stdout] test rules::network::tests::invoke_server_outside_loop_ok ... ok [INFO] [stdout] test rules::network::tests::json_deep_clone_detected ... ok [INFO] [stdout] test rules::network::tests::invoke_outside_loop_ok ... ok [INFO] [stdout] test rules::network::tests::json_decode_in_for_in_ok ... ok [INFO] [stdout] test rules::network::tests::json_decode_alone_ok ... ok [INFO] [stdout] test rules::network::tests::invoke_client_detected ... ok [INFO] [stdout] test rules::network::tests::json_encode_alone_ok ... ok [INFO] [stdout] test rules::network::tests::unreliable_remote_preferred_detected ... ok [INFO] [stdout] test rules::network::tests::remote_event_raw_data_ok ... ok [INFO] [stdout] test rules::network::tests::unreliable_remote_already_unreliable_ok ... ok [INFO] [stdout] test rules::network::tests::large_remote_data_detected ... ok [INFO] [stdout] test rules::network::tests::marketplace_in_loop_detected ... ok [INFO] [stdout] test rules::network::tests::remote_event_string_data_format_detected ... ok [INFO] [stdout] test rules::network::tests::marketplace_outside_loop_ok ... ok [INFO] [stdout] test rules::network::tests::simple_remote_data_ok ... ok [INFO] [stdout] test rules::network::tests::json_encode_in_hot_loop_detected ... ok [INFO] [stdout] test rules::physics::tests::anchored_with_velocity_detected ... ok [INFO] [stdout] test rules::physics::tests::anchored_without_velocity_ok ... ok [INFO] [stdout] test rules::physics::tests::assembly_velocity_outside_loop_ok ... ok [INFO] [stdout] test rules::network::tests::remote_event_string_data_tostring_detected ... ok [INFO] [stdout] test rules::physics::tests::can_touch_query_not_disabled_detected ... ok [INFO] [stdout] test rules::physics::tests::assembly_velocity_in_loop_detected ... ok [INFO] [stdout] test rules::physics::tests::can_touch_query_disabled_ok ... ok [INFO] [stdout] test rules::network::tests::unreliable_remote_outside_heartbeat_ok ... ok [INFO] [stdout] test rules::physics::tests::cframe_assign_outside_loop_ok ... ok [INFO] [stdout] test rules::physics::tests::cframe_assign_camera_ok ... ok [INFO] [stdout] test rules::physics::tests::collision_group_in_loop_detected ... ok [INFO] [stdout] test rules::physics::tests::collision_group_outside_loop_ok ... ok [INFO] [stdout] test rules::physics::tests::massless_no_weld_ok ... ok [INFO] [stdout] test rules::physics::tests::massless_not_set_detected ... ok [INFO] [stdout] test rules::physics::tests::massless_with_anchored_ok ... ok [INFO] [stdout] test rules::physics::tests::cframe_assign_in_loop_detected ... ok [INFO] [stdout] test rules::physics::tests::move_to_in_loop_detected ... ok [INFO] [stdout] test rules::physics::tests::set_network_owner_in_loop_detected ... ok [INFO] [stdout] test rules::physics::tests::raycast_params_in_loop_detected ... ok [INFO] [stdout] test rules::physics::tests::terrain_write_outside_loop_ok ... ok [INFO] [stdout] test rules::physics::tests::spatial_query_outside_heartbeat_ok ... ok [INFO] [stdout] test rules::physics::tests::spatial_query_per_frame_detected ... ok [INFO] [stdout] test rules::physics::tests::set_network_owner_outside_loop_ok ... ok [INFO] [stdout] test rules::physics::tests::touched_with_find_first_child_ok ... ok [INFO] [stdout] test rules::physics::tests::spatial_query_render_stepped ... ok [INFO] [stdout] test rules::physics::tests::touched_with_destroy_ok ... ok [INFO] [stdout] test rules::physics::tests::touched_with_debounce_ok ... ok [INFO] [stdout] test rules::physics::tests::raycast_params_outside_loop_ok ... ok [INFO] [stdout] test rules::physics::tests::move_to_outside_loop_ok ... ok [INFO] [stdout] test rules::physics::tests::precise_collision_fidelity_detected ... ok [INFO] [stdout] test rules::physics::tests::terrain_write_in_loop_detected ... ok [INFO] [stdout] test rules::physics::tests::hull_collision_fidelity_ok ... ok [INFO] [stdout] test rules::render::tests::billboard_gui_outside_loop_ok ... ok [INFO] [stdout] test rules::physics::tests::touched_without_debounce_detected ... ok [INFO] [stdout] test rules::render::tests::beam_trail_in_loop_detected ... ok [INFO] [stdout] test rules::render::tests::beam_trail_outside_loop_ok ... ok [INFO] [stdout] test rules::physics::tests::weld_constraint_outside_loop_ok ... ok [INFO] [stdout] test rules::render::tests::billboard_gui_in_loop_detected ... ok [INFO] [stdout] test rules::render::tests::gui_creation_outside_loop_ok ... ok [INFO] [stdout] test rules::physics::tests::weld_constraint_in_loop_detected ... ok [INFO] [stdout] test rules::render::tests::gui_property_outside_heartbeat_ok ... ok [INFO] [stdout] test rules::render::tests::gui_creation_in_loop_detected ... ok [INFO] [stdout] test rules::render::tests::image_label_in_loop_detected ... ok [INFO] [stdout] test rules::render::tests::gui_property_in_heartbeat_detected ... ok [INFO] [stdout] test rules::render::tests::neon_material_in_loop_detected ... ok [INFO] [stdout] test rules::render::tests::neon_material_outside_loop_ok ... ok [INFO] [stdout] test rules::render::tests::image_label_outside_loop_ok ... ok [INFO] [stdout] test rules::render::tests::non_gui_in_loop_not_flagged ... ok [INFO] [stdout] test rules::render::tests::particle_emitter_in_loop_detected ... ok [INFO] [stdout] test rules::render::tests::particle_emitter_outside_loop_ok ... ok [INFO] [stdout] test rules::render::tests::rich_text_in_loop_detected ... ok [INFO] [stdout] test rules::render::tests::rich_text_outside_loop_ok ... ok [INFO] [stdout] test rules::render::tests::scrolling_frame_outside_loop_ok ... ok [INFO] [stdout] test rules::render::tests::surface_gui_in_loop_detected ... ok [INFO] [stdout] test rules::render::tests::surface_gui_outside_loop_ok ... ok [INFO] [stdout] test rules::render::tests::transparency_in_loop_detected ... ok [INFO] [stdout] test rules::render::tests::scrolling_frame_in_loop_detected ... ok [INFO] [stdout] test rules::roblox::tests::apply_description_in_loop_detected ... ok [INFO] [stdout] test rules::render::tests::transparency_outside_loop_ok ... ok [INFO] [stdout] test rules::roblox::tests::apply_description_outside_loop_ok ... ok [INFO] [stdout] test rules::roblox::tests::bind_to_render_step_maid_ok ... ok [INFO] [stdout] test rules::roblox::tests::bind_to_render_step_no_cleanup_detected ... ok [INFO] [stdout] test rules::roblox::tests::bind_to_render_step_trove_ok ... ok [INFO] [stdout] test rules::roblox::tests::cframe_new_3_args_ok ... ok [INFO] [stdout] test rules::roblox::tests::cframe_old_constructor_detected ... ok [INFO] [stdout] test rules::roblox::tests::bind_to_render_step_janitor_ok ... ok [INFO] [stdout] test rules::roblox::tests::character_added_no_existing_check ... ok [INFO] [stdout] test rules::roblox::tests::character_appearance_loaded_detected ... ok [INFO] [stdout] test rules::roblox::tests::cframe_new_no_args_ok ... ok [INFO] [stdout] test rules::roblox::tests::character_added_no_wait_detected ... ok [INFO] [stdout] test rules::roblox::tests::bind_to_render_step_with_unbind_ok ... ok [INFO] [stdout] test rules::roblox::tests::client_tween_ok ... ok [INFO] [stdout] test rules::roblox::tests::character_added_ok_no_appearance ... ok [INFO] [stdout] test rules::roblox::tests::character_added_with_existing_char_ok ... ok [INFO] [stdout] test rules::roblox::tests::changed_event_value_base_skip ... ok [INFO] [stdout] test rules::roblox::tests::character_added_with_existing_check_ok ... ok [INFO] [stdout] test rules::roblox::tests::clone_parent_last_ok ... ok [INFO] [stdout] test rules::roblox::tests::clone_parent_with_gap_detected ... ok [INFO] [stdout] test rules::roblox::tests::collision_group_property_ok ... ok [INFO] [stdout] test rules::roblox::tests::color3_new_nested_parens_ok ... ok [INFO] [stdout] test rules::roblox::tests::changed_event_int_value_skip ... ok [INFO] [stdout] test rules::roblox::tests::changed_event_unfiltered_detected ... ok [INFO] [stdout] test rules::roblox::tests::clone_set_parent_before_props_detected ... ok [INFO] [stdout] test rules::roblox::tests::color3_new_valid_ok ... ok [INFO] [stdout] test rules::roblox::tests::color3_new_variables_ok ... ok [INFO] [stdout] test rules::roblox::tests::deprecated_lowercase_isa_detected ... ok [INFO] [stdout] test rules::roblox::tests::color3_new_misuse_detected ... ok [INFO] [stdout] test rules::roblox::tests::coroutine_resume_create_detected ... ok [INFO] [stdout] test rules::roblox::tests::deprecated_body_movers_detected ... ok [INFO] [stdout] test rules::roblox::tests::deprecated_delay_detected ... ok [INFO] [stdout] test rules::roblox::tests::deprecated_find_part_on_ray_detected ... ok [INFO] [stdout] test rules::roblox::tests::deprecated_lowercase_connect_detected ... ok [INFO] [stdout] test rules::roblox::tests::deprecated_lowercase_disconnect_detected ... ok [INFO] [stdout] test rules::roblox::tests::deprecated_elapsed_time_detected ... ok [INFO] [stdout] test rules::roblox::tests::connect_callback_no_yield_ok ... ok [INFO] [stdout] test rules::roblox::tests::deprecated_lowercase_wait_detected ... ok [INFO] [stdout] test rules::roblox::tests::debris_add_item_detected ... ok [INFO] [stdout] test rules::roblox::tests::deprecated_on_close_detected ... ok [INFO] [stdout] test rules::roblox::tests::deprecated_on_close_spaced ... ok [INFO] [stdout] test rules::roblox::tests::deprecated_physics_service_detected ... ok [INFO] [stdout] test rules::roblox::tests::deprecated_region3_detected ... ok [INFO] [stdout] test rules::roblox::tests::deprecated_userid_detected ... ok [INFO] [stdout] test rules::roblox::tests::deprecated_spawn_detected ... ok [INFO] [stdout] test rules::roblox::tests::deprecated_tick_detected ... ok [INFO] [stdout] test rules::roblox::tests::deprecated_teleport_detected ... ok [INFO] [stdout] test rules::roblox::tests::deprecated_udim_scale_detected ... ok [INFO] [stdout] test rules::roblox::tests::deprecated_ypcall_detected ... ok [INFO] [stdout] test rules::roblox::tests::deprecated_userid_in_concat ... ok [INFO] [stdout] test rules::roblox::tests::deprecated_version_detected ... ok [INFO] [stdout] test rules::roblox::tests::deprecated_region3_whitelist ... ok [INFO] [stdout] test rules::roblox::tests::direct_service_not_prefix ... ok [INFO] [stdout] test rules::roblox::tests::deprecated_wait_detected ... ok [INFO] [stdout] test rules::roblox::tests::find_first_child_chain_detected ... ok [INFO] [stdout] test rules::roblox::tests::descendant_event_workspace_detected ... ok [INFO] [stdout] test rules::roblox::tests::direct_service_access_multiple ... ok [INFO] [stdout] test rules::roblox::tests::find_first_child_in_expect_ok ... ok [INFO] [stdout] test rules::roblox::tests::find_first_child_no_check_detected ... ok [INFO] [stdout] test rules::roblox::tests::deprecated_udim_offset_detected ... ok [INFO] [stdout] test rules::roblox::tests::find_first_child_stored_ok ... ok [INFO] [stdout] test rules::roblox::tests::find_first_child_with_guard_ok ... ok [INFO] [stdout] test rules::roblox::tests::direct_service_access_detected ... ok [INFO] [stdout] test rules::roblox::tests::game_loaded_race_detected ... ok [INFO] [stdout] test rules::roblox::tests::descendant_event_subtree_ok ... ok [INFO] [stdout] test rules::roblox::tests::direct_service_comment_ok ... ok [INFO] [stdout] test rules::roblox::tests::game_loaded_with_wait_ok ... ok [INFO] [stdout] test rules::roblox::tests::game_workspace_detected ... ok [INFO] [stdout] test rules::roblox::tests::get_attribute_in_heartbeat_detected ... ok [INFO] [stdout] test rules::roblox::tests::get_attribute_outside_heartbeat_ok ... ok [INFO] [stdout] test rules::roblox::tests::get_descendants_in_heartbeat_detected ... ok [INFO] [stdout] test rules::roblox::tests::get_rank_in_group_at_module_level_ok ... ok [INFO] [stdout] test rules::roblox::tests::getservice_workspace_detected ... ok [INFO] [stdout] test rules::roblox::tests::health_outside_loop_ok ... ok [INFO] [stdout] test rules::roblox::tests::get_rank_in_group_uncached_detected ... ok [INFO] [stdout] test rules::roblox::tests::get_descendants_outside_heartbeat_ok ... ok [INFO] [stdout] test rules::roblox::tests::get_property_changed_outside_loop_ok ... ok [INFO] [stdout] test rules::roblox::tests::get_full_name_outside_loop_ok ... ok [INFO] [stdout] test rules::roblox::tests::get_children_in_render_stepped_detected ... ok [INFO] [stdout] test rules::roblox::tests::get_full_name_in_loop_detected ... ok [INFO] [stdout] test rules::roblox::tests::get_children_in_player_added_ok ... ok [INFO] [stdout] test rules::roblox::tests::get_rank_in_group_in_for_in_ok ... ok [INFO] [stdout] test rules::roblox::tests::get_rank_in_group_in_function_ok ... ok [INFO] [stdout] test rules::roblox::tests::get_property_changed_in_loop_detected ... ok [INFO] [stdout] test rules::roblox::tests::health_polling_in_loop_detected ... ok [INFO] [stdout] test rules::roblox::tests::humanoid_move_to_outside_loop_ok ... ok [INFO] [stdout] test rules::roblox::tests::humanoid_move_to_in_loop_detected ... ok [INFO] [stdout] test rules::roblox::tests::heartbeat_no_prop_ok ... ok [INFO] [stdout] test rules::roblox::tests::get_property_changed_signal_ok ... ok [INFO] [stdout] test rules::roblox::tests::get_service_ok ... ok [INFO] [stdout] test rules::roblox::tests::insert_service_load_asset_module_level_ok ... ok [INFO] [stdout] test rules::roblox::tests::insert_service_load_asset_in_function_ok ... ok [INFO] [stdout] test rules::roblox::tests::lowercase_find_first_child_detected ... ok [INFO] [stdout] test rules::roblox::tests::humanoid_state_polling_detected ... ok [INFO] [stdout] test rules::roblox::tests::missing_optimize_detected ... ok [INFO] [stdout] test rules::roblox::tests::linear_velocity_ok ... ok [INFO] [stdout] test rules::roblox::tests::missing_optimize_not_when_present ... ok [INFO] [stdout] test rules::roblox::tests::humanoid_state_outside_loop_ok ... ok [INFO] [stdout] test rules::roblox::tests::lowercase_get_children_detected ... ok [INFO] [stdout] test rules::roblox::tests::insert_service_load_asset_detected ... ok [INFO] [stdout] test rules::roblox::tests::lowercase_is_a_detected ... ok [INFO] [stdout] test rules::roblox::tests::lowercase_connect_in_comment_ok ... ok [INFO] [stdout] test rules::roblox::tests::instance_new_part_ok ... ok [INFO] [stdout] test rules::roblox::tests::lowercase_instance_method_in_comment_ok ... ok [INFO] [stdout] test rules::roblox::tests::missing_native_detected ... ok [INFO] [stdout] test rules::roblox::tests::lowercase_connect_in_block_comment_ok ... ok [INFO] [stdout] test rules::roblox::tests::missing_optimize_not_without_native ... ok [INFO] [stdout] test rules::roblox::tests::missing_strict_with_header_ok ... ok [INFO] [stdout] test rules::roblox::tests::missing_native_with_header_ok ... ok [INFO] [stdout] test rules::roblox::tests::missing_strict_detected ... ok [INFO] [stdout] test rules::roblox::tests::model_pivot_to_ok ... ok [INFO] [stdout] test rules::roblox::tests::model_set_primary_part_cframe_detected ... ok [INFO] [stdout] test rules::roblox::tests::pivot_to_outside_loop_ok ... ok [INFO] [stdout] test rules::roblox::tests::no_yield_in_connect_ok ... ok [INFO] [stdout] test rules::roblox::tests::player_added_without_getplayers ... ok [INFO] [stdout] test rules::roblox::tests::player_added_race_detected ... ok [INFO] [stdout] test rules::roblox::tests::on_close_comment_ok ... ok [INFO] [stdout] test rules::roblox::tests::raycast_filter_exclude_ok ... ok [INFO] [stdout] test rules::roblox::tests::player_added_with_getplayers_ok ... ok [INFO] [stdout] test rules::roblox::tests::normal_connect_ok ... ok [INFO] [stdout] test rules::roblox::tests::pcall_in_loop_detected ... ok [INFO] [stdout] test rules::roblox::tests::pcall_outside_loop_ok ... ok [INFO] [stdout] test rules::roblox::tests::once_over_connect_detected ... ok [INFO] [stdout] test rules::roblox::tests::on_close_read_ok ... ok [INFO] [stdout] test rules::roblox::tests::os_clock_ok ... ok [INFO] [stdout] test rules::roblox::tests::os_clock_not_flagged_as_elapsed_time ... ok [INFO] [stdout] test rules::roblox::tests::pascalcase_isa_ok ... ok [INFO] [stdout] test rules::roblox::tests::pivot_to_in_loop_detected ... ok [INFO] [stdout] test rules::roblox::tests::raycast_filter_blacklist_detected ... ok [INFO] [stdout] test rules::roblox::tests::raycast_filter_whitelist_detected ... ok [INFO] [stdout] test rules::roblox::tests::pcall_ok ... ok [INFO] [stdout] test rules::roblox::tests::raycast_ok ... ok [INFO] [stdout] test rules::roblox::tests::task_delay_destroy_ok ... ok [INFO] [stdout] test rules::roblox::tests::task_delay_ok ... ok [INFO] [stdout] test rules::roblox::tests::render_stepped_on_client_ok ... ok [INFO] [stdout] test rules::roblox::tests::task_wait_ok_not_deprecated ... ok [INFO] [stdout] test rules::roblox::tests::raycast_filter_include_ok ... ok [INFO] [stdout] test rules::roblox::tests::require_in_connect_detected ... ok [INFO] [stdout] test rules::roblox::tests::server_property_in_heartbeat_detected ... ok [INFO] [stdout] test rules::roblox::tests::render_stepped_on_server_detected ... ok [INFO] [stdout] test rules::roblox::tests::require_at_module_level_ok ... ok [INFO] [stdout] test rules::roblox::tests::task_spawn_not_deprecated ... ok [INFO] [stdout] test rules::roblox::tests::server_side_tween_detected ... ok [INFO] [stdout] test rules::roblox::tests::set_attribute_outside_loop_ok ... ok [INFO] [stdout] test rules::roblox::tests::set_attribute_in_loop_detected ... ok [INFO] [stdout] test rules::roblox::tests::single_find_first_child_ok ... ok [INFO] [stdout] test rules::roblox::tests::render_stepped_method_name_ok ... ok [INFO] [stdout] test rules::roblox::tests::task_wait_with_arg_ok ... ok [INFO] [stdout] test rules::roblox::tests::teleport_async_no_pcall_detected ... ok [INFO] [stdout] test rules::roblox::tests::teleport_async_with_pcall_ok ... ok [INFO] [stdout] test rules::roblox::tests::udim2_mixed_ok ... ok [INFO] [stdout] test rules::roblox::tests::task_wait_no_arg_detected ... ok [INFO] [stdout] test rules::roblox::tests::task_spawn_ok ... ok [INFO] [stdout] test rules::roblox::tests::uppercase_connect_ok ... ok [INFO] [stdout] test rules::roblox::tests::string_value_over_attribute_detected ... ok [INFO] [stdout] test rules::roblox::tests::userid_not_prefix ... ok [INFO] [stdout] test rules::roblox::tests::userid_other_player_detected ... ok [INFO] [stdout] test rules::roblox::tests::userid_pascal_case_ok ... ok [INFO] [stdout] test rules::roblox::tests::while_task_wait_do_detected ... ok [INFO] [stdout] test rules::roblox::tests::uppercase_find_first_child_ok ... ok [INFO] [stdout] test rules::roblox::tests::userid_comment_ok ... ok [INFO] [stdout] test rules::roblox::tests::user_defined_connect_ok ... ok [INFO] [stdout] test rules::roblox::tests::userid_custom_object_ok ... ok [INFO] [stdout] test rules::roblox::tests::while_task_wait_bare_detected ... ok [INFO] [stdout] test rules::roblox::tests::version_as_property_ok ... ok [INFO] [stdout] test rules::roblox::tests::userid_inline_comment_ok ... ok [INFO] [stdout] test rules::roblox::tests::wait_for_child_no_timeout_detected ... ok [INFO] [stdout] test rules::roblox::tests::wait_for_child_with_timeout_ok ... ok [INFO] [stdout] test rules::roblox::tests::workspace_global_direct_ok ... ok [INFO] [stdout] test rules::roblox::tests::workspace_global_ok ... ok [INFO] [stdout] test rules::string::tests::find_with_pattern_chars_ok ... ok [INFO] [stdout] test rules::string::tests::concat_chain_detected ... ok [INFO] [stdout] test rules::roblox::tests::yield_waitforchild_in_connect_detected ... ok [INFO] [stdout] test rules::roblox::tests::while_wait_do_detected ... ok [INFO] [stdout] test rules::string::tests::format_no_args_detected ... ok [INFO] [stdout] test rules::roblox::tests::while_true_task_wait_ok ... ok [INFO] [stdout] test rules::roblox::tests::while_wait_bare_detected ... ok [INFO] [stdout] test rules::string::tests::format_complex_ok ... ok [INFO] [stdout] test rules::string::tests::byte_comparison_detected ... ok [INFO] [stdout] test rules::roblox::tests::while_wait_with_arg_ok ... ok [INFO] [stdout] test rules::string::tests::byte_comparison_different_indices_ok ... ok [INFO] [stdout] test rules::string::tests::format_simple_concat_detected ... ok [INFO] [stdout] test rules::roblox::tests::yield_in_connect_detected ... ok [INFO] [stdout] test rules::string::tests::format_redundant_tostring_detected ... ok [INFO] [stdout] test rules::roblox::tests::yield_in_connect_commented_out_ok ... ok [INFO] [stdout] test rules::string::tests::format_s_detected ... ok [INFO] [stdout] test rules::string::tests::format_single_s_ok ... ok [INFO] [stdout] test rules::string::tests::format_with_number_spec_ok ... ok [INFO] [stdout] test rules::string::tests::format_with_args_ok ... ok [INFO] [stdout] test rules::string::tests::format_tostring_non_s_ok ... ok [INFO] [stdout] test rules::string::tests::format_with_percent_ok ... ok [INFO] [stdout] test rules::string::tests::find_missing_plain_flag_detected ... ok [INFO] [stdout] test rules::string::tests::format_tostring_with_q_ok ... ok [INFO] [stdout] test rules::string::tests::gsub_with_replacement_not_flagged ... ok [INFO] [stdout] test rules::string::tests::interpolation_without_tostring_ok ... ok [INFO] [stdout] test rules::string::tests::len_over_hash_detected ... ok [INFO] [stdout] test rules::string::tests::lower_in_loop_detected ... ok [INFO] [stdout] test rules::string::tests::hash_operator_not_flagged ... ok [INFO] [stdout] test rules::string::tests::lower_for_comparison_detected ... ok [INFO] [stdout] test rules::string::tests::lower_outside_loop_ok ... ok [INFO] [stdout] test rules::string::tests::match_with_capture_ok ... ok [INFO] [stdout] test rules::string::tests::match_in_if_detected ... ok [INFO] [stdout] test rules::string::tests::rep_in_loop_detected ... ok [INFO] [stdout] test rules::string::tests::gsub_for_find_detected ... ok [INFO] [stdout] test rules::string::tests::reverse_in_loop_detected ... ok [INFO] [stdout] test rules::string::tests::reverse_outside_loop_ok ... ok [INFO] [stdout] test rules::string::tests::pattern_backtracking_detected ... ok [INFO] [stdout] test rules::string::tests::rep_outside_loop_ok ... ok [INFO] [stdout] test rules::string::tests::short_concat_ok ... ok [INFO] [stdout] test rules::string::tests::single_lower_ok ... ok [INFO] [stdout] test rules::string::tests::simple_pattern_ok ... ok [INFO] [stdout] test rules::string::tests::split_normal_separator_ok ... ok [INFO] [stdout] test rules::string::tests::split_empty_separator_method_detected ... ok [INFO] [stdout] test rules::string::tests::split_function_form_normal_separator_ok ... ok [INFO] [stdout] test rules::string::tests::split_empty_separator_function_form_detected ... ok [INFO] [stdout] test rules::string::tests::split_empty_separator_single_quote_detected ... ok [INFO] [stdout] test rules::string::tests::sub_for_single_char_last_detected ... ok [INFO] [stdout] test rules::string::tests::sub_without_comparison_ok ... ok [INFO] [stdout] test rules::string::tests::sub_prefix_check_detected ... ok [INFO] [stdout] test rules::string::tests::tostring_in_comment_ok ... ok [INFO] [stdout] test rules::string::tests::sub_with_range_ok ... ok [INFO] [stdout] test rules::string::tests::sub_for_single_char_first_detected ... ok [INFO] [stdout] test rules::string::tests::tostring_in_interpolation_detected ... ok [INFO] [stdout] test rules::string::tests::tostring_on_variable_ok ... ok [INFO] [stdout] test rules::string::tests::tostring_in_interpolation_nested_call ... ok [INFO] [stdout] test rules::style::tests::assert_in_loop_detected ... ok [INFO] [stdout] test rules::style::tests::coroutine_create_detected ... ok [INFO] [stdout] test rules::string::tests::tostring_in_interpolation_multiple ... ok [INFO] [stdout] test rules::style::tests::conditional_field_detected ... ok [INFO] [stdout] test rules::string::tests::tostring_in_regular_string_ok ... ok [INFO] [stdout] test rules::string::tests::tostring_outside_interpolation_ok ... ok [INFO] [stdout] test rules::style::tests::duplicate_string_literal_detected ... ok [INFO] [stdout] test rules::style::tests::error_with_level_ok ... ok [INFO] [stdout] test rules::style::tests::find_first_child_no_nil_check_ok ... ok [INFO] [stdout] test rules::style::tests::find_first_child_of_class_nil_check_detected ... ok [INFO] [stdout] test rules::style::tests::deep_parent_chain_detected ... ok [INFO] [stdout] test rules::style::tests::function_with_body_ok ... ok [INFO] [stdout] test rules::string::tests::tostring_on_string_detected ... ok [INFO] [stdout] test rules::style::tests::assert_outside_loop_ok ... ok [INFO] [stdout] test rules::style::tests::empty_function_body_detected ... ok [INFO] [stdout] test rules::style::tests::index_function_detected ... ok [INFO] [stdout] test rules::style::tests::error_no_level_detected ... ok [INFO] [stdout] test rules::style::tests::deprecated_global_rawget_detected ... ok [INFO] [stdout] test rules::style::tests::global_function_detected ... ok [INFO] [stdout] test rules::style::tests::index_function_proxy_not_flagged ... ok [INFO] [stdout] test rules::style::tests::few_strings_ok ... ok [INFO] [stdout] test rules::style::tests::if_return_true_no_else_ok ... ok [INFO] [stdout] test rules::style::tests::index_table_not_flagged ... ok [INFO] [stdout] test rules::style::tests::ipairs_discard_value_detected ... ok [INFO] [stdout] test rules::style::tests::method_definition_not_flagged ... ok [INFO] [stdout] test rules::style::tests::multiple_returns_in_heartbeat_detected ... ok [INFO] [stdout] test rules::style::tests::nil_check_on_different_var_not_flagged ... ok [INFO] [stdout] test rules::style::tests::match_with_capture_ok ... ok [INFO] [stdout] test rules::style::tests::next_comma_iteration_detected ... ok [INFO] [stdout] test rules::style::tests::nested_string_format_detected ... ok [INFO] [stdout] test rules::style::tests::next_comma_iteration_pairs_ok ... ok [INFO] [stdout] test rules::style::tests::local_function_not_flagged ... ok [INFO] [stdout] test rules::style::tests::match_for_existence_detected ... ok [INFO] [stdout] test rules::style::tests::redundant_bool_return_inverse_detected ... ok [INFO] [stdout] test rules::style::tests::nested_ternary_detected ... ok [INFO] [stdout] test rules::style::tests::redundant_if_false_detected ... ok [INFO] [stdout] test rules::style::tests::next_comma_in_comment_ok ... ok [INFO] [stdout] test rules::style::tests::redundant_bool_return_detected ... ok [INFO] [stdout] test rules::style::tests::deep_nesting_detected ... ok [INFO] [stdout] test rules::style::tests::normal_condition_ok ... ok [INFO] [stdout] test rules::style::tests::pairs_using_value_ok ... ok [INFO] [stdout] test rules::style::tests::normal_if_return_ok ... ok [INFO] [stdout] test rules::style::tests::nil_check_in_return_not_flagged ... ok [INFO] [stdout] test rules::style::tests::pairs_discard_value_detected ... ok [INFO] [stdout] test rules::style::tests::nil_check_in_assignment_not_flagged ... ok [INFO] [stdout] test rules::style::tests::simple_ternary_ok ... ok [INFO] [stdout] test rules::style::tests::redundant_nil_check_eq_detected ... ok [INFO] [stdout] test rules::style::tests::single_string_format_ok ... ok [INFO] [stdout] test rules::style::tests::table_index_ok ... ok [INFO] [stdout] test rules::style::tests::tostring_math_floor_detected ... ok [INFO] [stdout] test rules::style::tests::type_over_typeof_detected ... ok [INFO] [stdout] test rules::style::tests::type_check_in_loop_detected ... ok [INFO] [stdout] test rules::style::tests::redundant_nil_check_neq_detected ... ok [INFO] [stdout] test rules::style::tests::redundant_if_true_detected ... ok [INFO] [stdout] test rules::style::tests::shallow_nesting_ok ... ok [INFO] [stdout] test rules::style::tests::type_check_outside_loop_ok ... ok [INFO] [stdout] test rules::style::tests::two_parents_ok ... ok [INFO] [stdout] test rules::style::tests::single_return_in_heartbeat_ok ... ok [INFO] [stdout] test rules::style::tests::task_spawn_ok ... ok [INFO] [stdout] test rules::style::tests::typeof_ok ... ok [INFO] [stdout] test rules::style::tests::long_function_body_detected ... ok [INFO] [stdout] test rules::style::tests::tostring_alone_ok ... ok [INFO] [stdout] test rules::style::tests::short_function_body_ok ... ok [INFO] [stdout] test rules::style::tests::udim2_from_scale_detected ... ok [INFO] [stdout] test rules::style::tests::udim2_from_offset_skips_zeros ... ok [INFO] [stdout] test rules::style::tests::udim2_from_offset_detected ... ok [INFO] [stdout] test rules::style::tests::udim2_from_offset_ok ... ok [INFO] [stdout] test rules::style::tests::udim2_mixed_not_flagged ... ok [INFO] [stdout] test rules::table::tests::concat_outside_loop_ok ... ok [INFO] [stdout] test rules::table::tests::clear_vs_new_detected ... ok [INFO] [stdout] test rules::style::tests::udim2_prefer_from_offset_detected ... ok [INFO] [stdout] test rules::table::tests::freeze_outside_loop_ok ... ok [INFO] [stdout] test rules::table::tests::concat_with_separator_loop_detected ... ok [INFO] [stdout] test rules::style::tests::udim2_prefer_from_scale_detected ... ok [INFO] [stdout] test rules::table::tests::generalized_iteration_ok ... ok [INFO] [stdout] test rules::style::tests::udim2_with_scale_ok ... ok [INFO] [stdout] test rules::style::tests::uniform_fields_not_flagged ... ok [INFO] [stdout] test rules::style::tests::unused_variable_in_loop_detected ... ok [INFO] [stdout] test rules::table::tests::getn_deprecated_detected ... ok [INFO] [stdout] test rules::table::tests::freeze_in_loop_detected ... ok [INFO] [stdout] test rules::style::tests::udim2_with_offset_ok ... ok [INFO] [stdout] test rules::table::tests::foreachi_deprecated_detected ... ok [INFO] [stdout] test rules::table::tests::foreach_deprecated_detected ... ok [INFO] [stdout] test rules::table::tests::hash_length_ok ... ok [INFO] [stdout] test rules::table::tests::insert_append_ok ... ok [INFO] [stdout] test rules::table::tests::inline_constructor_not_flagged ... ok [INFO] [stdout] test rules::style::tests::used_variable_in_loop_ok ... ok [INFO] [stdout] test rules::table::tests::foreach_detected ... ok [INFO] [stdout] test rules::table::tests::ipairs_already_used_not_flagged ... ok [INFO] [stdout] test rules::table::tests::insert_with_position_detected ... ok [INFO] [stdout] test rules::table::tests::ipairs_over_numeric_for_detected ... ok [INFO] [stdout] test rules::table::tests::deferred_field_assignment_detected ... ok [INFO] [stdout] test rules::table::tests::manual_copy_detected ... ok [INFO] [stdout] test rules::table::tests::list_only_constructor_ok ... ok [INFO] [stdout] test rules::table::tests::ipairs_detected ... ok [INFO] [stdout] test rules::table::tests::local_new_table_in_loop_ok ... ok [INFO] [stdout] test rules::table::tests::polymorphic_constructor_detected ... ok [INFO] [stdout] test rules::table::tests::mixed_table_constructor_detected ... ok [INFO] [stdout] test rules::table::tests::sort_comparison_in_loop_detected ... ok [INFO] [stdout] test rules::table::tests::remove_in_ipairs_detected ... ok [INFO] [stdout] test rules::table::tests::next_t_nil_detected ... ok [INFO] [stdout] test rules::table::tests::remove_outside_ipairs_ok ... ok [INFO] [stdout] test rules::table::tests::nil_field_in_constructor_detected ... ok [INFO] [stdout] test rules::table::tests::no_nil_field_ok ... ok [INFO] [stdout] test rules::table::tests::non_copy_pairs_not_flagged ... ok [INFO] [stdout] test rules::table::tests::pack_detected ... ok [INFO] [stdout] test rules::table::tests::pairs_loop_not_flagged_as_foreach ... ok [INFO] [stdout] test rules::table::tests::pairs_over_generalized_detected ... ok [INFO] [stdout] test rules::table::tests::rawset_outside_loop_ok ... ok [INFO] [stdout] test rules::table::tests::rawset_in_loop_detected ... ok [INFO] [stdout] test rules::table::tests::sort_outside_loop_ok ... ok [INFO] [stdout] test rules::table::tests::next_t_ok ... ok [INFO] [stdout] test rules::table::tests::table_insert_front_in_loop_detected ... ok [INFO] [stdout] test rules::table::tests::table_insert_append_in_loop_ok ... ok [INFO] [stdout] test rules::table::tests::record_only_constructor_ok ... ok [INFO] [stdout] test rules::table::tests::table_literal_not_flagged_as_pack ... ok [INFO] [stdout] test rules::table::tests::uniform_constructor_not_flagged ... ok [INFO] [stdout] test rules::table::tests::table_insert_position_2_in_loop_ok ... ok [INFO] [stdout] test rules::table::tests::table_move_multiple_assignments_ok ... ok [INFO] [stdout] test rules::table::tests::table_insert_front_outside_loop_ok ... ok [INFO] [stdout] test rules::table::tests::table_move_over_loop_detected ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 989 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.61s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "081926d34044d1c2f63ae20acec92880fdae07616b1964ff667f48657be1f4b1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "081926d34044d1c2f63ae20acec92880fdae07616b1964ff667f48657be1f4b1", kill_on_drop: false }` [INFO] [stdout] 081926d34044d1c2f63ae20acec92880fdae07616b1964ff667f48657be1f4b1