get-smart 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/MIT-LICENSE +20 -0
- data/README.md +193 -0
- data/Rakefile +8 -0
- data/files/gems/acts-as-taggable-on/advanced/custom_delimiters_unicode_normalization.md +32 -0
- data/files/gems/acts-as-taggable-on/advanced/optimize_tag_query_with_joins.md +23 -0
- data/files/gems/acts-as-taggable-on/advanced/polymorphic_tagging_across_models.md +36 -0
- data/files/gems/acts-as-taggable-on/beginner/add_tags_to_model.md +17 -0
- data/files/gems/acts-as-taggable-on/beginner/query_tags.md +14 -0
- data/files/gems/acts-as-taggable-on/beginner/setup_gem.md +15 -0
- data/files/gems/acts-as-taggable-on/expert/advanced_search_and_caching.md +37 -0
- data/files/gems/acts-as-taggable-on/expert/dynamic_tag_contexts.md +31 -0
- data/files/gems/acts-as-taggable-on/expert/hierarchical_tags_with_ancestry.md +26 -0
- data/files/gems/acts-as-taggable-on/middle/caching_tag_counts.md +26 -0
- data/files/gems/acts-as-taggable-on/middle/multiple_tag_contexts.md +23 -0
- data/files/gems/acts-as-taggable-on/middle/querying_tagged_models.md +20 -0
- data/files/gems/bcrypt/advanced/add_pepper_to_bcrypt.md +30 -0
- data/files/gems/bcrypt/advanced/async_password_rehash.md +37 -0
- data/files/gems/bcrypt/advanced/dynamic_bcrypt_cost.md +18 -0
- data/files/gems/bcrypt/beginner/bcrypt_authentication.md +21 -0
- data/files/gems/bcrypt/beginner/bcrypt_installation.md +14 -0
- data/files/gems/bcrypt/beginner/bcrypt_model_setup.md +17 -0
- data/files/gems/bcrypt/expert/bcrypt_async_hashing.md +37 -0
- data/files/gems/bcrypt/expert/bcrypt_legacy_migration.md +31 -0
- data/files/gems/bcrypt/expert/bcrypt_pepper_cost_configuration.md +37 -0
- data/files/gems/bcrypt/middle/bcrypt_custom_cost.md +12 -0
- data/files/gems/bcrypt/middle/bcrypt_generate_and_verify.md +22 -0
- data/files/gems/bcrypt/middle/bcrypt_rehash_on_login.md +26 -0
- data/files/gems/chartkick/advanced/after_render_hook.md +42 -0
- data/files/gems/chartkick/advanced/custom_tooltips_formatters.md +35 -0
- data/files/gems/chartkick/advanced/multi_axis_charts.md +29 -0
- data/files/gems/chartkick/advanced/streaming_via_action_cable.md +34 -0
- data/files/gems/chartkick/beginner/basic_line_chart.md +15 -0
- data/files/gems/chartkick/beginner/customize_chart_options.md +16 -0
- data/files/gems/chartkick/beginner/multiple_series_bar_chart.md +18 -0
- data/files/gems/chartkick/beginner/setup_chartkick.md +21 -0
- data/files/gems/chartkick/expert/combo_charts_multiple_axes.md +17 -0
- data/files/gems/chartkick/expert/custom_chartjs_library_options.md +28 -0
- data/files/gems/chartkick/expert/dynamic_realtime_updates_with_actioncable.md +40 -0
- data/files/gems/chartkick/expert/sql_cte_aggregation_for_large_datasets.md +22 -0
- data/files/gems/chartkick/middle/ajax_refresh.md +23 -0
- data/files/gems/chartkick/middle/custom_chart_options.md +16 -0
- data/files/gems/chartkick/middle/group_by_period.md +15 -0
- data/files/gems/chartkick/middle/multiple_series.md +18 -0
- data/files/gems/counter_culture/advanced/dynamic_conditional_counters.md +19 -0
- data/files/gems/counter_culture/advanced/weighted_counter_updates.md +20 -0
- data/files/gems/counter_culture/beginner/counter_culture_basic_usage.md +25 -0
- data/files/gems/counter_culture/beginner/counter_culture_setup.md +38 -0
- data/files/gems/counter_culture/expert/batch_async_counter_updates.md +26 -0
- data/files/gems/counter_culture/expert/multi_level_association_caching.md +40 -0
- data/files/gems/counter_culture/middle/multiple_counter_usage.md +39 -0
- data/files/gems/counter_culture/middle/scoped_comment_counter.md +31 -0
- data/files/gems/devise/advanced/custom_password_strength_validator.md.md +22 -0
- data/files/gems/devise/advanced/devise_jwt_integration.md.md +34 -0
- data/files/gems/devise/advanced/dynamic_omniauth_providers.md.md +15 -0
- data/files/gems/devise/advanced/multiple_user_scopes.md.md +30 -0
- data/files/gems/devise/beginner/configure_routes.md +12 -0
- data/files/gems/devise/beginner/customize_devise_views.md +19 -0
- data/files/gems/devise/beginner/generate_user_model.md +9 -0
- data/files/gems/devise/beginner/install_devise.md +14 -0
- data/files/gems/devise/expert/custom_warden_2fa.md +27 -0
- data/files/gems/devise/expert/dynamic_failure_app_handling.md +28 -0
- data/files/gems/devise/expert/jwt_stateless_api.md +37 -0
- data/files/gems/devise/expert/multi_tenant_authentication.md +28 -0
- data/files/gems/devise/middle/custom_redirect_path.md +15 -0
- data/files/gems/devise/middle/override_devise_controllers.md +22 -0
- data/files/gems/devise/middle/permit_extra_params.md +17 -0
- data/files/gems/devise/middle/rspec_devise_helpers.md +24 -0
- data/files/gems/factory_bot_rails/advanced/advanced_polymorphic_traits.md +24 -0
- data/files/gems/factory_bot_rails/advanced/custom_factorybot_strategy.md +28 -0
- data/files/gems/factory_bot_rails/advanced/transient_dynamic_associations.md +22 -0
- data/files/gems/factory_bot_rails/beginner/associations.md.md +21 -0
- data/files/gems/factory_bot_rails/beginner/basic_factory_setup.md.md +23 -0
- data/files/gems/factory_bot_rails/beginner/using_traits.md.md +28 -0
- data/files/gems/factory_bot_rails/expert/after_create_callbacks_external_service_setup.md +34 -0
- data/files/gems/factory_bot_rails/expert/custom_to_create_bulk_insert_strategy.md +30 -0
- data/files/gems/factory_bot_rails/expert/transient_traits_dynamic_associations.md +38 -0
- data/files/gems/factory_bot_rails/middle/association_strategies.md +19 -0
- data/files/gems/factory_bot_rails/middle/unique_sequences.md +17 -0
- data/files/gems/factory_bot_rails/middle/use_traits.md +26 -0
- data/files/gems/faker/advanced/custom_provider.md +40 -0
- data/files/gems/faker/advanced/multilingual_data.md +18 -0
- data/files/gems/faker/advanced/seed_reproducibility.md +25 -0
- data/files/gems/faker/beginner/faker_in_tests.md +24 -0
- data/files/gems/faker/beginner/installing_faker_gem.md +12 -0
- data/files/gems/faker/beginner/seeding_with_faker.md +17 -0
- data/files/gems/faker/expert/concurrent_load_testing.md.md +30 -0
- data/files/gems/faker/expert/custom_faker_provider.md.md +28 -0
- data/files/gems/faker/expert/dynamic_locale_fallback.md.md +23 -0
- data/files/gems/faker/middle/faker_locale_configuration.md +15 -0
- data/files/gems/faker/middle/faker_unique_generator.md +16 -0
- data/files/gems/faker/middle/faker_with_factorybot.md +18 -0
- data/files/gems/faraday/advanced/faraday_custom_hmac_middleware.md +36 -0
- data/files/gems/faraday/advanced/faraday_retry_exponential_backoff.md +20 -0
- data/files/gems/faraday/beginner/faraday_get_request.md +20 -0
- data/files/gems/faraday/beginner/faraday_install_config.md +25 -0
- data/files/gems/faraday/expert/custom_instrumentation_middleware.md +26 -0
- data/files/gems/faraday/expert/thread_safe_connection_pool.md +33 -0
- data/files/gems/faraday/middle/custom_middleware_integration.md +38 -0
- data/files/gems/faraday/middle/timeouts_and_retries.md +26 -0
- data/files/gems/flipper/advanced/consistent_percentage_rollout.md +30 -0
- data/files/gems/flipper/advanced/custom_actor_groups.md +20 -0
- data/files/gems/flipper/beginner/flipper_basic_toggle.md +31 -0
- data/files/gems/flipper/beginner/flipper_setup.md +22 -0
- data/files/gems/flipper/expert/custom_instrumentation_statsd.md +21 -0
- data/files/gems/flipper/expert/multi_region_adapter.md +47 -0
- data/files/gems/flipper/middle/flipper_custom_user_groups.md +20 -0
- data/files/gems/flipper/middle/flipper_percentage_rollout.md +16 -0
- data/files/gems/geocoder/advanced/geocoder_caching_and_fallback_strategies.md +34 -0
- data/files/gems/geocoder/advanced/polymorphic_geocoding_multiple_models.md +46 -0
- data/files/gems/geocoder/advanced/postgis_high_performance_queries.md +41 -0
- data/files/gems/geocoder/beginner/geocoder_install.md +13 -0
- data/files/gems/geocoder/beginner/geocoder_model_setup.md +15 -0
- data/files/gems/geocoder/beginner/geocoder_reverse_usage.md +20 -0
- data/files/gems/geocoder/expert/bulk_reverse_geocoding_sidekiq.md +26 -0
- data/files/gems/geocoder/expert/optimized_distance_sql.md +25 -0
- data/files/gems/geocoder/expert/postgis_advanced_queries.md +35 -0
- data/files/gems/geocoder/middle/customizing_geocoder_config.md +34 -0
- data/files/gems/geocoder/middle/distance_queries_near_scope.md +22 -0
- data/files/gems/geocoder/middle/model_geocoding_setup.md +38 -0
- data/files/gems/httparty/advanced/custom_httparty_parser.md +41 -0
- data/files/gems/httparty/advanced/httparty_with_retry.md +40 -0
- data/files/gems/httparty/beginner/basic_get_request.md +14 -0
- data/files/gems/httparty/beginner/query_params_usage.md +15 -0
- data/files/gems/httparty/expert/httparty_persistent_connections.md +25 -0
- data/files/gems/httparty/expert/httparty_typhoeus_adapter.md +49 -0
- data/files/gems/httparty/middle/httparty_dynamic_query_params.md +22 -0
- data/files/gems/httparty/middle/httparty_reusable_client.md +26 -0
- data/files/gems/image_processing/advanced/custom_watermark_processor.md +37 -0
- data/files/gems/image_processing/advanced/persistent_variant_cache.md +33 -0
- data/files/gems/image_processing/advanced/streaming_variants.md +18 -0
- data/files/gems/image_processing/beginner/convert_format_thumbnail.md +12 -0
- data/files/gems/image_processing/beginner/generate_resized_variant.md +9 -0
- data/files/gems/image_processing/beginner/install_image_processing.md +13 -0
- data/files/gems/image_processing/expert/advanced_caching_strategies.md +23 -0
- data/files/gems/image_processing/expert/custom_mini_magick_operations.md +26 -0
- data/files/gems/image_processing/expert/parallel_processing_pipeline.md +25 -0
- data/files/gems/image_processing/middle/background_processing.md +30 -0
- data/files/gems/image_processing/middle/chain_transformations.md +26 -0
- data/files/gems/image_processing/middle/variants_resizing_format.md +24 -0
- data/files/gems/mini_magick/advanced/composite_with_masks.md +14 -0
- data/files/gems/mini_magick/advanced/multi_page_document_processing.md +18 -0
- data/files/gems/mini_magick/advanced/stream_processing.md +12 -0
- data/files/gems/mini_magick/beginner/convert_and_crop.md +17 -0
- data/files/gems/mini_magick/beginner/install_and_setup.md +15 -0
- data/files/gems/mini_magick/beginner/resize_image.md +13 -0
- data/files/gems/mini_magick/expert/gif_optimization_pipeline.md +20 -0
- data/files/gems/mini_magick/expert/pdf_multipage_annotation.md +34 -0
- data/files/gems/mini_magick/expert/streaming_image_pipelining.md +25 -0
- data/files/gems/mini_magick/middle/conditional_resize.md +11 -0
- data/files/gems/mini_magick/middle/in_memory_processing.md +17 -0
- data/files/gems/mini_magick/middle/optimize_and_compress.md +15 -0
- data/files/gems/pundit/advanced/dynamic_policy_scopes.md +39 -0
- data/files/gems/pundit/advanced/graphql_field_authorization.md +36 -0
- data/files/gems/pundit/beginner/pundit_basic_policy_usage.md +47 -0
- data/files/gems/pundit/beginner/pundit_install_setup.md +24 -0
- data/files/gems/pundit/expert/pundit_dynamic_context_scopes.md +51 -0
- data/files/gems/pundit/expert/pundit_rspec_custom_matchers.md +51 -0
- data/files/gems/pundit/middle/policy_scope_in_controller.md +24 -0
- data/files/gems/pundit/middle/verify_authorization_callbacks.md +29 -0
- data/files/gems/ransack/advanced/custom_ransacker_computed_fields.md +25 -0
- data/files/gems/ransack/advanced/define_custom_predicates.md +39 -0
- data/files/gems/ransack/advanced/nested_association_query.md +24 -0
- data/files/gems/ransack/beginner/basic_search_form.md +25 -0
- data/files/gems/ransack/beginner/multi_field_search.md +21 -0
- data/files/gems/ransack/beginner/sorting_results.md +28 -0
- data/files/gems/ransack/expert/complex_arel_ransacker_full_name.md +25 -0
- data/files/gems/ransack/expert/dynamic_whitelisting_ransackable_scopes.md +35 -0
- data/files/gems/ransack/expert/postgres_full_text_search_predicate.md +24 -0
- data/files/gems/ransack/middle/ransack_association_search.md +25 -0
- data/files/gems/ransack/middle/ransack_group_or_conditions.md +54 -0
- data/files/gems/ransack/middle/ransack_sort_pagination.md +32 -0
- data/files/gems/redis/advanced/redis_cluster_integration.md +26 -0
- data/files/gems/redis/advanced/redis_pubsub_connection_pool.md +28 -0
- data/files/gems/redis/advanced/redis_redlock_distributed_locks.md +25 -0
- data/files/gems/redis/advanced/redis_streams_event_sourcing.md +28 -0
- data/files/gems/redis/beginner/connecting_to_redis.md +13 -0
- data/files/gems/redis/beginner/set_and_get_keys.md +12 -0
- data/files/gems/redis/beginner/setting_key_expiration.md +13 -0
- data/files/gems/redis/beginner/working_with_lists.md +13 -0
- data/files/gems/redis/expert/redis_hyperloglog_unique_counts.md +30 -0
- data/files/gems/redis/expert/redis_lua_atomic_operations.md +45 -0
- data/files/gems/redis/expert/redis_redlock_distributed_lock.md +39 -0
- data/files/gems/redis/expert/redis_streams_event_sourcing.md +38 -0
- data/files/gems/redis/middle/distributed_lock_redlock.md +19 -0
- data/files/gems/redis/middle/fragment_caching_redis.md +15 -0
- data/files/gems/redis/middle/rate_limiter_redis.md +32 -0
- data/files/gems/redis/middle/session_store_redis.md +15 -0
- data/files/gems/rspec/advanced/around_hooks_for_transactions.md +23 -0
- data/files/gems/rspec/advanced/composite_matcher_operators.md +14 -0
- data/files/gems/rspec/advanced/custom_matcher_chainable.md +21 -0
- data/files/gems/rspec/advanced/filtering_by_custom_tags.md +19 -0
- data/files/gems/rspec/advanced/let_lazy_loaded_dependencies.md +18 -0
- data/files/gems/rspec/advanced/monkey_patch_rspec_dsl.md +25 -0
- data/files/gems/rspec/advanced/profiling_slow_specs.md +15 -0
- data/files/gems/rspec/advanced/rspec_configuration_overrides.md +24 -0
- data/files/gems/rspec/advanced/shared_contexts_with_metadata.md +18 -0
- data/files/gems/rspec/advanced/verifying_partial_doubles.md +16 -0
- data/files/gems/rspec/beginner/rspec_after_hooks.md +16 -0
- data/files/gems/rspec/beginner/rspec_before_hooks.md +15 -0
- data/files/gems/rspec/beginner/rspec_common_matchers.md +9 -0
- data/files/gems/rspec/beginner/rspec_describe_blocks.md +9 -0
- data/files/gems/rspec/beginner/rspec_focus_tag.md +21 -0
- data/files/gems/rspec/beginner/rspec_it_blocks.md +11 -0
- data/files/gems/rspec/beginner/rspec_let_usage.md +13 -0
- data/files/gems/rspec/beginner/rspec_setup.md +16 -0
- data/files/gems/rspec/beginner/rspec_shared_examples.md +16 -0
- data/files/gems/rspec/beginner/rspec_subject_definition.md +13 -0
- data/files/gems/rspec/custom_matchers/advanced/chainable_custom_matchers.md +46 -0
- data/files/gems/rspec/custom_matchers/advanced/diffable_custom_matchers.md +27 -0
- data/files/gems/rspec/custom_matchers/advanced/parameterized_block_matchers.md +30 -0
- data/files/gems/rspec/custom_matchers/beginner/basic_custom_matcher.md +17 -0
- data/files/gems/rspec/custom_matchers/beginner/custom_failure_message.md +12 -0
- data/files/gems/rspec/custom_matchers/beginner/parameterized_custom_matcher.md +18 -0
- data/files/gems/rspec/custom_matchers/expert/diffable_block_expectations.md.md +26 -0
- data/files/gems/rspec/custom_matchers/expert/dynamic_chaining_matchers.md.md +34 -0
- data/files/gems/rspec/custom_matchers/expert/metaprogramming_driven_matchers.md.md +29 -0
- data/files/gems/rspec/custom_matchers/middle/chained_custom_matcher.md +28 -0
- data/files/gems/rspec/custom_matchers/middle/custom_failure_messages.md +27 -0
- data/files/gems/rspec/custom_matchers/middle/parameterized_range_matcher.md +30 -0
- data/files/gems/rspec/expert/advanced_const_mocking.md +18 -0
- data/files/gems/rspec/expert/custom_composable_matchers.md +23 -0
- data/files/gems/rspec/expert/custom_formatters.md +33 -0
- data/files/gems/rspec/expert/hook_order_customization.md +19 -0
- data/files/gems/rspec/expert/metadata_dynamic_test_generation.md +23 -0
- data/files/gems/rspec/expert/parallel_testing_db_sharding.md +18 -0
- data/files/gems/rspec/expert/parametrized_shared_examples.md +18 -0
- data/files/gems/rspec/expert/performance_profiling.md +22 -0
- data/files/gems/rspec/expert/vcr_webmock_advanced.md +18 -0
- data/files/gems/rspec/hooks_and_lifecycle/advanced/metadata_conditional_hooks.md +32 -0
- data/files/gems/rspec/hooks_and_lifecycle/advanced/orchestrating_external_service.md +36 -0
- data/files/gems/rspec/hooks_and_lifecycle/advanced/transactional_time_travel.md +22 -0
- data/files/gems/rspec/hooks_and_lifecycle/beginner/rspec_after_hook.md +22 -0
- data/files/gems/rspec/hooks_and_lifecycle/beginner/rspec_around_hook.md +18 -0
- data/files/gems/rspec/hooks_and_lifecycle/beginner/rspec_before_hook.md +19 -0
- data/files/gems/rspec/hooks_and_lifecycle/expert/around_each_instrumentation.md +26 -0
- data/files/gems/rspec/hooks_and_lifecycle/expert/metadata_based_hooks.md +30 -0
- data/files/gems/rspec/hooks_and_lifecycle/expert/prepend_hooks_module.md +29 -0
- data/files/gems/rspec/hooks_and_lifecycle/middle/around_hooks_custom_setup.md +23 -0
- data/files/gems/rspec/hooks_and_lifecycle/middle/metadata_filtered_hooks.md +32 -0
- data/files/gems/rspec/hooks_and_lifecycle/middle/shared_context_lifecycle.md +40 -0
- data/files/gems/rspec/middle/aggregate_failures.md +15 -0
- data/files/gems/rspec/middle/around_hooks.md +18 -0
- data/files/gems/rspec/middle/custom_matchers.md +27 -0
- data/files/gems/rspec/middle/instance_double_usage.md +23 -0
- data/files/gems/rspec/middle/let_vs_let_bang.md +14 -0
- data/files/gems/rspec/middle/leveraging_contexts.md +23 -0
- data/files/gems/rspec/middle/named_subject.md +22 -0
- data/files/gems/rspec/middle/shared_examples_usage.md +21 -0
- data/files/gems/rspec/middle/tagged_examples_filtering.md +22 -0
- data/files/gems/rspec/middle/verifying_partial_doubles.md +24 -0
- data/files/gems/rspec/mocks_and_stubs/advanced/instance_double_interface.md +11 -0
- data/files/gems/rspec/mocks_and_stubs/advanced/nested_doubles_for_complex_dependencies.md +14 -0
- data/files/gems/rspec/mocks_and_stubs/advanced/partial_spy_mocks.md +22 -0
- data/files/gems/rspec/mocks_and_stubs/advanced/sequential_return_values.md +13 -0
- data/files/gems/rspec/mocks_and_stubs/advanced/stub_private_methods.md +23 -0
- data/files/gems/rspec/mocks_and_stubs/beginner/argument_matching_stub.md +19 -0
- data/files/gems/rspec/mocks_and_stubs/beginner/chain_method_stub.md +15 -0
- data/files/gems/rspec/mocks_and_stubs/beginner/instance_double_usage.md +19 -0
- data/files/gems/rspec/mocks_and_stubs/beginner/mock_expectation_receive.md +18 -0
- data/files/gems/rspec/mocks_and_stubs/beginner/stub_return_value.md +19 -0
- data/files/gems/rspec/mocks_and_stubs/expert/class_spy_on_new_with_and_call_original.md +29 -0
- data/files/gems/rspec/mocks_and_stubs/expert/complex_block_yields_with_and_yield.md +30 -0
- data/files/gems/rspec/mocks_and_stubs/expert/stub_private_methods_with_prepend.md +33 -0
- data/files/gems/rspec/mocks_and_stubs/expert/verifying_module_methods_with_class_double.md +30 -0
- data/files/gems/rspec/mocks_and_stubs/expert/wrap_original_with_and_wrap_original.md +29 -0
- data/files/gems/rspec/mocks_and_stubs/middle/instance_double_strict_interface.md +17 -0
- data/files/gems/rspec/mocks_and_stubs/middle/sequential_return_values.md +16 -0
- data/files/gems/rspec/mocks_and_stubs/middle/stubbing_chained_methods.md +18 -0
- data/files/gems/rspec/mocks_and_stubs/middle/using_spies_for_assertions.md +16 -0
- data/files/gems/rspec/mocks_and_stubs/middle/yielding_block_methods.md +17 -0
- data/files/gems/rspec/shared_examples/advanced/metadata_filtered_shared_examples.md +31 -0
- data/files/gems/rspec/shared_examples/advanced/parameterized_shared_examples_dsl.md +24 -0
- data/files/gems/rspec/shared_examples/beginner/shared_examples_dry_specs.md +23 -0
- data/files/gems/rspec/shared_examples/beginner/shared_examples_with_arguments.md +19 -0
- data/files/gems/rspec/shared_examples/expert/dynamic_shared_examples_with_metadata.md +43 -0
- data/files/gems/rspec/shared_examples/expert/parameterized_shared_examples_with_dynamic_classes.md +65 -0
- data/files/gems/rspec/shared_examples/middle/shared_examples_basic_usage.md +24 -0
- data/files/gems/rspec/shared_examples/middle/shared_examples_parameterized_usage.md +21 -0
- data/files/gems/ruby-openai/advanced/batch_embeddings_async.md +30 -0
- data/files/gems/ruby-openai/advanced/function_calling_advanced.md +44 -0
- data/files/gems/ruby-openai/advanced/streaming_chat_responses.md +22 -0
- data/files/gems/ruby-openai/beginner/handle_errors_gracefully.md +14 -0
- data/files/gems/ruby-openai/beginner/setup_ruby_openai.md +15 -0
- data/files/gems/ruby-openai/beginner/simple_chat_request.md +17 -0
- data/files/gems/ruby-openai/expert/advanced_streaming_with_backpressure.md +30 -0
- data/files/gems/ruby-openai/expert/dynamic_function_call_management.md +44 -0
- data/files/gems/ruby-openai/expert/high_throughput_rate_limited_requests.md +42 -0
- data/files/gems/ruby-openai/middle/handle_rate_limit_retries.md +32 -0
- data/files/gems/ruby-openai/middle/parallel_requests.md +27 -0
- data/files/gems/ruby-openai/middle/streaming_responses.md +19 -0
- data/files/gems/sidekiq/advanced/batch_orchestration.md +29 -0
- data/files/gems/sidekiq/advanced/custom_retry_backoff.md +24 -0
- data/files/gems/sidekiq/advanced/custom_server_middleware.md +25 -0
- data/files/gems/sidekiq/advanced/rate_limiting_concurrency.md +25 -0
- data/files/gems/sidekiq/advanced/unique_job_locking.md +26 -0
- data/files/gems/sidekiq/beginner/create_basic_worker.md +15 -0
- data/files/gems/sidekiq/beginner/enqueue_job_from_controller.md +14 -0
- data/files/gems/sidekiq/beginner/monitor_sidekiq_web_ui.md +16 -0
- data/files/gems/sidekiq/beginner/pass_arguments_to_worker.md +22 -0
- data/files/gems/sidekiq/beginner/setup_sidekiq_in_rails.md +22 -0
- data/files/gems/sidekiq/expert/sidekiq_batch_chaining.md +26 -0
- data/files/gems/sidekiq/expert/sidekiq_dynamic_autoscaling.md +22 -0
- data/files/gems/sidekiq/expert/sidekiq_opentelemetry_middleware.md +22 -0
- data/files/gems/sidekiq/expert/sidekiq_retry_jitter.md +31 -0
- data/files/gems/sidekiq/expert/sidekiq_tenant_isolation_namespace.md +19 -0
- data/files/gems/sidekiq/middle/sidekiq_batch_grouping.md +26 -0
- data/files/gems/sidekiq/middle/sidekiq_custom_middleware.md +21 -0
- data/files/gems/sidekiq/middle/sidekiq_custom_retry.md +23 -0
- data/files/gems/sidekiq/middle/sidekiq_schedule_jobs.md +11 -0
- data/files/gems/sidekiq/middle/sidekiq_testing_in_rspec.md +18 -0
- data/files/gems/simple_form/advanced/custom_rich_text_input.md +17 -0
- data/files/gems/simple_form/advanced/custom_wrappers.md +22 -0
- data/files/gems/simple_form/advanced/nested_associations_cocoon.md +26 -0
- data/files/gems/simple_form/beginner/simple_form_basic_form.md +11 -0
- data/files/gems/simple_form/beginner/simple_form_customizing_inputs.md +11 -0
- data/files/gems/simple_form/beginner/simple_form_installation.md +12 -0
- data/files/gems/simple_form/expert/custom_formbuilder_macros.md +37 -0
- data/files/gems/simple_form/expert/custom_js_widget_wrapper.md +41 -0
- data/files/gems/simple_form/expert/dynamic_nested_associations.md +50 -0
- data/files/gems/simple_form/middle/collection_inputs.md +21 -0
- data/files/gems/simple_form/middle/custom_input_wrapper.md +18 -0
- data/files/gems/simple_form/middle/html_attribute_customization.md +18 -0
- data/files/gems/solid_queue/advanced/advanced_custom_middleware_integration.md.md +35 -0
- data/files/gems/solid_queue/advanced/advanced_dynamic_worker_routing.md.md +27 -0
- data/files/gems/solid_queue/advanced/advanced_exponential_backoff.md.md +26 -0
- data/files/gems/solid_queue/beginner/define_and_enqueue_job.md +18 -0
- data/files/gems/solid_queue/beginner/install_and_configure.md +22 -0
- data/files/gems/solid_queue/beginner/schedule_job_future.md +17 -0
- data/files/gems/solid_queue/expert/atomic_job_deduplication.md +29 -0
- data/files/gems/solid_queue/expert/dynamic_queue_sharding.md +28 -0
- data/files/gems/solid_queue/expert/kafka_broker_implementation.md +33 -0
- data/files/gems/solid_queue/middle/batch_enqueueing.md +15 -0
- data/files/gems/solid_queue/middle/custom_queue_configuration.md +16 -0
- data/files/gems/solid_queue/middle/error_handling_and_retries.md +23 -0
- data/files/gems/vcr/advanced/vcr_custom_hooks.md +20 -0
- data/files/gems/vcr/advanced/vcr_custom_request_matching.md +25 -0
- data/files/gems/vcr/beginner/basic_cassette_usage.md +19 -0
- data/files/gems/vcr/beginner/install_and_configure_vcr.md +15 -0
- data/files/gems/vcr/expert/vcr_custom_persister_and_serializer.md +50 -0
- data/files/gems/vcr/expert/vcr_deep_request_matching_and_hooks.md +42 -0
- data/files/gems/vcr/middle/custom_request_matchers.md +21 -0
- data/files/gems/vcr/middle/dynamic_cassette_naming.md +27 -0
- data/files/gems/view_component/advanced/nested_slots.md +23 -0
- data/files/gems/view_component/advanced/precompile_and_cache.md +14 -0
- data/files/gems/view_component/advanced/system_arguments.md +26 -0
- data/files/gems/view_component/advanced/testing_with_rspec.md +18 -0
- data/files/gems/view_component/advanced/turbo_stream_integration.md +26 -0
- data/files/gems/view_component/beginner/view_component_installation.md +17 -0
- data/files/gems/view_component/beginner/view_component_passing_props.md +22 -0
- data/files/gems/view_component/beginner/view_component_rendering.md +10 -0
- data/files/gems/view_component/beginner/view_component_slots.md +24 -0
- data/files/gems/view_component/beginner/view_component_testing.md +15 -0
- data/files/gems/view_component/expert/advanced_fragment_caching.md +30 -0
- data/files/gems/view_component/expert/deep_testing_with_matchers.md +26 -0
- data/files/gems/view_component/expert/dynamic_slots_composition.md +28 -0
- data/files/gems/view_component/expert/hotwire_stimulus_integration.md +27 -0
- data/files/gems/view_component/expert/instrumentation_and_profiling.md +27 -0
- data/files/gems/view_component/middle/component_caching.md +16 -0
- data/files/gems/view_component/middle/previewing_components.md +18 -0
- data/files/gems/view_component/middle/styling_with_css_modules.md +34 -0
- data/files/gems/view_component/middle/testing_components_with_rspec.md +16 -0
- data/files/gems/view_component/middle/using_slots.md +23 -0
- data/files/gems/webmock/advanced/custom_request_matchers_and_callbacks.md +54 -0
- data/files/gems/webmock/advanced/stub_dynamic_request_patterns.md +31 -0
- data/files/gems/webmock/beginner/stub_get_requests.md +22 -0
- data/files/gems/webmock/beginner/verify_http_requests.md +18 -0
- data/files/gems/webmock/expert/chunked_streaming_response.md +32 -0
- data/files/gems/webmock/expert/dynamic_request_block_stub.md +45 -0
- data/files/gems/webmock/middle/match_requests_by_headers.md +25 -0
- data/files/gems/webmock/middle/stub_dynamic_urls_regex.md +18 -0
- data/files/javascript/hotwire/advanced/advanced_turbo_stream_targets.md +10 -0
- data/files/javascript/hotwire/advanced/custom_turbo_stream_action.md +15 -0
- data/files/javascript/hotwire/advanced/dynamic_turbo_frame_source.md +9 -0
- data/files/javascript/hotwire/advanced/dynamic_turbo_stream_templates.md +12 -0
- data/files/javascript/hotwire/advanced/freeze_frame_for_modals.md +15 -0
- data/files/javascript/hotwire/advanced/global_turbo_progress_bar.md +11 -0
- data/files/javascript/hotwire/advanced/incremental_updates_with_turbo_streams.md +16 -0
- data/files/javascript/hotwire/advanced/intercepting_turbo_requests.md +16 -0
- data/files/javascript/hotwire/advanced/override_form_submission_turbo.md +14 -0
- data/files/javascript/hotwire/advanced/stimulus_and_turbo_combination.md +19 -0
- data/files/javascript/hotwire/advanced/stimulus_lifecycle_management.md +13 -0
- data/files/javascript/hotwire/advanced/stimulus_mutation_observer.md +23 -0
- data/files/javascript/hotwire/advanced/streaming_large_payloads.md +16 -0
- data/files/javascript/hotwire/advanced/turbo_error_handling.md +14 -0
- data/files/javascript/hotwire/advanced/turbo_frame_preload_cache.md +23 -0
- data/files/javascript/hotwire/advanced/turbo_native_integration.md +14 -0
- data/files/javascript/hotwire/beginner/basic_stimulus_controller.md +19 -0
- data/files/javascript/hotwire/beginner/basic_turbo_frame.md +10 -0
- data/files/javascript/hotwire/beginner/disable_turbo_drive_on_link.md +8 -0
- data/files/javascript/hotwire/beginner/importmap_pin_turbo.md +13 -0
- data/files/javascript/hotwire/beginner/install_hotwire.md +12 -0
- data/files/javascript/hotwire/beginner/install_stimulus.md +8 -0
- data/files/javascript/hotwire/beginner/render_turbo_stream_response.md +17 -0
- data/files/javascript/hotwire/beginner/stimulus_actions.md +19 -0
- data/files/javascript/hotwire/beginner/stimulus_targets.md +21 -0
- data/files/javascript/hotwire/beginner/stimulus_values.md +26 -0
- data/files/javascript/hotwire/beginner/target_turbo_frame_navigation.md +8 -0
- data/files/javascript/hotwire/beginner/turbo_form_remote_submission.md +13 -0
- data/files/javascript/hotwire/beginner/turbo_programmatic_navigation.md +12 -0
- data/files/javascript/hotwire/beginner/turbo_stream_append.md +10 -0
- data/files/javascript/hotwire/beginner/turbo_stream_remove.md +8 -0
- data/files/javascript/hotwire/expert/stimulus_reflex_hotwire.md +27 -0
- data/files/javascript/hotwire/expert/stimulus_turbo_event_bridge.md +24 -0
- data/files/javascript/hotwire/expert/turbo_auth_redirect_handling.md +13 -0
- data/files/javascript/hotwire/expert/turbo_cable_namespace.md +19 -0
- data/files/javascript/hotwire/expert/turbo_cache_control.md +15 -0
- data/files/javascript/hotwire/expert/turbo_custom_validation.md +25 -0
- data/files/javascript/hotwire/expert/turbo_debugging_profiling.md +17 -0
- data/files/javascript/hotwire/expert/turbo_direct_upload_progress.md +38 -0
- data/files/javascript/hotwire/expert/turbo_fragment_caching.md +11 -0
- data/files/javascript/hotwire/expert/turbo_frame_lazy_load.md +30 -0
- data/files/javascript/hotwire/expert/turbo_low_level_api.md +16 -0
- data/files/javascript/hotwire/expert/turbo_native_mobile.md +24 -0
- data/files/javascript/hotwire/expert/turbo_optimistic_ui.md +29 -0
- data/files/javascript/hotwire/expert/turbo_stream_batch_updates.md +20 -0
- data/files/javascript/hotwire/expert/turbo_stream_websocket_integration.md +17 -0
- data/files/javascript/stimulus/advanced/conditional_controller_activation.md +20 -0
- data/files/javascript/stimulus/advanced/controller_mixins.md +19 -0
- data/files/javascript/stimulus/advanced/dynamic_controller_composition.md +16 -0
- data/files/javascript/stimulus/advanced/dynamic_outlets_binding.md +21 -0
- data/files/javascript/stimulus/advanced/event_delegation_custom_actions.md +23 -0
- data/files/javascript/stimulus/advanced/imperative_controller_api.md +19 -0
- data/files/javascript/stimulus/advanced/lazy_loading_controllers.md +29 -0
- data/files/javascript/stimulus/advanced/lifecycle_frame_callbacks.md +14 -0
- data/files/javascript/stimulus/advanced/mutation_observer_adapter.md +24 -0
- data/files/javascript/stimulus/advanced/nested_controllers_target_delegation.md +28 -0
- data/files/javascript/stimulus/advanced/scss_class_map.md +24 -0
- data/files/javascript/stimulus/advanced/stimulus_testing_helpers.md +27 -0
- data/files/javascript/stimulus/advanced/turbo_streams_integration.md +22 -0
- data/files/javascript/stimulus/advanced/typescript_decorator_integration.md +20 -0
- data/files/javascript/stimulus/advanced/value_change_observers.md +14 -0
- data/files/javascript/stimulus/beginner/actions_events.md +24 -0
- data/files/javascript/stimulus/beginner/connect_disconnect.md +19 -0
- data/files/javascript/stimulus/beginner/connect_html_controller.md +12 -0
- data/files/javascript/stimulus/beginner/create_controller.md +10 -0
- data/files/javascript/stimulus/beginner/data_attributes_usage.md +23 -0
- data/files/javascript/stimulus/beginner/debounce_events.md +26 -0
- data/files/javascript/stimulus/beginner/debug_with_console.md +17 -0
- data/files/javascript/stimulus/beginner/event_modifiers.md +21 -0
- data/files/javascript/stimulus/beginner/initialize_method.md +25 -0
- data/files/javascript/stimulus/beginner/install_stimulus.md +19 -0
- data/files/javascript/stimulus/beginner/manipulating_classes.md +29 -0
- data/files/javascript/stimulus/beginner/multiple_controllers.md +14 -0
- data/files/javascript/stimulus/beginner/using_targets.md +20 -0
- data/files/javascript/stimulus/beginner/using_values.md +30 -0
- data/files/javascript/stimulus/expert/composable_controllers.md +30 -0
- data/files/javascript/stimulus/expert/custom_target_decorators.md +29 -0
- data/files/javascript/stimulus/expert/dynamic_import.md +17 -0
- data/files/javascript/stimulus/expert/graphql_subscriptions.md +41 -0
- data/files/javascript/stimulus/expert/high_freq_events.md +29 -0
- data/files/javascript/stimulus/expert/lifecycle_hooks.md +27 -0
- data/files/javascript/stimulus/expert/modal_lazy_connect.md +19 -0
- data/files/javascript/stimulus/expert/nested_controller_comm.md +29 -0
- data/files/javascript/stimulus/expert/proxy_action_middleware.md +42 -0
- data/files/javascript/stimulus/expert/server_sent_events.md +23 -0
- data/files/javascript/stimulus/expert/state_machine.md +32 -0
- data/files/javascript/stimulus/expert/threejs_integration.md +29 -0
- data/files/javascript/stimulus/expert/value_types_map.md +25 -0
- data/files/javascript/stimulus/expert/weakmap_memory_opt.md +25 -0
- data/files/javascript/stimulus/expert/webworker_integration.md +26 -0
- data/files/javascript/stimulus/middle/actioncable_integration.md +25 -0
- data/files/javascript/stimulus/middle/async_fetch_requests.md +22 -0
- data/files/javascript/stimulus/middle/cleanup_event_listeners.md +27 -0
- data/files/javascript/stimulus/middle/css_class_management.md +18 -0
- data/files/javascript/stimulus/middle/custom_actions_with_modifiers.md +19 -0
- data/files/javascript/stimulus/middle/debugging_with_inspector.md +16 -0
- data/files/javascript/stimulus/middle/dynamic_controller_loading.md +16 -0
- data/files/javascript/stimulus/middle/dynamic_values.md +24 -0
- data/files/javascript/stimulus/middle/event_throttling.md +33 -0
- data/files/javascript/stimulus/middle/lifecycle_callbacks.md +27 -0
- data/files/javascript/stimulus/middle/nested_targets.md +22 -0
- data/files/javascript/stimulus/middle/testing_controllers_with_jest.md +20 -0
- data/files/javascript/stimulus/middle/theming_with_data_controllers.md +17 -0
- data/files/javascript/stimulus/middle/turbo_frames_integration.md +27 -0
- data/files/javascript/stimulus/middle/value_change_callbacks.md +23 -0
- data/files/javascript/turbo/advanced/advanced_error_handling_streams.md +24 -0
- data/files/javascript/turbo/advanced/custom_form_submission_frame.md +19 -0
- data/files/javascript/turbo/advanced/custom_turbo_stream_actions.md +17 -0
- data/files/javascript/turbo/advanced/dynamic_module_loading_in_streams.md +18 -0
- data/files/javascript/turbo/advanced/intercept_modify_requests.md +10 -0
- data/files/javascript/turbo/advanced/lazy_load_turbo_frame.md +22 -0
- data/files/javascript/turbo/advanced/performance_debounce_turbo_calls.md +19 -0
- data/files/javascript/turbo/advanced/prefetching_links_turbo.md +11 -0
- data/files/javascript/turbo/advanced/preload_turbo_frames_on_hover.md +14 -0
- data/files/javascript/turbo/advanced/react_turbo_integration.md +18 -0
- data/files/javascript/turbo/advanced/secure_turbo_endpoints.md +22 -0
- data/files/javascript/turbo/advanced/turbo_caching_invalidation.md +11 -0
- data/files/javascript/turbo/advanced/turbo_stimulus_integration.md +23 -0
- data/files/javascript/turbo/advanced/turbo_stream_multiplexing.md +16 -0
- data/files/javascript/turbo/advanced/websocket_turbo_streams.md +23 -0
- data/files/javascript/turbo/beginner/basic_turbo_frame.md +10 -0
- data/files/javascript/turbo/beginner/customize_turbo_visit.md +7 -0
- data/files/javascript/turbo/beginner/disable_turbo_on_link.md +6 -0
- data/files/javascript/turbo/beginner/enable_turbo_on_form.md +11 -0
- data/files/javascript/turbo/beginner/file_upload_with_turbo.md +9 -0
- data/files/javascript/turbo/beginner/install_turbo_js.md +13 -0
- data/files/javascript/turbo/beginner/manual_turbo_load.md +10 -0
- data/files/javascript/turbo/beginner/progress_indicator.md +13 -0
- data/files/javascript/turbo/beginner/simple_turbo_stream.md +12 -0
- data/files/javascript/turbo/beginner/turbo_before_fetch_request.md +8 -0
- data/files/javascript/turbo/beginner/turbo_cache_navigation.md +7 -0
- data/files/javascript/turbo/beginner/turbo_debug_mode.md +7 -0
- data/files/javascript/turbo/beginner/turbo_error_handling.md +11 -0
- data/files/javascript/turbo/beginner/turbo_event_listeners.md +10 -0
- data/files/javascript/turbo/beginner/turbo_restore_scroll.md +7 -0
- data/files/javascript/turbo/expert/turbo_cache_optimization.md +19 -0
- data/files/javascript/turbo/expert/turbo_frame_lazy_loading.md +21 -0
- data/files/javascript/turbo/expert/turbo_frame_nested_navigation.md +22 -0
- data/files/javascript/turbo/expert/turbo_management_multiple_frames.md +11 -0
- data/files/javascript/turbo/expert/turbo_native_mobile_integration.md +19 -0
- data/files/javascript/turbo/expert/turbo_prefetch_and_prerender.md +12 -0
- data/files/javascript/turbo/expert/turbo_rendering_performance.md +17 -0
- data/files/javascript/turbo/expert/turbo_security_csp.md +19 -0
- data/files/javascript/turbo/expert/turbo_stream_broadcasting.md +28 -0
- data/files/javascript/turbo/expert/turbo_stream_chunked_uploads.md +29 -0
- data/files/javascript/turbo/expert/turbo_stream_client_hooks.md +12 -0
- data/files/javascript/turbo/expert/turbo_stream_complex_selectors.md +10 -0
- data/files/javascript/turbo/expert/turbo_stream_continuous_updates.md +25 -0
- data/files/javascript/turbo/expert/turbo_stream_streaming_response.md +19 -0
- data/files/javascript/turbo/middle/turbo_abort_navigation.md +15 -0
- data/files/javascript/turbo/middle/turbo_broadcast_streams.md +15 -0
- data/files/javascript/turbo/middle/turbo_connect_stream_source.md +13 -0
- data/files/javascript/turbo/middle/turbo_control_navigation.md +17 -0
- data/files/javascript/turbo/middle/turbo_custom_progress_bar.md +13 -0
- data/files/javascript/turbo/middle/turbo_custom_stream_action.md +18 -0
- data/files/javascript/turbo/middle/turbo_debug_logging.md +9 -0
- data/files/javascript/turbo/middle/turbo_form_intercept.md +13 -0
- data/files/javascript/turbo/middle/turbo_frame_cache.md +22 -0
- data/files/javascript/turbo/middle/turbo_frame_manipulation_js.md +13 -0
- data/files/javascript/turbo/middle/turbo_inject_streams_js.md +11 -0
- data/files/javascript/turbo/middle/turbo_lazy_frame_loading.md +20 -0
- data/files/javascript/turbo/middle/turbo_link_prefetch.md +7 -0
- data/files/javascript/turbo/middle/turbo_navigation_lifecycle.md +13 -0
- data/files/javascript/turbo/middle/turbo_stimulus_integration.md +22 -0
- data/files/nosql/redis/advanced/redis_lua_scripting.md +22 -0
- data/files/nosql/redis/advanced/redis_pipelining.md +25 -0
- data/files/nosql/redis/advanced/redis_streams.md +28 -0
- data/files/nosql/redis/beginner/redis_basic_key_value.md +14 -0
- data/files/nosql/redis/beginner/redis_connection_setup.md +16 -0
- data/files/nosql/redis/beginner/redis_list_usage.md +14 -0
- data/files/nosql/redis/expert/redis_cluster_pipeline_optimization.md +26 -0
- data/files/nosql/redis/expert/redis_lua_atomic_operations.md +25 -0
- data/files/nosql/redis/expert/redis_streams_event_sourcing.md +27 -0
- data/files/nosql/redis/middle/redis_api_rate_limiter.md +33 -0
- data/files/nosql/redis/middle/redis_cachestore_namespace.md +12 -0
- data/files/nosql/redis/middle/redis_distributed_lock_redlock.md +15 -0
- data/files/rails/action_cable/advanced/chunked_streaming.md +29 -0
- data/files/rails/action_cable/advanced/graphql_subscriptions.md +37 -0
- data/files/rails/action_cable/advanced/jwt_channel_authentication.md +26 -0
- data/files/rails/action_cable/advanced/kafka_pubsub_adapter.md +41 -0
- data/files/rails/action_cable/advanced/rate_limiting_backpressure.md +37 -0
- data/files/rails/action_cable/beginner/broadcast_messages.md +19 -0
- data/files/rails/action_cable/beginner/client_subscribe_js.md +25 -0
- data/files/rails/action_cable/beginner/generate_chat_channel.md +24 -0
- data/files/rails/action_cable/beginner/setup_action_cable.md +15 -0
- data/files/rails/action_cable/beginner/stream_named_room.md +27 -0
- data/files/rails/action_cable/expert/fine_grained_authorization.md +33 -0
- data/files/rails/action_cable/expert/jwt_authentication.md +31 -0
- data/files/rails/action_cable/expert/load_testing_action_cable.md +29 -0
- data/files/rails/action_cable/expert/metrics_instrumentation.md +40 -0
- data/files/rails/action_cable/expert/redis_scaling_namespace_isolation.md +28 -0
- data/files/rails/action_cable/middle/cleanup_streams_on_unsubscribe.md +19 -0
- data/files/rails/action_cable/middle/client_reconnection_resubscribe.md +27 -0
- data/files/rails/action_cable/middle/dynamic_stream_identifiers.md +20 -0
- data/files/rails/action_cable/middle/manual_broadcast_controller.md +31 -0
- data/files/rails/action_cable/middle/model_callback_streaming.md +23 -0
- data/files/rails/active_record/advanced/asynchronous_querying_load_async.md +13 -0
- data/files/rails/active_record/advanced/bulk_upsert_with_upsert_all.md +11 -0
- data/files/rails/active_record/advanced/common_table_expressions_cte.md +9 -0
- data/files/rails/active_record/advanced/custom_types_and_attributes_api.md +19 -0
- data/files/rails/active_record/advanced/dynamic_parameterized_scopes.md +15 -0
- data/files/rails/active_record/advanced/jsonb_querying_and_indexing.md +14 -0
- data/files/rails/active_record/advanced/leveraging_window_functions.md +10 -0
- data/files/rails/active_record/advanced/multi_database_sharding.md +23 -0
- data/files/rails/active_record/advanced/optimistic_locking_for_concurrency.md +13 -0
- data/files/rails/active_record/advanced/using_arel_for_complex_joins.md +17 -0
- data/files/rails/active_record/beginner/associations_basics.md +17 -0
- data/files/rails/active_record/beginner/console_basics.md +9 -0
- data/files/rails/active_record/beginner/create_records.md +12 -0
- data/files/rails/active_record/beginner/delete_records.md +12 -0
- data/files/rails/active_record/beginner/limit_and_offset.md +12 -0
- data/files/rails/active_record/beginner/querying_with_where.md +11 -0
- data/files/rails/active_record/beginner/reading_records.md +14 -0
- data/files/rails/active_record/beginner/sorting_results.md +11 -0
- data/files/rails/active_record/beginner/update_records.md +13 -0
- data/files/rails/active_record/beginner/validations_intro.md +14 -0
- data/files/rails/active_record/expert/advanced_eager_loading.md +13 -0
- data/files/rails/active_record/expert/arel_complex_predicates.md +20 -0
- data/files/rails/active_record/expert/association_cache_bidi.md +19 -0
- data/files/rails/active_record/expert/bulk_upserts_insert_all.md +10 -0
- data/files/rails/active_record/expert/dynamic_scopes_metaprogramming.md +15 -0
- data/files/rails/active_record/expert/multi_tenancy_schema_adapter.md +22 -0
- data/files/rails/active_record/expert/partial_indexes_migrations.md +12 -0
- data/files/rails/active_record/expert/query_performance_notifications.md +11 -0
- data/files/rails/active_record/expert/sql_window_functions.md +12 -0
- data/files/rails/active_record/expert/virtual_attributes_custom_types.md +20 -0
- data/files/rails/active_record/middle/arel_complex_queries.md +10 -0
- data/files/rails/active_record/middle/batch_processing.md +9 -0
- data/files/rails/active_record/middle/dynamic_scopes.md +13 -0
- data/files/rails/active_record/middle/eager_loading_includes.md +12 -0
- data/files/rails/active_record/middle/merge_relations.md +12 -0
- data/files/rails/active_record/middle/optimistic_locking.md +13 -0
- data/files/rails/active_record/middle/pluck_and_select_optimization.md +11 -0
- data/files/rails/active_record/middle/transactions_and_rollback.md +11 -0
- data/files/rails/active_record/middle/upsert_records.md +13 -0
- data/files/rails/active_record/middle/use_counter_cache.md +16 -0
- data/files/rails/active_record_associations/advanced/association_callbacks_for_cache_invalidation.md +17 -0
- data/files/rails/active_record_associations/advanced/association_extensions_module.md +24 -0
- data/files/rails/active_record_associations/advanced/deep_nested_attributes_with_reject_if.md +17 -0
- data/files/rails/active_record_associations/advanced/dynamic_associations_definition.md +19 -0
- data/files/rails/active_record_associations/advanced/habtm_to_has_many_through_with_extra.md +26 -0
- data/files/rails/active_record_associations/advanced/inverse_of_and_eager_preloading.md +19 -0
- data/files/rails/active_record_associations/advanced/multi_table_join_with_has_many_through.md +20 -0
- data/files/rails/active_record_associations/advanced/polymorphic_counter_cache_optimization.md +25 -0
- data/files/rails/active_record_associations/advanced/preloading_with_aggregates.md +17 -0
- data/files/rails/active_record_associations/advanced/self_referential_scopes.md +19 -0
- data/files/rails/active_record_associations/advanced/sti_associations_with_default_scopes.md +23 -0
- data/files/rails/active_record_associations/advanced/through_association_with_conditions.md +16 -0
- data/files/rails/active_record_associations/beginner/belongs_to_association.md +12 -0
- data/files/rails/active_record_associations/beginner/build_associated_records.md +13 -0
- data/files/rails/active_record_associations/beginner/counter_cache_option.md +15 -0
- data/files/rails/active_record_associations/beginner/dependent_option.md +12 -0
- data/files/rails/active_record_associations/beginner/eager_loading_associations.md +13 -0
- data/files/rails/active_record_associations/beginner/has_and_belongs_to_many_association.md +17 -0
- data/files/rails/active_record_associations/beginner/has_many_association.md +12 -0
- data/files/rails/active_record_associations/beginner/has_many_through_association.md +19 -0
- data/files/rails/active_record_associations/beginner/has_one_association.md +12 -0
- data/files/rails/active_record_associations/beginner/inverse_of_option.md +17 -0
- data/files/rails/active_record_associations/beginner/nested_attributes.md +22 -0
- data/files/rails/active_record_associations/beginner/validates_associated.md +13 -0
- data/files/rails/active_record_associations/expert/association_callbacks_usage.md +19 -0
- data/files/rails/active_record_associations/expert/composite_primary_key_associations.md +19 -0
- data/files/rails/active_record_associations/expert/custom_inverse_of_complex.md +15 -0
- data/files/rails/active_record_associations/expert/custom_join_sql_through.md +12 -0
- data/files/rails/active_record_associations/expert/dynamic_association_extensions.md +21 -0
- data/files/rails/active_record_associations/expert/dynamic_build_in_callbacks.md +17 -0
- data/files/rails/active_record_associations/expert/eager_load_override_select.md +18 -0
- data/files/rails/active_record_associations/expert/multi_level_through_alias.md +17 -0
- data/files/rails/active_record_associations/expert/polymorphic_counter_cache.md +22 -0
- data/files/rails/active_record_associations/expert/recursive_self_referential_tree.md +15 -0
- data/files/rails/active_record_associations/expert/scoped_polymorphic_association_conditions.md +16 -0
- data/files/rails/active_record_associations/expert/sti_hierarchical_associations.md +15 -0
- data/files/rails/active_record_associations/middle/association_extensions.md +16 -0
- data/files/rails/active_record_associations/middle/association_scopes.md +12 -0
- data/files/rails/active_record_associations/middle/conditional_associations.md +14 -0
- data/files/rails/active_record_associations/middle/counter_cache.md +14 -0
- data/files/rails/active_record_associations/middle/custom_foreign_key_and_class_name.md +11 -0
- data/files/rails/active_record_associations/middle/dependent_options.md +11 -0
- data/files/rails/active_record_associations/middle/eager_loading_includes.md +13 -0
- data/files/rails/active_record_associations/middle/has_many_through.md +21 -0
- data/files/rails/active_record_associations/middle/inverse_of.md +15 -0
- data/files/rails/active_record_associations/middle/polymorphic_association.md +17 -0
- data/files/rails/active_record_associations/middle/touch_option.md +13 -0
- data/files/rails/active_record_associations/middle/validating_associations.md +14 -0
- data/files/rails/active_record_callbacks/advanced/active_support_callbacks_api.md +37 -0
- data/files/rails/active_record_callbacks/advanced/around_transaction_callbacks.md +20 -0
- data/files/rails/active_record_callbacks/advanced/callback_performance_tips.md +18 -0
- data/files/rails/active_record_callbacks/advanced/concern_based_callbacks.md +33 -0
- data/files/rails/active_record_callbacks/advanced/conditional_callbacks_lambda.md +22 -0
- data/files/rails/active_record_callbacks/advanced/custom_callback_chains.md +28 -0
- data/files/rails/active_record_callbacks/advanced/explicit_callback_priority.md +22 -0
- data/files/rails/active_record_callbacks/advanced/introspect_reorder_callbacks.md +24 -0
- data/files/rails/active_record_callbacks/advanced/skip_callbacks_in_tests.md +21 -0
- data/files/rails/active_record_callbacks/advanced/sti_inherited_callbacks.md +16 -0
- data/files/rails/active_record_callbacks/beginner/after_create_notification.md +16 -0
- data/files/rails/active_record_callbacks/beginner/after_destroy_cleanup.md +16 -0
- data/files/rails/active_record_callbacks/beginner/after_save_cache_clear.md +16 -0
- data/files/rails/active_record_callbacks/beginner/before_create_default_status.md +16 -0
- data/files/rails/active_record_callbacks/beginner/before_save_callback.md +16 -0
- data/files/rails/active_record_callbacks/beginner/before_validation_usage.md +16 -0
- data/files/rails/active_record_callbacks/beginner/conditional_callback_if_unless.md +20 -0
- data/files/rails/active_record_callbacks/beginner/multiple_callbacks_order.md +21 -0
- data/files/rails/active_record_callbacks/beginner/skip_callback_example.md +13 -0
- data/files/rails/active_record_callbacks/beginner/using_blocks_in_callbacks.md +12 -0
- data/files/rails/active_record_callbacks/expert/abort_before_destroy.md +19 -0
- data/files/rails/active_record_callbacks/expert/around_commit_transaction.md +17 -0
- data/files/rails/active_record_callbacks/expert/async_callbacks.md +16 -0
- data/files/rails/active_record_callbacks/expert/concerns_for_callbacks.md +24 -0
- data/files/rails/active_record_callbacks/expert/conditional_chain_callbacks.md +21 -0
- data/files/rails/active_record_callbacks/expert/dynamic_callback_definitions.md +22 -0
- data/files/rails/active_record_callbacks/expert/memory_leak_callbacks.md +13 -0
- data/files/rails/active_record_callbacks/expert/prepend_callbacks.md +26 -0
- data/files/rails/active_record_callbacks/expert/rspec_callbacks_testing.md +17 -0
- data/files/rails/active_record_callbacks/expert/soft_delete_callbacks.md +23 -0
- data/files/rails/active_record_callbacks/middle/around_save_transaction.md +18 -0
- data/files/rails/active_record_callbacks/middle/batch_operations_callbacks.md +19 -0
- data/files/rails/active_record_callbacks/middle/callback_ordering.md +21 -0
- data/files/rails/active_record_callbacks/middle/callbacks_in_concerns.md +26 -0
- data/files/rails/active_record_callbacks/middle/conditional_callbacks.md +20 -0
- data/files/rails/active_record_callbacks/middle/default_values_validation.md +16 -0
- data/files/rails/active_record_callbacks/middle/email_after_commit.md +16 -0
- data/files/rails/active_record_callbacks/middle/normalize_attribute.md +16 -0
- data/files/rails/active_record_callbacks/middle/skip_callbacks.md +15 -0
- data/files/rails/active_record_callbacks/middle/testing_callbacks.md +16 -0
- data/files/rails/active_record_migrations/advanced/check_constraints.md +11 -0
- data/files/rails/active_record_migrations/advanced/concurrent_index.md +17 -0
- data/files/rails/active_record_migrations/advanced/conditional_migrations.md +13 -0
- data/files/rails/active_record_migrations/advanced/custom_enum_types.md +19 -0
- data/files/rails/active_record_migrations/advanced/default_sql_functions.md +11 -0
- data/files/rails/active_record_migrations/advanced/foreign_key_cascade.md +11 -0
- data/files/rails/active_record_migrations/advanced/materialized_views.md +20 -0
- data/files/rails/active_record_migrations/advanced/partitioned_tables.md +26 -0
- data/files/rails/active_record_migrations/advanced/reversible_data_migrations.md +19 -0
- data/files/rails/active_record_migrations/advanced/uuid_primary_keys.md +15 -0
- data/files/rails/active_record_migrations/beginner/add_column.md +15 -0
- data/files/rails/active_record_migrations/beginner/add_index.md +15 -0
- data/files/rails/active_record_migrations/beginner/change_column_type.md +15 -0
- data/files/rails/active_record_migrations/beginner/create_table.md +19 -0
- data/files/rails/active_record_migrations/beginner/remove_column.md +15 -0
- data/files/rails/active_record_migrations/beginner/remove_index.md +15 -0
- data/files/rails/active_record_migrations/beginner/rename_column.md +15 -0
- data/files/rails/active_record_migrations/beginner/reversible_migration.md +15 -0
- data/files/rails/active_record_migrations/beginner/rollback.md +11 -0
- data/files/rails/active_record_migrations/beginner/timestamps.md +19 -0
- data/files/rails/active_record_migrations/expert/batch_updates_with_find_in_batches.md +26 -0
- data/files/rails/active_record_migrations/expert/custom_migration_base_class.md +24 -0
- data/files/rails/active_record_migrations/expert/decouple_models_using_anonymous_class.md +21 -0
- data/files/rails/active_record_migrations/expert/deferrable_foreign_keys.md +14 -0
- data/files/rails/active_record_migrations/expert/disable_ddl_transaction_for_concurrent_index.md +19 -0
- data/files/rails/active_record_migrations/expert/multi_step_default_column_addition.md +28 -0
- data/files/rails/active_record_migrations/expert/parallel_migrations_via_rake.md +20 -0
- data/files/rails/active_record_migrations/expert/postgresql_table_partitioning.md +30 -0
- data/files/rails/active_record_migrations/expert/reversible_data_backfill.md +24 -0
- data/files/rails/active_record_migrations/expert/squash_and_manage_migration_versions.md +14 -0
- data/files/rails/active_record_migrations/middle/add_column_default_not_null.md +17 -0
- data/files/rails/active_record_migrations/middle/add_index_options.md +14 -0
- data/files/rails/active_record_migrations/middle/batch_data_migration.md +17 -0
- data/files/rails/active_record_migrations/middle/change_column_with_data_migration.md +25 -0
- data/files/rails/active_record_migrations/middle/concurrent_index.md +15 -0
- data/files/rails/active_record_migrations/middle/conditional_migrations.md +13 -0
- data/files/rails/active_record_migrations/middle/raw_sql_execute.md +19 -0
- data/files/rails/active_record_migrations/middle/remove_columns_indexes.md +12 -0
- data/files/rails/active_record_migrations/middle/rename_column.md +11 -0
- data/files/rails/active_record_migrations/middle/reversible_migrations.md +14 -0
- data/files/rails/active_record_querying/advanced/array_and_hstore_query.md +9 -0
- data/files/rails/active_record_querying/advanced/bulk_update_with_case.md +8 -0
- data/files/rails/active_record_querying/advanced/common_table_expressions.md +11 -0
- data/files/rails/active_record_querying/advanced/computed_selects.md +12 -0
- data/files/rails/active_record_querying/advanced/dynamic_arel_queries.md +12 -0
- data/files/rails/active_record_querying/advanced/dynamic_filter_scopes.md +12 -0
- data/files/rails/active_record_querying/advanced/jsonb_querying.md +9 -0
- data/files/rails/active_record_querying/advanced/lateral_joins.md +11 -0
- data/files/rails/active_record_querying/advanced/polymorphic_joins.md +10 -0
- data/files/rails/active_record_querying/advanced/union_relations.md +9 -0
- data/files/rails/active_record_querying/advanced/upsert_all_conflicts.md +10 -0
- data/files/rails/active_record_querying/advanced/window_functions.md +13 -0
- data/files/rails/active_record_querying/beginner/basic_all_where.md +11 -0
- data/files/rails/active_record_querying/beginner/chaining_queries.md +10 -0
- data/files/rails/active_record_querying/beginner/exists_queries.md +11 -0
- data/files/rails/active_record_querying/beginner/find_or_create_by.md +8 -0
- data/files/rails/active_record_querying/beginner/find_vs_find_by.md +11 -0
- data/files/rails/active_record_querying/beginner/first_last.md +11 -0
- data/files/rails/active_record_querying/beginner/limit_usage.md +8 -0
- data/files/rails/active_record_querying/beginner/offset_usage.md +8 -0
- data/files/rails/active_record_querying/beginner/order_results.md +11 -0
- data/files/rails/active_record_querying/beginner/pluck_usage.md +11 -0
- data/files/rails/active_record_querying/beginner/select_columns.md +12 -0
- data/files/rails/active_record_querying/beginner/where_not.md +11 -0
- data/files/rails/active_record_querying/expert/batch_processing_find_each.md +11 -0
- data/files/rails/active_record_querying/expert/bulk_upserts.md +11 -0
- data/files/rails/active_record_querying/expert/ctes_with_active_record.md +15 -0
- data/files/rails/active_record_querying/expert/eager_loading_nested_polymorphic.md +11 -0
- data/files/rails/active_record_querying/expert/explain_analyze_inspection.md +13 -0
- data/files/rails/active_record_querying/expert/index_hints_with_raw_sql.md +9 -0
- data/files/rails/active_record_querying/expert/jsonb_postgresql_queries.md +15 -0
- data/files/rails/active_record_querying/expert/lateral_joins.md +14 -0
- data/files/rails/active_record_querying/expert/optimistic_locking_queries.md +12 -0
- data/files/rails/active_record_querying/expert/prepared_statements.md +10 -0
- data/files/rails/active_record_querying/expert/recursive_cte_for_hierarchies.md +16 -0
- data/files/rails/active_record_querying/expert/window_functions.md +11 -0
- data/files/rails/active_record_querying/middle/batch_processing.md +10 -0
- data/files/rails/active_record_querying/middle/distinct_select.md +10 -0
- data/files/rails/active_record_querying/middle/exists_query.md +8 -0
- data/files/rails/active_record_querying/middle/from_subquery.md +11 -0
- data/files/rails/active_record_querying/middle/includes_conditions.md +10 -0
- data/files/rails/active_record_querying/middle/joins_conditions.md +9 -0
- data/files/rails/active_record_querying/middle/or_queries.md +10 -0
- data/files/rails/active_record_querying/middle/pluck_usage.md +8 -0
- data/files/rails/active_record_querying/middle/reorder_results.md +8 -0
- data/files/rails/active_record_querying/middle/unscope_conditions.md +10 -0
- data/files/rails/active_record_querying/middle/where_not_usage.md +8 -0
- data/files/rails/active_record_querying/middle/where_range_query.md +8 -0
- data/files/rails/active_record_validations/advanced/conditional_validation_lambda.md +14 -0
- data/files/rails/active_record_validations/advanced/custom_validation_contexts.md +22 -0
- data/files/rails/active_record_validations/advanced/custom_validator_class.md +21 -0
- data/files/rails/active_record_validations/advanced/database_uniqueness_enforcement.md +24 -0
- data/files/rails/active_record_validations/advanced/dynamic_validations.md +15 -0
- data/files/rails/active_record_validations/advanced/i18n_error_messages.md +20 -0
- data/files/rails/active_record_validations/advanced/json_schema_validation.md +21 -0
- data/files/rails/active_record_validations/advanced/multi_attribute_validation.md +18 -0
- data/files/rails/active_record_validations/advanced/nested_association_validations.md +19 -0
- data/files/rails/active_record_validations/advanced/strict_validations.md +19 -0
- data/files/rails/active_record_validations/beginner/associated_records_validation.md +10 -0
- data/files/rails/active_record_validations/beginner/conditional_validation.md +13 -0
- data/files/rails/active_record_validations/beginner/custom_validation_method.md +16 -0
- data/files/rails/active_record_validations/beginner/format_validation.md +9 -0
- data/files/rails/active_record_validations/beginner/grouping_with_options.md +13 -0
- data/files/rails/active_record_validations/beginner/inclusion_exclusion_validation.md +10 -0
- data/files/rails/active_record_validations/beginner/length_validation.md +9 -0
- data/files/rails/active_record_validations/beginner/numericality_validation.md +9 -0
- data/files/rails/active_record_validations/beginner/presence_validation.md +9 -0
- data/files/rails/active_record_validations/beginner/uniqueness_validation.md +9 -0
- data/files/rails/active_record_validations/expert/advanced_uniqueness_scopes.md +16 -0
- data/files/rails/active_record_validations/expert/complex_association_validations.md +17 -0
- data/files/rails/active_record_validations/expert/composable_lambda_validators.md +22 -0
- data/files/rails/active_record_validations/expert/contextual_validations.md +20 -0
- data/files/rails/active_record_validations/expert/custom_validator_classes.md +19 -0
- data/files/rails/active_record_validations/expert/db_constraints_parallel.md +20 -0
- data/files/rails/active_record_validations/expert/defer_validations_before_validation.md +20 -0
- data/files/rails/active_record_validations/expert/dynamic_conditional_validations.md +15 -0
- data/files/rails/active_record_validations/expert/json_schema_validation.md +24 -0
- data/files/rails/active_record_validations/expert/optimize_validation_performance.md +12 -0
- data/files/rails/active_record_validations/middle/associated_models_validation.md +15 -0
- data/files/rails/active_record_validations/middle/conditional_validations.md +14 -0
- data/files/rails/active_record_validations/middle/custom_validator_method.md +15 -0
- data/files/rails/active_record_validations/middle/grouped_validations_with_options.md +12 -0
- data/files/rails/active_record_validations/middle/nested_attributes_presence.md +14 -0
- data/files/rails/active_record_validations/middle/numericality_options.md +9 -0
- data/files/rails/active_record_validations/middle/regex_format_validation.md +8 -0
- data/files/rails/active_record_validations/middle/uniqueness_scope.md +9 -0
- data/files/rails/active_record_validations/middle/validates_each_usage.md +11 -0
- data/files/rails/active_record_validations/middle/validation_contexts.md +12 -0
- data/files/rails/active_storage/advanced/custom_blob_analysis.md +28 -0
- data/files/rails/active_storage/advanced/custom_variant_processor.md +33 -0
- data/files/rails/active_storage/advanced/direct_upload_throttling.md +25 -0
- data/files/rails/active_storage/advanced/stream_large_files.md +39 -0
- data/files/rails/active_storage/advanced/webp_global_variant.md +22 -0
- data/files/rails/active_storage/beginner/active_storage_attach_files.md +21 -0
- data/files/rails/active_storage/beginner/active_storage_delete_purge.md +14 -0
- data/files/rails/active_storage/beginner/active_storage_display_image.md +12 -0
- data/files/rails/active_storage/beginner/active_storage_setup.md +9 -0
- data/files/rails/active_storage/beginner/active_storage_validate.md +24 -0
- data/files/rails/active_storage/expert/async_variant_generation.md +47 -0
- data/files/rails/active_storage/expert/cdn_signed_url_with_custom_headers.md +43 -0
- data/files/rails/active_storage/expert/custom_pdf_page_count_analyzer.md +38 -0
- data/files/rails/active_storage/expert/mirror_service_fallback.md +42 -0
- data/files/rails/active_storage/expert/resumable_multipart_upload.md +35 -0
- data/files/rails/active_storage/middle/direct_uploads_with_javascript.md +18 -0
- data/files/rails/active_storage/middle/generating_and_displaying_variants.md +19 -0
- data/files/rails/active_storage/middle/purging_unused_blobs_and_attachments.md +24 -0
- data/files/rails/active_storage/middle/switching_active_storage_services.md +28 -0
- data/files/rails/active_storage/middle/validating_active_storage_attachments.md +15 -0
- data/files/rails/active_support/advanced/advanced_cache_fetch_multi.md +12 -0
- data/files/rails/active_support/advanced/concern_modularization.md +36 -0
- data/files/rails/active_support/advanced/custom_inflections.md +13 -0
- data/files/rails/active_support/advanced/deprecation_management.md +13 -0
- data/files/rails/active_support/advanced/json_encoder_customization.md +17 -0
- data/files/rails/active_support/advanced/nested_hash_transformations.md +15 -0
- data/files/rails/active_support/advanced/notifications_instrumentation.md +16 -0
- data/files/rails/active_support/advanced/per_thread_registry.md +27 -0
- data/files/rails/active_support/advanced/reloader_hooks.md +16 -0
- data/files/rails/active_support/advanced/tagged_logging.md +14 -0
- data/files/rails/active_support/beginner/array_accessors.md +11 -0
- data/files/rails/active_support/beginner/current_time_date.md +8 -0
- data/files/rails/active_support/beginner/deep_merge_hash.md +10 -0
- data/files/rails/active_support/beginner/delegate_method.md +14 -0
- data/files/rails/active_support/beginner/indifferent_access.md +10 -0
- data/files/rails/active_support/beginner/numeric_time_helpers.md +9 -0
- data/files/rails/active_support/beginner/presence_methods.md +10 -0
- data/files/rails/active_support/beginner/string_inflections.md +10 -0
- data/files/rails/active_support/beginner/string_inquiry.md +14 -0
- data/files/rails/active_support/beginner/try_method.md +11 -0
- data/files/rails/active_support/expert/advanced_hashdeep_merge.md +12 -0
- data/files/rails/active_support/expert/cache_key_generation_extensibility.md +18 -0
- data/files/rails/active_support/expert/callbacks_building_custom_chains.md +26 -0
- data/files/rails/active_support/expert/concern_dependency_injection.md +30 -0
- data/files/rails/active_support/expert/custom_durations_with_precision.md +17 -0
- data/files/rails/active_support/expert/custom_inflections.md +18 -0
- data/files/rails/active_support/expert/json_serialization_custom_encoder.md +27 -0
- data/files/rails/active_support/expert/notifications_custom_instrumentation.md +19 -0
- data/files/rails/active_support/expert/on_load_hooks_for_engines.md +15 -0
- data/files/rails/active_support/expert/tagged_logging_contexts.md +21 -0
- data/files/rails/active_support/middle/active_support_concern_modules.md +20 -0
- data/files/rails/active_support/middle/deep_merge_nested_hashes.md +9 -0
- data/files/rails/active_support/middle/enumerable_in_groups_of.md +10 -0
- data/files/rails/active_support/middle/hash_with_indifferent_access.md +8 -0
- data/files/rails/active_support/middle/notifications_instrumentation.md +15 -0
- data/files/rails/active_support/middle/numeric_time_extensions.md +8 -0
- data/files/rails/active_support/middle/presence_and_blank_helpers.md +9 -0
- data/files/rails/active_support/middle/safe_constantize_for_dynamic_loading.md +9 -0
- data/files/rails/active_support/middle/string_inflection_helpers.md +9 -0
- data/files/rails/active_support/middle/use_time_current_for_timezone.md +7 -0
- data/files/rails/api_mode/advanced/advanced_jsonapi_serializer.md +27 -0
- data/files/rails/api_mode/advanced/custom_rack_middleware_injection.md +33 -0
- data/files/rails/api_mode/advanced/header_based_api_versioning.md +35 -0
- data/files/rails/api_mode/advanced/http_caching_etags_conditional_get.md +25 -0
- data/files/rails/api_mode/beginner/configure_cors.md +24 -0
- data/files/rails/api_mode/beginner/create_api_app.md +10 -0
- data/files/rails/api_mode/beginner/generate_resource_controller.md +24 -0
- data/files/rails/api_mode/beginner/use_strong_parameters.md +16 -0
- data/files/rails/api_mode/expert/accept_header_api_versioning.md +33 -0
- data/files/rails/api_mode/expert/custom_rate_limiting_middleware.md +32 -0
- data/files/rails/api_mode/expert/fast_json_serialization_with_oj.md +16 -0
- data/files/rails/api_mode/expert/streaming_json_responses.md +22 -0
- data/files/rails/api_mode/middle/api_error_handling.md +25 -0
- data/files/rails/api_mode/middle/api_generators.md +9 -0
- data/files/rails/api_mode/middle/api_versioning.md +14 -0
- data/files/rails/api_mode/middle/json_serialization.md +17 -0
- data/files/rails/assets/advanced/asset_caching_strategies.md +18 -0
- data/files/rails/assets/advanced/custom_asset_precompilation.md +17 -0
- data/files/rails/assets/advanced/dynamic_asset_host.md +14 -0
- data/files/rails/assets/advanced/sprockets_custom_processor.md +20 -0
- data/files/rails/assets/advanced/webpacker_custom_config.md +26 -0
- data/files/rails/assets/beginner/asset_pipeline_basics.md +17 -0
- data/files/rails/assets/beginner/cache_busting_versioning.md +12 -0
- data/files/rails/assets/beginner/organize_images_fonts.md +14 -0
- data/files/rails/assets/beginner/precompile_assets.md +13 -0
- data/files/rails/assets/beginner/sprockets_helpers.md +9 -0
- data/files/rails/assets/expert/custom_sprockets_processor.md +14 -0
- data/files/rails/assets/expert/dynamic_asset_host_fallback.md +12 -0
- data/files/rails/assets/expert/http_cache_invalidation.md +29 -0
- data/files/rails/assets/expert/inline_critical_css.md +20 -0
- data/files/rails/assets/expert/webpack_bundle_splitting.md +29 -0
- data/files/rails/assets/middle/configure_asset_host.md +11 -0
- data/files/rails/assets/middle/custom_precompile_assets.md +12 -0
- data/files/rails/assets/middle/sass_partials_and_variables.md +15 -0
- data/files/rails/assets/middle/sprockets_directives_load_order.md +14 -0
- data/files/rails/assets/middle/use_webpacker_asset_pack_tag.md +12 -0
- data/files/rails/authentication_and_authorization/advanced/custom_devise_warden_strategy.md +39 -0
- data/files/rails/authentication_and_authorization/advanced/jwt_refresh_token_rotation.md +29 -0
- data/files/rails/authentication_and_authorization/advanced/multi_tenant_policy_scoping.md +39 -0
- data/files/rails/authentication_and_authorization/advanced/pundit_policy_caching.md +26 -0
- data/files/rails/authentication_and_authorization/beginner/bcrypt_user_auth.md +25 -0
- data/files/rails/authentication_and_authorization/beginner/before_action_authentication.md +33 -0
- data/files/rails/authentication_and_authorization/beginner/sessions_controller_setup.md +43 -0
- data/files/rails/authentication_and_authorization/beginner/simple_role_authorization.md +42 -0
- data/files/rails/authentication_and_authorization/expert/cancancan_ability_caching_preload.md +36 -0
- data/files/rails/authentication_and_authorization/expert/dynamic_pundit_scope_with_rls.md +30 -0
- data/files/rails/authentication_and_authorization/expert/graphql_jwt_pundit_integration.md +40 -0
- data/files/rails/authentication_and_authorization/expert/mfa_custom_warden_strategy.md +30 -0
- data/files/rails/authentication_and_authorization/middle/customize_redirects.md +16 -0
- data/files/rails/authentication_and_authorization/middle/policy_scope_index.md +29 -0
- data/files/rails/authentication_and_authorization/middle/role_based_policies.md +19 -0
- data/files/rails/authentication_and_authorization/middle/token_authentication.md +22 -0
- data/files/rails/background_jobs/advanced/idempotent_jobs.md +21 -0
- data/files/rails/background_jobs/advanced/job_metrics.md +15 -0
- data/files/rails/background_jobs/advanced/rate_limiting_middleware.md +35 -0
- data/files/rails/background_jobs/advanced/sidekiq_batches.md +27 -0
- data/files/rails/background_jobs/advanced/transactional_enqueue.md +18 -0
- data/files/rails/background_jobs/beginner/create_simple_job.md +20 -0
- data/files/rails/background_jobs/beginner/enqueue_with_perform_later.md +20 -0
- data/files/rails/background_jobs/beginner/install_sidekiq.md +31 -0
- data/files/rails/background_jobs/beginner/monitor_sidekiq_web.md +17 -0
- data/files/rails/background_jobs/beginner/pass_arguments_to_job.md +20 -0
- data/files/rails/background_jobs/expert/custom_retry_strategy.md +24 -0
- data/files/rails/background_jobs/expert/job_orchestration.md +27 -0
- data/files/rails/background_jobs/expert/observability_instrumentation.md +18 -0
- data/files/rails/background_jobs/expert/sidekiq_batch_callbacks.md +22 -0
- data/files/rails/background_jobs/expert/unique_jobs_idempotency.md +24 -0
- data/files/rails/background_jobs/middle/configure_retry_and_discard.md +18 -0
- data/files/rails/background_jobs/middle/integrate_active_job_sidekiq.md +27 -0
- data/files/rails/background_jobs/middle/schedule_jobs_with_active_job.md +16 -0
- data/files/rails/background_jobs/middle/serialize_arguments_safely.md +21 -0
- data/files/rails/background_jobs/middle/test_background_jobs_in_rspec.md +28 -0
- data/files/rails/benchmarking/advanced/benchmark_ips_gem.md +24 -0
- data/files/rails/benchmarking/advanced/gc_profiler_memory.md +17 -0
- data/files/rails/benchmarking/advanced/micro_benchmark_bmbm.md +16 -0
- data/files/rails/benchmarking/advanced/rack_mini_profiler_programmatic.md +23 -0
- data/files/rails/benchmarking/advanced/sql_query_notifications.md +18 -0
- data/files/rails/benchmarking/beginner/benchmark_bm.md +18 -0
- data/files/rails/benchmarking/beginner/benchmark_measure.md +15 -0
- data/files/rails/benchmarking/beginner/benchmark_realtime.md +14 -0
- data/files/rails/benchmarking/beginner/console_benchmark.md +13 -0
- data/files/rails/benchmarking/beginner/rails_logger_benchmark.md +16 -0
- data/files/rails/benchmarking/expert/active_support_notifications_metrics.md +17 -0
- data/files/rails/benchmarking/expert/concurrent_ruby_benchmark.md +22 -0
- data/files/rails/benchmarking/expert/low_level_benchmarking.md +19 -0
- data/files/rails/benchmarking/expert/memory_allocation_tracking.md +23 -0
- data/files/rails/benchmarking/expert/sql_query_profiling.md +18 -0
- data/files/rails/benchmarking/middle/activerecord_n_plus_one_benchmark.md +19 -0
- data/files/rails/benchmarking/middle/benchmark_ips_usage.md +16 -0
- data/files/rails/benchmarking/middle/console_benchmark_measure.md +19 -0
- data/files/rails/benchmarking/middle/rake_task_benchmark.md +20 -0
- data/files/rails/benchmarking/middle/view_rendering_benchmark.md +26 -0
- data/files/rails/caching/advanced/custom_cache_versioning.md +23 -0
- data/files/rails/caching/advanced/dynamic_fragment_caching.md +23 -0
- data/files/rails/caching/advanced/http_conditional_caching.md +15 -0
- data/files/rails/caching/advanced/low_level_race_condition_ttl.md +12 -0
- data/files/rails/caching/advanced/multi_tier_caching.md +16 -0
- data/files/rails/caching/advanced/russian_doll_caching.md +30 -0
- data/files/rails/caching/beginner/cache_expiration.md +10 -0
- data/files/rails/caching/beginner/conditional_fragment_caching.md +11 -0
- data/files/rails/caching/beginner/configure_cache_store.md +14 -0
- data/files/rails/caching/beginner/low_level_cache_fetch.md +10 -0
- data/files/rails/caching/beginner/russian_doll_caching.md +19 -0
- data/files/rails/caching/beginner/view_fragment_caching.md +15 -0
- data/files/rails/caching/expert/fetch_multi_batch_reads.md +16 -0
- data/files/rails/caching/expert/http_conditional_get.md +15 -0
- data/files/rails/caching/expert/localcache_with_remote_store.md +16 -0
- data/files/rails/caching/expert/race_condition_ttl.md +12 -0
- data/files/rails/caching/expert/raw_store_bypass_serialization.md +18 -0
- data/files/rails/caching/expert/russian_doll_cache_versioning.md +18 -0
- data/files/rails/command_line/advanced/customizing_cli_defaults_with_railsrc.md +26 -0
- data/files/rails/command_line/advanced/one_off_scripts_with_runner.md +21 -0
- data/files/rails/command_line/beginner/create_new_app.md +8 -0
- data/files/rails/command_line/beginner/run_local_server.md +8 -0
- data/files/rails/command_line/expert/custom-rails-cli-commands-railtie.md +42 -0
- data/files/rails/command_line/expert/spring-custom-commands.md +36 -0
- data/files/rails/command_line/middle/filtering_rails_routes.md +14 -0
- data/files/rails/command_line/middle/rails_runner_scripts.md +14 -0
- data/files/rails/configuration/advanced/conditional_middleware_configuration.md +29 -0
- data/files/rails/configuration/advanced/config_for_nested_yaml.md +43 -0
- data/files/rails/configuration/advanced/dynamic_custom_config_x.md +34 -0
- data/files/rails/configuration/beginner/config_time_zone.md +17 -0
- data/files/rails/configuration/beginner/configure_locale.md +17 -0
- data/files/rails/configuration/beginner/skip_generator_files.md +18 -0
- data/files/rails/configuration/expert/dynamic_config_for.md +33 -0
- data/files/rails/configuration/expert/multi_env_encrypted_credentials.md +23 -0
- data/files/rails/configuration/expert/railtie_initialization_hooks.md +29 -0
- data/files/rails/configuration/middle/custom_app_config.md +23 -0
- data/files/rails/configuration/middle/environment_specific_config.md +28 -0
- data/files/rails/configuration/middle/load_yaml_config.md +19 -0
- data/files/rails/console/advanced/console_custom_helpers.md +22 -0
- data/files/rails/console/advanced/console_performance_profiling.md +28 -0
- data/files/rails/console/beginner/query_with_console.md +17 -0
- data/files/rails/console/beginner/reload_rails_console.md +14 -0
- data/files/rails/console/expert/benchmark_explain_active_record.md +22 -0
- data/files/rails/console/expert/custom_pry_rc_for_rails_console.md +23 -0
- data/files/rails/console/middle/enhanced_output_with_awesomeprint.md +25 -0
- data/files/rails/console/middle/quick_reload_application_code.md +18 -0
- data/files/rails/controllers/advanced/actioncable_integration.md +17 -0
- data/files/rails/controllers/advanced/bulk_insert_update.md +18 -0
- data/files/rails/controllers/advanced/controller_concerns_draggable.md +32 -0
- data/files/rails/controllers/advanced/controller_testing_shared_examples.md +23 -0
- data/files/rails/controllers/advanced/jwt_authentication_in_controllers.md +18 -0
- data/files/rails/controllers/advanced/n_plus_one_query_optimization.md +17 -0
- data/files/rails/controllers/advanced/rate_limiting_actions.md +28 -0
- data/files/rails/controllers/advanced/rescue_from_graceful_errors.md +19 -0
- data/files/rails/controllers/advanced/russian_doll_caching.md +21 -0
- data/files/rails/controllers/advanced/streaming_json_responses.md +26 -0
- data/files/rails/controllers/advanced/strong_params_nested_attributes.md +17 -0
- data/files/rails/controllers/advanced/versioned_api_namespaces.md +27 -0
- data/files/rails/controllers/beginner/accessing_params.md +13 -0
- data/files/rails/controllers/beginner/basic_controller_setup.md +19 -0
- data/files/rails/controllers/beginner/defining_restful_actions.md +10 -0
- data/files/rails/controllers/beginner/flash_messages.md +23 -0
- data/files/rails/controllers/beginner/handling_not_found_errors.md +15 -0
- data/files/rails/controllers/beginner/redirecting_after_actions.md +16 -0
- data/files/rails/controllers/beginner/rendering_json_responses.md +12 -0
- data/files/rails/controllers/beginner/rendering_templates.md +12 -0
- data/files/rails/controllers/beginner/responding_to_formats.md +15 -0
- data/files/rails/controllers/beginner/using_before_action_filters.md +17 -0
- data/files/rails/controllers/beginner/using_partials_to_dry_views.md +15 -0
- data/files/rails/controllers/beginner/using_strong_parameters.md +22 -0
- data/files/rails/controllers/expert/action_cable_integration.md +24 -0
- data/files/rails/controllers/expert/advanced_content_negotiation.md +22 -0
- data/files/rails/controllers/expert/controller_concerns_adv.md +32 -0
- data/files/rails/controllers/expert/dependency_injection_service_objects.md +26 -0
- data/files/rails/controllers/expert/dynamic_action_metaprogramming.md +24 -0
- data/files/rails/controllers/expert/http2_server_push.md +20 -0
- data/files/rails/controllers/expert/http_caching_conditional_get.md +14 -0
- data/files/rails/controllers/expert/instrumentation_notifications_controller.md +20 -0
- data/files/rails/controllers/expert/rescue_from_custom_exceptions.md +20 -0
- data/files/rails/controllers/expert/streaming_action_controller_live.md +20 -0
- data/files/rails/controllers/expert/strong_params_dynamic_filters.md +26 -0
- data/files/rails/controllers/expert/threading_parallel_requests.md +20 -0
- data/files/rails/controllers/middle/action_caching.md +16 -0
- data/files/rails/controllers/middle/before_action_filters.md +18 -0
- data/files/rails/controllers/middle/controller_concerns.md +22 -0
- data/files/rails/controllers/middle/default_url_options.md +12 -0
- data/files/rails/controllers/middle/namespaced_api_controller.md +24 -0
- data/files/rails/controllers/middle/nested_resources_management.md +29 -0
- data/files/rails/controllers/middle/redirect_back_fallback.md +15 -0
- data/files/rails/controllers/middle/rescue_from_errors.md +17 -0
- data/files/rails/controllers/middle/respond_to_formats.md +14 -0
- data/files/rails/controllers/middle/service_objects.md +40 -0
- data/files/rails/controllers/middle/streaming_responses.md +22 -0
- data/files/rails/controllers/middle/strong_parameters.md +21 -0
- data/files/rails/debugging/advanced/active_support_notifications.md +15 -0
- data/files/rails/debugging/advanced/derailed_benchmarks_setup.md +15 -0
- data/files/rails/debugging/advanced/memory_profiler_usage.md +13 -0
- data/files/rails/debugging/advanced/pry_remote_session.md +20 -0
- data/files/rails/debugging/advanced/rack_mini_profiler_production.md +13 -0
- data/files/rails/debugging/advanced/ruby_tracepoint_tracing.md +15 -0
- data/files/rails/debugging/beginner/binding_irb.md +11 -0
- data/files/rails/debugging/beginner/byebug_basics.md +14 -0
- data/files/rails/debugging/beginner/logging_debug.md +13 -0
- data/files/rails/debugging/beginner/puts_and_inspect.md +11 -0
- data/files/rails/debugging/beginner/rails_console.md +13 -0
- data/files/rails/debugging/beginner/view_dev_logs.md +8 -0
- data/files/rails/debugging/expert/binding_of_caller_usage.md +27 -0
- data/files/rails/debugging/expert/byebug_advanced_mastery.md +28 -0
- data/files/rails/debugging/expert/custom_exception_pry.md +21 -0
- data/files/rails/debugging/expert/notifications_inspector.md +24 -0
- data/files/rails/debugging/expert/remote_pry_docker_debug.md +29 -0
- data/files/rails/debugging/expert/tracepoint_active_record_sql.md +18 -0
- data/files/rails/debugging/middle/active_record_explain_queries.md +14 -0
- data/files/rails/debugging/middle/byebug_step_through.md +20 -0
- data/files/rails/debugging/middle/conditional_breakpoints.md +17 -0
- data/files/rails/debugging/middle/pry_rails_inspection.md +19 -0
- data/files/rails/debugging/middle/tagged_logging.md +19 -0
- data/files/rails/debugging/middle/web_console_error_pages.md +13 -0
- data/files/rails/deployment/advanced/capistrano_parallel_precompile.md +25 -0
- data/files/rails/deployment/advanced/k8s_canary_deployment.md +49 -0
- data/files/rails/deployment/advanced/puma_phased_restarts.md +39 -0
- data/files/rails/deployment/beginner/basic_capistrano_setup.md +33 -0
- data/files/rails/deployment/beginner/deploy_to_heroku.md +19 -0
- data/files/rails/deployment/beginner/dockerize_rails_app.md +36 -0
- data/files/rails/deployment/expert/canary_deployments_k8s_flagger.md +29 -0
- data/files/rails/deployment/expert/docker_cache_optimization.md +33 -0
- data/files/rails/deployment/expert/zero_downtime_db_migrations.md +29 -0
- data/files/rails/deployment/middle/capistrano_custom_tasks.md +28 -0
- data/files/rails/deployment/middle/local_asset_precompile.md +18 -0
- data/files/rails/deployment/middle/production_credentials_usage.md +26 -0
- data/files/rails/encryption/advanced/custom_aws_kms_key_provider.md +34 -0
- data/files/rails/encryption/advanced/deterministic_encryption_search.md +19 -0
- data/files/rails/encryption/advanced/rotate_encryption_keys.md +18 -0
- data/files/rails/encryption/beginner/active_record_encryption.md +28 -0
- data/files/rails/encryption/beginner/message_encryptor_basics.md +17 -0
- data/files/rails/encryption/beginner/rails_credentials.md +24 -0
- data/files/rails/encryption/expert/active_record_attribute_encryption.md +35 -0
- data/files/rails/encryption/expert/authenticated_encryption_with_aad.md +33 -0
- data/files/rails/encryption/expert/rotate_encryption_keys.md +25 -0
- data/files/rails/encryption/middle/active_record_encryption_config.md +17 -0
- data/files/rails/encryption/middle/custom_message_encryptor.md +20 -0
- data/files/rails/encryption/middle/migrate_existing_to_encrypted.md +27 -0
- data/files/rails/engines_and_plugins/advanced/asset_pipeline_and_migrations_railtie.md +31 -0
- data/files/rails/engines_and_plugins/advanced/custom_generator_extension.md +30 -0
- data/files/rails/engines_and_plugins/advanced/dynamic_engine_mounting.md +15 -0
- data/files/rails/engines_and_plugins/advanced/isolate_namespace_engine_config.md +24 -0
- data/files/rails/engines_and_plugins/beginner/engine_basic_setup.md +9 -0
- data/files/rails/engines_and_plugins/beginner/engine_models_migrations.md +32 -0
- data/files/rails/engines_and_plugins/beginner/engine_mounting.md +12 -0
- data/files/rails/engines_and_plugins/beginner/plugin_basic_setup.md +26 -0
- data/files/rails/engines_and_plugins/expert/custom_plugin_with_railtie.md +40 -0
- data/files/rails/engines_and_plugins/expert/isolate_namespace_advanced.md +22 -0
- data/files/rails/engines_and_plugins/expert/optimize_engine_loading.md +28 -0
- data/files/rails/engines_and_plugins/expert/railtie_middleware_hooks.md +19 -0
- data/files/rails/engines_and_plugins/middle/configuring_engine_initializers.md +15 -0
- data/files/rails/engines_and_plugins/middle/mounting_engines_routes.md +16 -0
- data/files/rails/engines_and_plugins/middle/overriding_engine_views.md +16 -0
- data/files/rails/engines_and_plugins/middle/using_plugin_rails_generators.md +16 -0
- data/files/rails/environments/advanced/config_for_env_settings.md +35 -0
- data/files/rails/environments/advanced/multi_env_credentials.md +18 -0
- data/files/rails/environments/beginner/checking_and_setting_rails_environment.md +15 -0
- data/files/rails/environments/beginner/running_rails_in_different_environments.md +13 -0
- data/files/rails/environments/expert/dynamic_environment_switching_middleware.md +44 -0
- data/files/rails/environments/expert/environment_layering_with_common.md +33 -0
- data/files/rails/environments/middle/environment_file_configuration.md +19 -0
- data/files/rails/environments/middle/rails_env_conditional_logic.md +17 -0
- data/files/rails/forms/advanced/accessibility_enhancements_with_aria.md +14 -0
- data/files/rails/forms/advanced/ajax_remote_form_submission.md +21 -0
- data/files/rails/forms/advanced/cache_form_partials_for_performance.md +21 -0
- data/files/rails/forms/advanced/conditional_fields_with_stimulus.md +34 -0
- data/files/rails/forms/advanced/custom_form_builder_shared_helpers.md +38 -0
- data/files/rails/forms/advanced/direct_s3_uploads_with_active_storage.md +18 -0
- data/files/rails/forms/advanced/dynamic_nested_fields_with_cocoon.md +32 -0
- data/files/rails/forms/advanced/form_object_with_reform.md +37 -0
- data/files/rails/forms/advanced/multi_step_form_wizard.md +38 -0
- data/files/rails/forms/advanced/stimulus_reflex_real_time_validation.md +24 -0
- data/files/rails/forms/beginner/checkbox_and_radio.md +15 -0
- data/files/rails/forms/beginner/date_time_select.md +12 -0
- data/files/rails/forms/beginner/display_error_messages.md +21 -0
- data/files/rails/forms/beginner/file_upload_field.md +10 -0
- data/files/rails/forms/beginner/form_tag_basics.md +10 -0
- data/files/rails/forms/beginner/form_with_model.md +10 -0
- data/files/rails/forms/beginner/nested_fields_for.md +23 -0
- data/files/rails/forms/beginner/password_field_basics.md +9 -0
- data/files/rails/forms/beginner/select_dropdown.md +9 -0
- data/files/rails/forms/beginner/text_field_and_label.md +9 -0
- data/files/rails/forms/expert/action_text_integration.md +27 -0
- data/files/rails/forms/expert/advanced_strong_parameters.md +21 -0
- data/files/rails/forms/expert/custom_form_builder.md +24 -0
- data/files/rails/forms/expert/dynamic_nested_forms.md +39 -0
- data/files/rails/forms/expert/form_object_pattern.md +38 -0
- data/files/rails/forms/expert/i18n_and_accessibility.md +22 -0
- data/files/rails/forms/expert/polymorphic_form_inputs.md +27 -0
- data/files/rails/forms/expert/real_time_validations.md +25 -0
- data/files/rails/forms/expert/select_options_caching.md +24 -0
- data/files/rails/forms/middle/checkbox_array_input.md +12 -0
- data/files/rails/forms/middle/collection_select_association.md +9 -0
- data/files/rails/forms/middle/csrf_token_auto.md +9 -0
- data/files/rails/forms/middle/custom_error_highlighting.md +9 -0
- data/files/rails/forms/middle/custom_form_builder.md +18 -0
- data/files/rails/forms/middle/custom_input_options.md +10 -0
- data/files/rails/forms/middle/file_field_active_storage.md +16 -0
- data/files/rails/forms/middle/form_with_remote_submissions.md +9 -0
- data/files/rails/forms/middle/i18n_labels.md +19 -0
- data/files/rails/forms/middle/nested_fields_for_models.md +21 -0
- data/files/rails/helpers/advanced/caching_heavy_helper_computations.md +21 -0
- data/files/rails/helpers/advanced/dynamic_content_tag_with_blocks.md +20 -0
- data/files/rails/helpers/advanced/dynamic_partial_resolution_with_lookup_context.md +17 -0
- data/files/rails/helpers/advanced/extending_javascript_helper_for_i18n.md +15 -0
- data/files/rails/helpers/advanced/injecting_helpers_into_mailers.md +17 -0
- data/files/rails/helpers/advanced/render_partials_from_helpers.md +17 -0
- data/files/rails/helpers/beginner/rails_helper_content_tag.md +10 -0
- data/files/rails/helpers/beginner/rails_helper_form_with.md +12 -0
- data/files/rails/helpers/beginner/rails_helper_image_tag.md +8 -0
- data/files/rails/helpers/beginner/rails_helper_link_to.md +8 -0
- data/files/rails/helpers/beginner/rails_helper_number_to_currency.md +8 -0
- data/files/rails/helpers/beginner/rails_helper_simple_format.md +8 -0
- data/files/rails/helpers/expert/dsl_fluent_helpers.md +29 -0
- data/files/rails/helpers/expert/include_helpers_in_mailers.md +21 -0
- data/files/rails/helpers/expert/memoization_with_rails_cache.md +23 -0
- data/files/rails/helpers/expert/metaprogramming_method_missing_helpers.md +22 -0
- data/files/rails/helpers/expert/organizing_helpers_with_concern.md +24 -0
- data/files/rails/helpers/expert/testing_helpers_with_actionview.md +18 -0
- data/files/rails/helpers/middle/capture_blocks.md +24 -0
- data/files/rails/helpers/middle/content_tag_usage.md +20 -0
- data/files/rails/helpers/middle/custom_helper_modules.md +25 -0
- data/files/rails/helpers/middle/link_to_dynamic_routes.md +16 -0
- data/files/rails/helpers/middle/number_helpers_usage.md +11 -0
- data/files/rails/helpers/middle/tag_helper_void_elements.md +16 -0
- data/files/rails/i18n/advanced/advanced_pluralization.md +24 -0
- data/files/rails/i18n/advanced/custom_db_backend.md +33 -0
- data/files/rails/i18n/advanced/html_safe_interpolation.md +13 -0
- data/files/rails/i18n/advanced/lazy_mailer_lookup.md +17 -0
- data/files/rails/i18n/advanced/proc_based_default_fallback.md +14 -0
- data/files/rails/i18n/beginner/interpolation_in_translations.md +14 -0
- data/files/rails/i18n/beginner/organize_locale_files.md +19 -0
- data/files/rails/i18n/beginner/pluralization_examples.md +16 -0
- data/files/rails/i18n/beginner/setup_default_locale.md +16 -0
- data/files/rails/i18n/beginner/translate_in_views.md +11 -0
- data/files/rails/i18n/expert/caching_translations_memcache.md +18 -0
- data/files/rails/i18n/expert/complex_pluralization_rules.md +36 -0
- data/files/rails/i18n/expert/custom_active_record_backend.md +17 -0
- data/files/rails/i18n/expert/namespace_lazy_lookups.md +19 -0
- data/files/rails/i18n/expert/thread_safe_locale_switching.md +18 -0
- data/files/rails/i18n/middle/datetime_localization.md +17 -0
- data/files/rails/i18n/middle/default_translation_options.md +13 -0
- data/files/rails/i18n/middle/locale_fallbacks.md +15 -0
- data/files/rails/i18n/middle/pluralization_with_count.md +17 -0
- data/files/rails/i18n/middle/scoped_view_translations.md +18 -0
- data/files/rails/layouts/advanced/custom_lookup_context_for_layout.md +18 -0
- data/files/rails/layouts/advanced/dynamic_layout_selection.md +18 -0
- data/files/rails/layouts/advanced/engine_isolated_layouts.md +16 -0
- data/files/rails/layouts/advanced/layout_variants_by_format.md +19 -0
- data/files/rails/layouts/advanced/nested_layouts_with_content_for.md +24 -0
- data/files/rails/layouts/beginner/application_layout.md +19 -0
- data/files/rails/layouts/beginner/custom_controller_layout.md +27 -0
- data/files/rails/layouts/beginner/layout_inheritance.md +20 -0
- data/files/rails/layouts/beginner/nested_layouts_partials.md +23 -0
- data/files/rails/layouts/beginner/yield_content_for.md +24 -0
- data/files/rails/layouts/expert/advanced_content_for_yields.md +43 -0
- data/files/rails/layouts/expert/dynamic_layout_selection.md +21 -0
- data/files/rails/layouts/expert/layout_fragment_caching.md +29 -0
- data/files/rails/layouts/expert/nested_layout_inheritance.md +31 -0
- data/files/rails/layouts/expert/view_component_layouts.md +36 -0
- data/files/rails/layouts/middle/asset_helpers_in_layout.md.md +15 -0
- data/files/rails/layouts/middle/content_for_and_yield.md.md +31 -0
- data/files/rails/layouts/middle/dynamic_controller_layout.md.md +22 -0
- data/files/rails/layouts/middle/nested_layouts.md.md +21 -0
- data/files/rails/layouts/middle/partial_locals_in_layout.md.md +28 -0
- data/files/rails/logging/advanced/asynchronous_logging.md +31 -0
- data/files/rails/logging/advanced/custom_log_formatter.md +18 -0
- data/files/rails/logging/advanced/lograge_logstash_integration.md +22 -0
- data/files/rails/logging/advanced/sql_query_context_logging.md +19 -0
- data/files/rails/logging/advanced/structured_json_logging.md +21 -0
- data/files/rails/logging/advanced/tagged_logging_context.md +22 -0
- data/files/rails/logging/beginner/custom_log_formatter.md +16 -0
- data/files/rails/logging/beginner/default_logger_usage.md +9 -0
- data/files/rails/logging/beginner/logging_in_controllers.md +12 -0
- data/files/rails/logging/beginner/logging_in_models.md +21 -0
- data/files/rails/logging/beginner/setting_log_levels.md +13 -0
- data/files/rails/logging/beginner/tagged_logging.md +14 -0
- data/files/rails/logging/expert/async_buffered_logging.md +33 -0
- data/files/rails/logging/expert/custom_active_support_logsubscriber.md +19 -0
- data/files/rails/logging/expert/enhance_lograge_custom_payloads.md +26 -0
- data/files/rails/logging/expert/implement_correlation_id_tracing.md +27 -0
- data/files/rails/logging/expert/instrument_performance_with_notifications.md +20 -0
- data/files/rails/logging/expert/structure_json_logs_semantic.md +26 -0
- data/files/rails/logging/middle/active_record_sql_logging.md +14 -0
- data/files/rails/logging/middle/broadcast_to_multiple_loggers.md +15 -0
- data/files/rails/logging/middle/custom_log_formatter.md +22 -0
- data/files/rails/logging/middle/environment_log_levels.md +16 -0
- data/files/rails/logging/middle/silence_logging.md +14 -0
- data/files/rails/logging/middle/tagged_logging.md +25 -0
- data/files/rails/mailers/advanced/async_mail_delivery.md +18 -0
- data/files/rails/mailers/advanced/custom_delivery_method.md +26 -0
- data/files/rails/mailers/advanced/dynamic_subjects_i18n.md +25 -0
- data/files/rails/mailers/advanced/instrumentation_monitoring.md +11 -0
- data/files/rails/mailers/advanced/interceptors_observers.md +22 -0
- data/files/rails/mailers/advanced/mailer_previews_locales.md +17 -0
- data/files/rails/mailers/advanced/parameterized_mailers.md +21 -0
- data/files/rails/mailers/advanced/streaming_attachments.md +20 -0
- data/files/rails/mailers/beginner/background_jobs_emails.md +20 -0
- data/files/rails/mailers/beginner/default_options.md +18 -0
- data/files/rails/mailers/beginner/generating_mailer.md +10 -0
- data/files/rails/mailers/beginner/mailer_methods_templates.md +22 -0
- data/files/rails/mailers/beginner/preview_emails.md +15 -0
- data/files/rails/mailers/beginner/send_emails_controllers.md +20 -0
- data/files/rails/mailers/beginner/smtp_configuration.md +22 -0
- data/files/rails/mailers/beginner/test_mailers.md +27 -0
- data/files/rails/mailers/expert/custom_delivery_method.md +34 -0
- data/files/rails/mailers/expert/custom_mailer_preview.md +18 -0
- data/files/rails/mailers/expert/dynamic_multipart_variants.md +25 -0
- data/files/rails/mailers/expert/instrumentation_and_metrics.md +15 -0
- data/files/rails/mailers/expert/mail_interceptors_observers.md +30 -0
- data/files/rails/mailers/expert/mailer_concerns_mixins.md +32 -0
- data/files/rails/mailers/expert/prioritized_async_delivery.md +25 -0
- data/files/rails/mailers/expert/streaming_attachments_s3.md +28 -0
- data/files/rails/mailers/middle/attachments_inline_images.md +20 -0
- data/files/rails/mailers/middle/background_delivery_active_job.md +20 -0
- data/files/rails/mailers/middle/customizing_layouts.md +29 -0
- data/files/rails/mailers/middle/default_url_options.md +12 -0
- data/files/rails/mailers/middle/localizing_content.md +18 -0
- data/files/rails/mailers/middle/mailer_previews.md +15 -0
- data/files/rails/mailers/middle/testing_mailers.md +29 -0
- data/files/rails/mailers/middle/using_helpers_in_mailers.md +17 -0
- data/files/rails/middleware/advanced/conditional_middleware_insertion.md +17 -0
- data/files/rails/middleware/advanced/custom_logging_middleware.md +26 -0
- data/files/rails/middleware/advanced/middleware_stack_inspection.md +18 -0
- data/files/rails/middleware/advanced/response_timing_middleware.md +28 -0
- data/files/rails/middleware/beginner/cors_middleware.md +25 -0
- data/files/rails/middleware/beginner/custom_middleware_setup.md +27 -0
- data/files/rails/middleware/beginner/insert_middleware_position.md +16 -0
- data/files/rails/middleware/beginner/request_logging_middleware.md +28 -0
- data/files/rails/middleware/expert/conditional_asset_pipeline_forking.md +22 -0
- data/files/rails/middleware/expert/dynamic_request_throttling_middleware.md +41 -0
- data/files/rails/middleware/expert/rotating_security_header_injector.md +32 -0
- data/files/rails/middleware/expert/stale_while_revalidate_cache_middleware.md +48 -0
- data/files/rails/middleware/middle/conditional_middleware_loading.md +18 -0
- data/files/rails/middleware/middle/custom_request_logger_middleware.md +30 -0
- data/files/rails/middleware/middle/middleware_insertion_points.md +18 -0
- data/files/rails/middleware/middle/testing_middleware_integration.md +23 -0
- data/files/rails/models/advanced/advisory_locks_for_concurrency_control.md +8 -0
- data/files/rails/models/advanced/bulk_upsert_with_upsert_all.md +14 -0
- data/files/rails/models/advanced/composite_primary_keys_usage.md +20 -0
- data/files/rails/models/advanced/custom_attribute_api_types.md +22 -0
- data/files/rails/models/advanced/db_check_constraints_for_validation.md +17 -0
- data/files/rails/models/advanced/model_concerns_for_modular_logic.md +35 -0
- data/files/rails/models/advanced/optimistic_locking_advanced.md +25 -0
- data/files/rails/models/advanced/parameterized_scopes_for_reusability.md +13 -0
- data/files/rails/models/advanced/postgres_enum_with_attribute_api.md +26 -0
- data/files/rails/models/advanced/using_arel_for_complex_queries.md +24 -0
- data/files/rails/models/beginner/model_associations.md +19 -0
- data/files/rails/models/beginner/model_callbacks.md +22 -0
- data/files/rails/models/beginner/model_constants.md +16 -0
- data/files/rails/models/beginner/model_custom_queries.md +18 -0
- data/files/rails/models/beginner/model_default_values.md +27 -0
- data/files/rails/models/beginner/model_delegation.md +14 -0
- data/files/rails/models/beginner/model_enums.md +15 -0
- data/files/rails/models/beginner/model_scopes.md +15 -0
- data/files/rails/models/beginner/model_testing.md +21 -0
- data/files/rails/models/beginner/model_validations.md +15 -0
- data/files/rails/models/expert/active_record_encryption.md +15 -0
- data/files/rails/models/expert/after_initialize_caching.md +20 -0
- data/files/rails/models/expert/arel_complex_subquery.md +20 -0
- data/files/rails/models/expert/composite_primary_keys.md +16 -0
- data/files/rails/models/expert/custom_dirty_tracking.md +19 -0
- data/files/rails/models/expert/custom_optimistic_locking.md +13 -0
- data/files/rails/models/expert/dynamic_scopes_metaprogramming.md +20 -0
- data/files/rails/models/expert/json_column_virtual_attributes.md +16 -0
- data/files/rails/models/expert/partitioned_table_models.md +22 -0
- data/files/rails/models/expert/sti_abstract_base.md +17 -0
- data/files/rails/models/middle/rails_models_association_counter_cache.md +17 -0
- data/files/rails/models/middle/rails_models_callbacks_best_practices.md +15 -0
- data/files/rails/models/middle/rails_models_custom_validations.md +16 -0
- data/files/rails/models/middle/rails_models_default_scope.md +12 -0
- data/files/rails/models/middle/rails_models_dirty_tracking.md +15 -0
- data/files/rails/models/middle/rails_models_enums.md +13 -0
- data/files/rails/models/middle/rails_models_polymorphic_association.md +25 -0
- data/files/rails/models/middle/rails_models_scopes.md +13 -0
- data/files/rails/models/middle/rails_models_serialization.md +13 -0
- data/files/rails/models/middle/rails_models_transactions.md +11 -0
- data/files/rails/partials/advanced/collection_partial_caching.md.md +15 -0
- data/files/rails/partials/advanced/dynamic_view_path_overrides.md.md +18 -0
- data/files/rails/partials/advanced/partial_with_layout.md.md +14 -0
- data/files/rails/partials/advanced/variant_specific_partials.md.md +25 -0
- data/files/rails/partials/beginner/basic_partial_rendering.md +9 -0
- data/files/rails/partials/beginner/partial_naming_conventions.md +16 -0
- data/files/rails/partials/beginner/passing_local_variables.md +9 -0
- data/files/rails/partials/beginner/rendering_collections.md +9 -0
- data/files/rails/partials/expert/dynamic_partial_resolution.md +15 -0
- data/files/rails/partials/expert/namespaced_partial_overrides.md +17 -0
- data/files/rails/partials/expert/partial_with_layout.md +17 -0
- data/files/rails/partials/expert/russian_doll_caching_partials.md +10 -0
- data/files/rails/partials/middle/caching_partials.md +11 -0
- data/files/rails/partials/middle/nested_partials.md +21 -0
- data/files/rails/partials/middle/passing_locals_to_partials.md +14 -0
- data/files/rails/partials/middle/rendering_collections.md +14 -0
- data/files/rails/performance/advanced/bulk_upserts_with_upsert_all.md +17 -0
- data/files/rails/performance/advanced/cpu_profiling_with_stackprof.md +22 -0
- data/files/rails/performance/advanced/custom_polymorphic_preloader.md +18 -0
- data/files/rails/performance/advanced/db_connection_pool_tuning.md +25 -0
- data/files/rails/performance/advanced/http_caching_with_etag.md +13 -0
- data/files/rails/performance/advanced/multiple_db_read_routing.md +21 -0
- data/files/rails/performance/advanced/preload_for_callbacks.md +11 -0
- data/files/rails/performance/advanced/ruby_gc_tunables.md +19 -0
- data/files/rails/performance/advanced/sql_query_commenting.md +13 -0
- data/files/rails/performance/advanced/streaming_large_responses.md +21 -0
- data/files/rails/performance/beginner/add_database_indexes.md +10 -0
- data/files/rails/performance/beginner/counter_cache_usage.md +15 -0
- data/files/rails/performance/beginner/eager_loading_includes.md +16 -0
- data/files/rails/performance/beginner/find_each_batch_processing.md +10 -0
- data/files/rails/performance/beginner/fragment_caching_views.md +9 -0
- data/files/rails/performance/beginner/pagination_with_kaminari.md +15 -0
- data/files/rails/performance/beginner/pluck_instead_of_select.md +10 -0
- data/files/rails/performance/beginner/precompile_assets_production.md +10 -0
- data/files/rails/performance/beginner/rack_mini_profiler_setup.md +13 -0
- data/files/rails/performance/beginner/russian_doll_caching.md +13 -0
- data/files/rails/performance/expert/active_support_instrumentation.md +25 -0
- data/files/rails/performance/expert/async_query_loading.md +17 -0
- data/files/rails/performance/expert/batch_preloading_scopes.md +19 -0
- data/files/rails/performance/expert/fast_jsonapi_serialization.md +20 -0
- data/files/rails/performance/expert/gc_jemalloc_tuning.md +25 -0
- data/files/rails/performance/expert/middleware_stack_refinement.md +22 -0
- data/files/rails/performance/expert/partial_expression_indexes.md +21 -0
- data/files/rails/performance/expert/puma_connection_pool_tuning.md +26 -0
- data/files/rails/performance/expert/streaming_live_responses.md +27 -0
- data/files/rails/performance/expert/two_level_caching.md +32 -0
- data/files/rails/performance/middle/batch_processing_with_find_each.md +10 -0
- data/files/rails/performance/middle/bulk_insertions_with_insert_all.md +10 -0
- data/files/rails/performance/middle/eager_loading_associations.md +10 -0
- data/files/rails/performance/middle/integrating_bullet_gem.md +17 -0
- data/files/rails/performance/middle/leveraging_rack_mini_profiler.md +13 -0
- data/files/rails/performance/middle/low_level_caching_with_cache_fetch.md +10 -0
- data/files/rails/performance/middle/optimizing_sql_indexes.md +12 -0
- data/files/rails/performance/middle/selecting_specific_columns.md +8 -0
- data/files/rails/performance/middle/using_counter_cache.md +13 -0
- data/files/rails/performance/middle/using_pluck_for_arrays.md +8 -0
- data/files/rails/routing/advanced/api_versioning.md +19 -0
- data/files/rails/routing/advanced/globbing_routes.md +20 -0
- data/files/rails/routing/advanced/route_constraints.md +27 -0
- data/files/rails/routing/advanced/routing_concerns.md +16 -0
- data/files/rails/routing/advanced/shallow_routing.md +21 -0
- data/files/rails/routing/beginner/inspect_routes.md +16 -0
- data/files/rails/routing/beginner/named_custom_routes.md +13 -0
- data/files/rails/routing/beginner/nested_resources.md +14 -0
- data/files/rails/routing/beginner/restful_resources.md +12 -0
- data/files/rails/routing/beginner/root_route.md +13 -0
- data/files/rails/routing/expert/advanced_route_globbing.md +22 -0
- data/files/rails/routing/expert/api_versioning_constraint.md +32 -0
- data/files/rails/routing/expert/dynamic_db_driven_routes.md +29 -0
- data/files/rails/routing/expert/dynamic_route_macros.md +31 -0
- data/files/rails/routing/expert/localized_routes_i18n.md +29 -0
- data/files/rails/routing/middle/member_collection_routes.md +19 -0
- data/files/rails/routing/middle/route_constraints_lambda.md +13 -0
- data/files/rails/routing/middle/route_globbing.md +12 -0
- data/files/rails/routing/middle/routing_concerns.md +16 -0
- data/files/rails/routing/middle/shallow_nesting.md +19 -0
- data/files/rails/secrets_and_credentials/advanced/credentials_rotation_workflow.md +22 -0
- data/files/rails/secrets_and_credentials/advanced/environment_specific_credentials.md +19 -0
- data/files/rails/secrets_and_credentials/advanced/nested_credentials_access.md +25 -0
- data/files/rails/secrets_and_credentials/beginner/accessing_credentials_in_code.md +17 -0
- data/files/rails/secrets_and_credentials/beginner/editing_credentials.md +18 -0
- data/files/rails/secrets_and_credentials/beginner/env_specific_credentials.md +16 -0
- data/files/rails/secrets_and_credentials/expert/aws_kms_credentials_provider.md +28 -0
- data/files/rails/secrets_and_credentials/expert/credentials_rotation_task.md +36 -0
- data/files/rails/secrets_and_credentials/expert/multi_layer_credentials.md +32 -0
- data/files/rails/secrets_and_credentials/middle/access_nested_credentials.md +18 -0
- data/files/rails/secrets_and_credentials/middle/manage_env_credentials.md +13 -0
- data/files/rails/secrets_and_credentials/middle/rotate_master_key.md +15 -0
- data/files/rails/security/advanced/advanced_active_record_relation_filters.md +14 -0
- data/files/rails/security/advanced/audit_logging_with_paper_trail.md +15 -0
- data/files/rails/security/advanced/blind_index_for_searchable_encrypted_data.md +18 -0
- data/files/rails/security/advanced/devise_two_factor_authentication.md +13 -0
- data/files/rails/security/advanced/dynamic_csp_with_secure_headers.md +25 -0
- data/files/rails/security/advanced/encrypted_credentials_multi_environment.md +21 -0
- data/files/rails/security/advanced/host_authorization_middleware.md +8 -0
- data/files/rails/security/advanced/hsts_strict_transport_security.md +14 -0
- data/files/rails/security/advanced/masked_csrf_tokens.md +12 -0
- data/files/rails/security/advanced/oauth_pkce_flow.md +17 -0
- data/files/rails/security/advanced/rack_attack_custom_throttle.md +18 -0
- data/files/rails/security/advanced/safe_raw_sql_with_binds.md +14 -0
- data/files/rails/security/advanced/sanitize_action_text_allowlists.md +9 -0
- data/files/rails/security/advanced/secure_active_storage_uploads.md +21 -0
- data/files/rails/security/advanced/secure_session_cookie_settings.md +12 -0
- data/files/rails/security/beginner/active_record_query_interface.md +12 -0
- data/files/rails/security/beginner/before_action_authenticate.md +14 -0
- data/files/rails/security/beginner/content_security_policy.md +11 -0
- data/files/rails/security/beginner/credentials_secret_key_base.md +15 -0
- data/files/rails/security/beginner/csrf_protection.md +15 -0
- data/files/rails/security/beginner/escape_html_output.md +7 -0
- data/files/rails/security/beginner/filter_sensitive_parameters.md +7 -0
- data/files/rails/security/beginner/force_ssl.md +9 -0
- data/files/rails/security/beginner/has_secure_password.md +17 -0
- data/files/rails/security/beginner/limit_file_uploads.md +21 -0
- data/files/rails/security/beginner/remove_debug_gems.md +13 -0
- data/files/rails/security/beginner/secure_headers.md +11 -0
- data/files/rails/security/beginner/secure_string_comparison.md +11 -0
- data/files/rails/security/beginner/strong_parameters.md +10 -0
- data/files/rails/security/beginner/validate_input_formats.md +9 -0
- data/files/rails/security/expert/active_record_encryption_rotation.md +21 -0
- data/files/rails/security/expert/activestorage_s3_secure_upload.md +25 -0
- data/files/rails/security/expert/arel_safe_dynamic_queries.md +16 -0
- data/files/rails/security/expert/ci_dependency_audit.md +23 -0
- data/files/rails/security/expert/cookie_secret_rotation.md +14 -0
- data/files/rails/security/expert/csp_violation_report_endpoint.md +24 -0
- data/files/rails/security/expert/csp_with_nonces.md +27 -0
- data/files/rails/security/expert/deep_parameter_sanitization.md +34 -0
- data/files/rails/security/expert/disable_xxe_parsing.md +14 -0
- data/files/rails/security/expert/hsts_preload.md +15 -0
- data/files/rails/security/expert/jwt_with_jwks_rotation.md +26 -0
- data/files/rails/security/expert/rack_attack_dynamic_throttles.md +23 -0
- data/files/rails/security/expert/safe_redirect_whitelist.md +26 -0
- data/files/rails/security/expert/strict_cors_dynamic_origins.md +17 -0
- data/files/rails/security/expert/timing_attack_secure_compare.md +14 -0
- data/files/rails/security/middle/active_record_encryption.md +14 -0
- data/files/rails/security/middle/bcrypt_passwords.md +17 -0
- data/files/rails/security/middle/content_security_policy.md +14 -0
- data/files/rails/security/middle/csrf_protection.md +16 -0
- data/files/rails/security/middle/enforce_ssl.md +9 -0
- data/files/rails/security/middle/file_upload_validation.md +20 -0
- data/files/rails/security/middle/output_escaping.md +12 -0
- data/files/rails/security/middle/parameter_filtering.md +8 -0
- data/files/rails/security/middle/rack_attack_rate_limiting.md +18 -0
- data/files/rails/security/middle/secure_cookies_flag.md +8 -0
- data/files/rails/security/middle/secure_redirects.md +15 -0
- data/files/rails/security/middle/security_headers.md +12 -0
- data/files/rails/security/middle/sql_injection_prevention.md +14 -0
- data/files/rails/security/middle/strong_parameters.md +23 -0
- data/files/rails/security/middle/x_frame_options.md +8 -0
- data/files/rails/sessions_and_cookies/advanced/json_hybrid_session_serializer.md +31 -0
- data/files/rails/sessions_and_cookies/advanced/rotate_cookie_encryption_keys.md +25 -0
- data/files/rails/sessions_and_cookies/advanced/sliding_session_expiration.md +40 -0
- data/files/rails/sessions_and_cookies/beginner/setting_basic_cookies_with_expiry.md +13 -0
- data/files/rails/sessions_and_cookies/beginner/using_sessions_to_store_user_data.md +21 -0
- data/files/rails/sessions_and_cookies/beginner/using_signed_cookies_for_tamper_protection.md +14 -0
- data/files/rails/sessions_and_cookies/expert/encrypted_cookie_segmentation.md +37 -0
- data/files/rails/sessions_and_cookies/expert/multi_domain_redis_sessions.md +34 -0
- data/files/rails/sessions_and_cookies/expert/session_secret_rotation.md +20 -0
- data/files/rails/sessions_and_cookies/middle/rolling_session_expiration.md +22 -0
- data/files/rails/sessions_and_cookies/middle/store_cart_in_session.md +21 -0
- data/files/rails/sessions_and_cookies/middle/use_signed_encrypted_cookies.md +16 -0
- data/files/rails/testing/advanced/dynamic_vcr_cassettes.md +22 -0
- data/files/rails/testing/advanced/parallel_test_execution.md +15 -0
- data/files/rails/testing/advanced/property_based_testing_with_rantly.md +18 -0
- data/files/rails/testing/advanced/rspec_profile_slow_specs.md +16 -0
- data/files/rails/testing/advanced/testprof_factorydoctor_integration.md +18 -0
- data/files/rails/testing/beginner/controller_request_spec.md +23 -0
- data/files/rails/testing/beginner/factorybot_basics.md +32 -0
- data/files/rails/testing/beginner/model_validation_spec.md +19 -0
- data/files/rails/testing/beginner/setup_rspec.md +18 -0
- data/files/rails/testing/beginner/using_fixtures.md +30 -0
- data/files/rails/testing/expert/custom_json_schema_matcher.md +35 -0
- data/files/rails/testing/expert/event_driven_testing.md +25 -0
- data/files/rails/testing/expert/mutant_integration.md +46 -0
- data/files/rails/testing/expert/parallel_capybara_tests.md +49 -0
- data/files/rails/testing/expert/test_prof_optimizations.md +46 -0
- data/files/rails/testing/middle/activejob_test_adapter.md +29 -0
- data/files/rails/testing/middle/dry_test_setup_let_subject.md +23 -0
- data/files/rails/testing/middle/file_uploads_fixture.md +18 -0
- data/files/rails/testing/middle/json_api_parsing.md +19 -0
- data/files/rails/testing/middle/reuse_tests_shared_examples.md +24 -0
- data/files/rails/versioning/advanced/dynamic_api_version_constraints.md +46 -0
- data/files/rails/versioning/advanced/paper_trail_advanced_usage.md +45 -0
- data/files/rails/versioning/advanced/serializer_version_selection.md +30 -0
- data/files/rails/versioning/beginner/bundle_update_rails.md +14 -0
- data/files/rails/versioning/beginner/check_current_rails_version.md +20 -0
- data/files/rails/versioning/beginner/lock_rails_version_gemfile.md +16 -0
- data/files/rails/versioning/expert/custom_header_versioning_constraint.md +37 -0
- data/files/rails/versioning/expert/deprecation_middleware_fallback.md +34 -0
- data/files/rails/versioning/expert/versioned_autoload_paths.md +20 -0
- data/files/rails/versioning/middle/versioning_header.md +18 -0
- data/files/rails/versioning/middle/versioning_namespaces.md +19 -0
- data/files/rails/versioning/middle/versioning_route_constraints.md +29 -0
- data/files/rails/views/advanced/capture-safeconcat.md +15 -0
- data/files/rails/views/advanced/cells-gem-usage.md +24 -0
- data/files/rails/views/advanced/custom-form-builder.md +28 -0
- data/files/rails/views/advanced/decorator-pattern-views.md +18 -0
- data/files/rails/views/advanced/dynamic-view-paths.md +17 -0
- data/files/rails/views/advanced/lazy-asset-loading.md +12 -0
- data/files/rails/views/advanced/named-content-slots.md +30 -0
- data/files/rails/views/advanced/nested-fragment-caching.md +21 -0
- data/files/rails/views/advanced/partial-caching-russian-doll.md +13 -0
- data/files/rails/views/advanced/stimulusjs-integration.md +24 -0
- data/files/rails/views/advanced/streaming-template-rendering.md +22 -0
- data/files/rails/views/advanced/viewcomponent-usage.md +27 -0
- data/files/rails/views/beginner/content_for_and_yield.md +19 -0
- data/files/rails/views/beginner/content_tag_usage.md +9 -0
- data/files/rails/views/beginner/escaping_html.md +11 -0
- data/files/rails/views/beginner/forms_form_with.md +19 -0
- data/files/rails/views/beginner/helpers_image_tag.md +8 -0
- data/files/rails/views/beginner/helpers_link_to.md +8 -0
- data/files/rails/views/beginner/layouts_application.md +29 -0
- data/files/rails/views/beginner/partials_basics.md +14 -0
- data/files/rails/views/beginner/partials_collection.md +11 -0
- data/files/rails/views/beginner/partials_with_locals.md +14 -0
- data/files/rails/views/beginner/view_conditionals.md +13 -0
- data/files/rails/views/beginner/view_loops_each.md +12 -0
- data/files/rails/views/expert/asset_pipeline_dynamic_paths.md +16 -0
- data/files/rails/views/expert/cells_gem_decoupling.md +19 -0
- data/files/rails/views/expert/custom_form_builder_dsl.md +24 -0
- data/files/rails/views/expert/i18n_view_precompilation.md +15 -0
- data/files/rails/views/expert/mustache_template_integration.md +20 -0
- data/files/rails/views/expert/nested_fragment_caching_strategies.md +18 -0
- data/files/rails/views/expert/sse_in_views.md +30 -0
- data/files/rails/views/expert/streaming_partials_live.md +26 -0
- data/files/rails/views/expert/template_handler_extension.md +18 -0
- data/files/rails/views/expert/view_rendering_profiler.md +22 -0
- data/files/rails/views/expert/viewcomponent_deep_dive.md +29 -0
- data/files/rails/views/middle/collection_rendering.md +14 -0
- data/files/rails/views/middle/content_for_usage.md +16 -0
- data/files/rails/views/middle/custom_helpers.md +13 -0
- data/files/rails/views/middle/fragment_caching.md +9 -0
- data/files/rails/views/middle/html_tag_helper.md +8 -0
- data/files/rails/views/middle/i18n_in_views.md +6 -0
- data/files/rails/views/middle/inline_form_errors.md +13 -0
- data/files/rails/views/middle/jbuilder_json_views.md +9 -0
- data/files/rails/views/middle/partial_with_locals.md +17 -0
- data/files/rails/views/middle/stimulus_data_attributes.md +9 -0
- data/files/rails/views/middle/turbo_frame_rendering.md +9 -0
- data/files/rails/views/middle/view_component_usage.md +17 -0
- data/files/rails/websockets/advanced/custom_connection_identifiers.md +27 -0
- data/files/rails/websockets/advanced/dynamic_channel_streaming.md +22 -0
- data/files/rails/websockets/advanced/granular_dom_updates.md +43 -0
- data/files/rails/websockets/advanced/reconnect_backoff.md +28 -0
- data/files/rails/websockets/advanced/redis_pubsub_scaling.md +18 -0
- data/files/rails/websockets/beginner/broadcast_from_controller.md +23 -0
- data/files/rails/websockets/beginner/generate_chat_channel.md +19 -0
- data/files/rails/websockets/beginner/model_broadcasting.md +10 -0
- data/files/rails/websockets/beginner/mount_actioncable_in_routes.md +11 -0
- data/files/rails/websockets/beginner/subscribe_in_javascript.md +19 -0
- data/files/rails/websockets/expert/backpressure_throttling.md +35 -0
- data/files/rails/websockets/expert/binary_streaming.md +33 -0
- data/files/rails/websockets/expert/jwt_connection_authentication.md +21 -0
- data/files/rails/websockets/expert/prometheus_monitoring.md +24 -0
- data/files/rails/websockets/expert/redis_sentinel_scaling.md +29 -0
- data/files/rails/websockets/middle/broadcast_to_user.md +23 -0
- data/files/rails/websockets/middle/connection_authorization.md +26 -0
- data/files/rails/websockets/middle/redis_adapter_optimization.md +14 -0
- data/files/rails/websockets/middle/setup_channels_streams.md +26 -0
- data/files/rails/websockets/middle/turbo_streams_integration.md +18 -0
- data/files/ruby/arrays/advanced/balanced_chunk_split.md +16 -0
- data/files/ruby/arrays/advanced/combinatorics_with_arrays.md +13 -0
- data/files/ruby/arrays/advanced/custom_uniq.md +13 -0
- data/files/ruby/arrays/advanced/grouping_with_each_with_object.md +12 -0
- data/files/ruby/arrays/advanced/lazy_enumerators.md +10 -0
- data/files/ruby/arrays/advanced/pattern_matching_arrays.md +15 -0
- data/files/ruby/arrays/advanced/pipeline_with_tap_then.md +12 -0
- data/files/ruby/arrays/advanced/selective_flatten.md +14 -0
- data/files/ruby/arrays/advanced/slice_when_chunking.md +9 -0
- data/files/ruby/arrays/advanced/transpose_jagged_arrays.md +11 -0
- data/files/ruby/arrays/beginner/accessing_elements.md +17 -0
- data/files/ruby/arrays/beginner/adding_elements.md +13 -0
- data/files/ruby/arrays/beginner/array_creation.md +13 -0
- data/files/ruby/arrays/beginner/cleaning_arrays.md +8 -0
- data/files/ruby/arrays/beginner/combining_arrays.md +13 -0
- data/files/ruby/arrays/beginner/destructuring_assignment.md +11 -0
- data/files/ruby/arrays/beginner/iterating_each.md +14 -0
- data/files/ruby/arrays/beginner/map_transform.md +10 -0
- data/files/ruby/arrays/beginner/removing_elements.md +15 -0
- data/files/ruby/arrays/beginner/select_filter.md +9 -0
- data/files/ruby/arrays/expert/binary_packing_with_pack_unpack.md.md +18 -0
- data/files/ruby/arrays/expert/bitset_array_representation.md.md +26 -0
- data/files/ruby/arrays/expert/custom_enumerator_chaining.md.md +24 -0
- data/files/ruby/arrays/expert/deep_freeze_immutable_arrays.md.md +16 -0
- data/files/ruby/arrays/expert/lazy_infinite_enumerator.md.md +17 -0
- data/files/ruby/arrays/expert/memoized_inject.md.md +17 -0
- data/files/ruby/arrays/expert/metaprogramming_dynamic_array_methods.md.md +19 -0
- data/files/ruby/arrays/expert/n_dimensional_array_generator.md.md +15 -0
- data/files/ruby/arrays/expert/parallel_map_with_threads.md.md +34 -0
- data/files/ruby/arrays/expert/refinements_for_array_extensions.md.md +19 -0
- data/files/ruby/arrays/middle/bsearch_usage.md +9 -0
- data/files/ruby/arrays/middle/destructuring_assignment.md +12 -0
- data/files/ruby/arrays/middle/dig_nested_arrays.md +10 -0
- data/files/ruby/arrays/middle/lazy_enumerators.md +11 -0
- data/files/ruby/arrays/middle/map_compact_chain.md +10 -0
- data/files/ruby/arrays/middle/partition_array.md +8 -0
- data/files/ruby/arrays/middle/product_combinations.md +9 -0
- data/files/ruby/arrays/middle/slice_range_negative.md +12 -0
- data/files/ruby/arrays/middle/sum_with_block.md +8 -0
- data/files/ruby/arrays/middle/transpose_matrix.md +12 -0
- data/files/ruby/benchmarking/advanced/compare_algorithms_with_benchmark_ips.md +13 -0
- data/files/ruby/benchmarking/advanced/customize_benchmark_suite_with_metrics.md +19 -0
- data/files/ruby/benchmarking/advanced/disable_gc_for_stable_benchmarks.md +15 -0
- data/files/ruby/benchmarking/advanced/profile_memory_allocations.md +13 -0
- data/files/ruby/benchmarking/advanced/use_warmup_for_consistent_results.md +12 -0
- data/files/ruby/benchmarking/beginner/benchmark_bm.md +16 -0
- data/files/ruby/benchmarking/beginner/benchmark_irb_console.md +10 -0
- data/files/ruby/benchmarking/beginner/benchmark_measure.md +14 -0
- data/files/ruby/benchmarking/beginner/benchmark_realtime.md +13 -0
- data/files/ruby/benchmarking/beginner/benchmark_tms_attributes.md +15 -0
- data/files/ruby/benchmarking/expert/automated_benchmark_reports.md +24 -0
- data/files/ruby/benchmarking/expert/benchmark_ips_config.md +23 -0
- data/files/ruby/benchmarking/expert/c_extension_performance_comparison.md +21 -0
- data/files/ruby/benchmarking/expert/custom_harness_with_warmup.md +38 -0
- data/files/ruby/benchmarking/expert/memory_and_gc_profiling.md +17 -0
- data/files/ruby/benchmarking/middle/benchmark_bm.md +14 -0
- data/files/ruby/benchmarking/middle/benchmark_bmbm.md +12 -0
- data/files/ruby/benchmarking/middle/benchmark_realtime.md +12 -0
- data/files/ruby/benchmarking/middle/benchmark_results_formatting.md +10 -0
- data/files/ruby/benchmarking/middle/benchmark_string_vs_interpolation.md +13 -0
- data/files/ruby/blocks/advanced/benchmark_blocks.md +13 -0
- data/files/ruby/blocks/advanced/destructuring_block_params.md +13 -0
- data/files/ruby/blocks/advanced/fibers_and_blocks.md +21 -0
- data/files/ruby/blocks/advanced/internal_dsl_with_instance_eval.md +34 -0
- data/files/ruby/blocks/advanced/lazy_infinite_streams.md +20 -0
- data/files/ruby/blocks/advanced/method_wrapper_with_blocks.md +28 -0
- data/files/ruby/blocks/advanced/proc_currying_and_composition.md +16 -0
- data/files/ruby/blocks/advanced/retry_with_backoff.md +22 -0
- data/files/ruby/blocks/advanced/trampoline_optimization.md +23 -0
- data/files/ruby/blocks/beginner/block_parameters.md +13 -0
- data/files/ruby/blocks/beginner/block_to_proc_conversion.md +15 -0
- data/files/ruby/blocks/beginner/custom_method_yield.md +18 -0
- data/files/ruby/blocks/beginner/file_resource_management.md +9 -0
- data/files/ruby/blocks/beginner/filtering_select.md +10 -0
- data/files/ruby/blocks/beginner/guarding_with_block_given.md +20 -0
- data/files/ruby/blocks/beginner/hash_each_pair.md +13 -0
- data/files/ruby/blocks/beginner/iterating_each.md +13 -0
- data/files/ruby/blocks/beginner/repeating_times.md +14 -0
- data/files/ruby/blocks/beginner/transforming_map.md +10 -0
- data/files/ruby/blocks/expert/advanced_lazy_enumerator_chaining.md +16 -0
- data/files/ruby/blocks/expert/block_instrumentation_with_prepend.md +26 -0
- data/files/ruby/blocks/expert/capture_and_rebind_block_context.md +19 -0
- data/files/ruby/blocks/expert/context_switch_with_instance_exec.md +21 -0
- data/files/ruby/blocks/expert/curry_and_compose_procs.md +21 -0
- data/files/ruby/blocks/expert/dynamic_define_method_with_block.md +21 -0
- data/files/ruby/blocks/expert/fiber_based_block_control_flow.md +15 -0
- data/files/ruby/blocks/expert/internal_dsl_with_instance_eval.md +34 -0
- data/files/ruby/blocks/expert/partial_application_with_proc.md +12 -0
- data/files/ruby/blocks/expert/trampoline_pattern_with_procs.md +20 -0
- data/files/ruby/blocks/middle/block_to_proc_conversion.md.md +16 -0
- data/files/ruby/blocks/middle/chainable_methods_with_blocks.md.md +31 -0
- data/files/ruby/blocks/middle/check_block_presence.md.md +25 -0
- data/files/ruby/blocks/middle/control_flow_within_blocks.md.md +22 -0
- data/files/ruby/blocks/middle/custom_each_iterator.md.md +27 -0
- data/files/ruby/blocks/middle/default_block_fallback.md.md +16 -0
- data/files/ruby/blocks/middle/dsl_with_instance_eval.md.md +32 -0
- data/files/ruby/blocks/middle/filter_and_map_collections.md.md +16 -0
- data/files/ruby/blocks/middle/multiple_blocks.md.md +22 -0
- data/files/ruby/blocks/middle/yield_with_arguments.md.md +19 -0
- data/files/ruby/classes_and_modules/advanced/alias_chain_prepend.md +24 -0
- data/files/ruby/classes_and_modules/advanced/autoload_modules.md +16 -0
- data/files/ruby/classes_and_modules/advanced/concerns_namespacing.md +28 -0
- data/files/ruby/classes_and_modules/advanced/const_missing_autoload.md +19 -0
- data/files/ruby/classes_and_modules/advanced/dynamic_define_method.md +19 -0
- data/files/ruby/classes_and_modules/advanced/dynamic_delegators.md +31 -0
- data/files/ruby/classes_and_modules/advanced/eigenclass_methods.md +23 -0
- data/files/ruby/classes_and_modules/advanced/extend_class_methods_on_include.md +36 -0
- data/files/ruby/classes_and_modules/advanced/forwardable_mixin.md +29 -0
- data/files/ruby/classes_and_modules/advanced/freeze_module.md +20 -0
- data/files/ruby/classes_and_modules/advanced/inherited_hook_module.md +26 -0
- data/files/ruby/classes_and_modules/advanced/method_missing_proxy.md +32 -0
- data/files/ruby/classes_and_modules/advanced/prepend_vs_include.md +31 -0
- data/files/ruby/classes_and_modules/advanced/self_included_hook.md +28 -0
- data/files/ruby/classes_and_modules/advanced/using_refinements.md +27 -0
- data/files/ruby/classes_and_modules/beginner/attr_accessors.md +15 -0
- data/files/ruby/classes_and_modules/beginner/basic_class_definition.md +9 -0
- data/files/ruby/classes_and_modules/beginner/basic_module_definition.md +11 -0
- data/files/ruby/classes_and_modules/beginner/class_constants.md +12 -0
- data/files/ruby/classes_and_modules/beginner/class_methods.md +13 -0
- data/files/ruby/classes_and_modules/beginner/extend_for_class_methods.md +17 -0
- data/files/ruby/classes_and_modules/beginner/include_mixins.md +17 -0
- data/files/ruby/classes_and_modules/beginner/inheritance_basics.md +19 -0
- data/files/ruby/classes_and_modules/beginner/initialize_method.md +14 -0
- data/files/ruby/classes_and_modules/beginner/inspect_ancestors.md +12 -0
- data/files/ruby/classes_and_modules/beginner/instance_variables.md +15 -0
- data/files/ruby/classes_and_modules/beginner/instantiate_objects.md +8 -0
- data/files/ruby/classes_and_modules/beginner/method_overriding.md +19 -0
- data/files/ruby/classes_and_modules/beginner/module_namespacing.md +15 -0
- data/files/ruby/classes_and_modules/beginner/visibility_control.md +20 -0
- data/files/ruby/classes_and_modules/expert/anonymous_module_isolation.md +18 -0
- data/files/ruby/classes_and_modules/expert/autoload_lazy_loading.md +15 -0
- data/files/ruby/classes_and_modules/expert/concern_pattern_composition.md +23 -0
- data/files/ruby/classes_and_modules/expert/const_missing_dynamic_resolution.md +17 -0
- data/files/ruby/classes_and_modules/expert/dynamic_method_generation.md +19 -0
- data/files/ruby/classes_and_modules/expert/forwardable_delegation.md +21 -0
- data/files/ruby/classes_and_modules/expert/included_class_macros.md +25 -0
- data/files/ruby/classes_and_modules/expert/internal_dsl_included_hook.md +30 -0
- data/files/ruby/classes_and_modules/expert/module_prepend_over_mixin.md +19 -0
- data/files/ruby/classes_and_modules/expert/namespaces_with_module_nesting.md +17 -0
- data/files/ruby/classes_and_modules/expert/prepend_method_wrappers.md +20 -0
- data/files/ruby/classes_and_modules/expert/proxy_method_missing.md +24 -0
- data/files/ruby/classes_and_modules/expert/refinements_scoped_monkey_patches.md +22 -0
- data/files/ruby/classes_and_modules/expert/singleton_class_metaprogramming.md +15 -0
- data/files/ruby/classes_and_modules/expert/tracepoint_execution_tracing.md +16 -0
- data/files/ruby/classes_and_modules/middle/class_eval_vs_module_eval.md +17 -0
- data/files/ruby/classes_and_modules/middle/concern_pattern.md +22 -0
- data/files/ruby/classes_and_modules/middle/const_missing_autoload.md +16 -0
- data/files/ruby/classes_and_modules/middle/dynamic_class_definition.md +16 -0
- data/files/ruby/classes_and_modules/middle/include_vs_extend.md +19 -0
- data/files/ruby/classes_and_modules/middle/mixins_with_callbacks.md +36 -0
- data/files/ruby/classes_and_modules/middle/module_alias_method.md +23 -0
- data/files/ruby/classes_and_modules/middle/module_function_usage.md +26 -0
- data/files/ruby/classes_and_modules/middle/module_nesting_lookup.md +24 -0
- data/files/ruby/classes_and_modules/middle/module_prepend.md +24 -0
- data/files/ruby/classes_and_modules/middle/namespacing_with_modules.md +19 -0
- data/files/ruby/classes_and_modules/middle/refinements_example.md +24 -0
- data/files/ruby/classes_and_modules/middle/self_included_hook.md +27 -0
- data/files/ruby/classes_and_modules/middle/singleton_class_methods.md +16 -0
- data/files/ruby/compression/advanced/creating_tar_gz_archives.md +26 -0
- data/files/ruby/compression/advanced/streaming_large_file_compression.md +21 -0
- data/files/ruby/compression/beginner/compress_with_gzip.md +18 -0
- data/files/ruby/compression/beginner/create_zip_archive.md +16 -0
- data/files/ruby/compression/expert/parallel_zstd_compression_with_ffi.md +77 -0
- data/files/ruby/compression/expert/streaming_chunked_gzip_compression.md +31 -0
- data/files/ruby/compression/middle/file_compression_gzip.md +27 -0
- data/files/ruby/compression/middle/string_compression_deflate.md +17 -0
- data/files/ruby/concurrency_and_mutexes/advanced/condition_variable_coordination.md.md +39 -0
- data/files/ruby/concurrency_and_mutexes/advanced/deadlock_prevention.md.md +48 -0
- data/files/ruby/concurrency_and_mutexes/advanced/double_checked_locking.md.md +33 -0
- data/files/ruby/concurrency_and_mutexes/advanced/monitor_reentrant_mutex.md.md +41 -0
- data/files/ruby/concurrency_and_mutexes/beginner/initialize_mutex_per_resource.md +34 -0
- data/files/ruby/concurrency_and_mutexes/beginner/manual_lock_unlock.md +22 -0
- data/files/ruby/concurrency_and_mutexes/beginner/shared_counter_with_mutex.md +23 -0
- data/files/ruby/concurrency_and_mutexes/beginner/waiting_for_threads_join.md +20 -0
- data/files/ruby/concurrency_and_mutexes/expert/fair_fifo_mutex.md +36 -0
- data/files/ruby/concurrency_and_mutexes/expert/hybrid_spinlock.md +53 -0
- data/files/ruby/concurrency_and_mutexes/expert/lock_striping_mutex_shard.md +34 -0
- data/files/ruby/concurrency_and_mutexes/expert/reentrant_mutex_monitor.md +62 -0
- data/files/ruby/concurrency_and_mutexes/middle/condition_variable_usage.md +37 -0
- data/files/ruby/concurrency_and_mutexes/middle/double_checked_locking.md +29 -0
- data/files/ruby/concurrency_and_mutexes/middle/mutex_synchronize.md +31 -0
- data/files/ruby/concurrency_and_mutexes/middle/mutex_try_lock.md +24 -0
- data/files/ruby/constants/advanced/autoload_with_const_missing.md +22 -0
- data/files/ruby/constants/advanced/dynamic_constants_via_const_set.md +21 -0
- data/files/ruby/constants/advanced/reload_constants_remove_const.md +17 -0
- data/files/ruby/constants/beginner/defining_and_accessing_constants.md +25 -0
- data/files/ruby/constants/beginner/freezing_constants_to_prevent_mutation.md +26 -0
- data/files/ruby/constants/beginner/naming_conventions_for_constants.md +20 -0
- data/files/ruby/constants/expert/custom_const_missing_autoload.md +22 -0
- data/files/ruby/constants/expert/deep_freeze_constants.md +29 -0
- data/files/ruby/constants/expert/dynamic_constant_definition.md +28 -0
- data/files/ruby/constants/middle/config_constants.md +22 -0
- data/files/ruby/constants/middle/freeze_constants.md +21 -0
- data/files/ruby/constants/middle/magic_values_constants.md +34 -0
- data/files/ruby/creating_gems/advanced/cli_plugin_architecture.md +40 -0
- data/files/ruby/creating_gems/advanced/native_extension_setup.md +34 -0
- data/files/ruby/creating_gems/advanced/release_automation.md +37 -0
- data/files/ruby/creating_gems/beginner/build_and_install_gem.md +18 -0
- data/files/ruby/creating_gems/beginner/configure_gemspec.md +12 -0
- data/files/ruby/creating_gems/beginner/initialize_gem_skeleton.md +8 -0
- data/files/ruby/creating_gems/expert/automated_release_pipeline.md +31 -0
- data/files/ruby/creating_gems/expert/custom_gem_scaffold.md +22 -0
- data/files/ruby/creating_gems/expert/native_extension_multi_platform.md +26 -0
- data/files/ruby/creating_gems/middle/embed_usage_examples.md.md +28 -0
- data/files/ruby/creating_gems/middle/initialize_gem_with_bundler.md.md +15 -0
- data/files/ruby/creating_gems/middle/manage_version_metadata.md.md +24 -0
- data/files/ruby/csv/advanced/custom_converters_casting.md +23 -0
- data/files/ruby/csv/advanced/lazy_loading_huge_csv.md +17 -0
- data/files/ruby/csv/advanced/parallel_csv_processing.md +19 -0
- data/files/ruby/csv/advanced/streaming_csv_generation.md +19 -0
- data/files/ruby/csv/beginner/csv_foreach_basics.md +11 -0
- data/files/ruby/csv/beginner/csv_parse_string.md +14 -0
- data/files/ruby/csv/beginner/csv_with_headers.md +11 -0
- data/files/ruby/csv/beginner/csv_write_file.md +13 -0
- data/files/ruby/csv/expert/csv_lazy_streaming.md +15 -0
- data/files/ruby/csv/expert/csv_parallel_processing.md +21 -0
- data/files/ruby/csv/expert/csv_random_access_indexing.md +21 -0
- data/files/ruby/csv/expert/csv_schema_structs.md +21 -0
- data/files/ruby/csv/middle/custom_csv_writing.md +15 -0
- data/files/ruby/csv/middle/efficient_streaming.md +12 -0
- data/files/ruby/csv/middle/headers_and_converters.md +17 -0
- data/files/ruby/csv/middle/resilient_parsing.md +18 -0
- data/files/ruby/data_types/advanced/bitwise_operations.md +26 -0
- data/files/ruby/data_types/advanced/deep_default_hash.md +16 -0
- data/files/ruby/data_types/advanced/lazy_enumerators.md +18 -0
- data/files/ruby/data_types/advanced/pattern_matching.md +22 -0
- data/files/ruby/data_types/advanced/scoped_refinements.md +31 -0
- data/files/ruby/data_types/beginner/ruby_arrays.md +16 -0
- data/files/ruby/data_types/beginner/ruby_hashes.md +16 -0
- data/files/ruby/data_types/beginner/ruby_numbers.md +14 -0
- data/files/ruby/data_types/beginner/ruby_strings.md +11 -0
- data/files/ruby/data_types/beginner/ruby_symbols.md +15 -0
- data/files/ruby/data_types/expert/custom_numeric_coercion.md +36 -0
- data/files/ruby/data_types/expert/deep_immutable_structures.md +22 -0
- data/files/ruby/data_types/expert/high_precision_arithmetic.md +18 -0
- data/files/ruby/data_types/expert/lazy_infinite_sequences.md +24 -0
- data/files/ruby/data_types/expert/pattern_matching_hashes.md +22 -0
- data/files/ruby/data_types/middle/array_destructuring_splat.md +22 -0
- data/files/ruby/data_types/middle/frozen_string_literals.md +20 -0
- data/files/ruby/data_types/middle/hash_default_proc.md +19 -0
- data/files/ruby/data_types/middle/optimize_hash_keys.md +17 -0
- data/files/ruby/data_types/middle/range_iteration_step.md +18 -0
- data/files/ruby/date_time/advanced/business_days_enumeration.md +18 -0
- data/files/ruby/date_time/advanced/custom_date_parsing.md +16 -0
- data/files/ruby/date_time/advanced/high_precision_arithmetic.md +15 -0
- data/files/ruby/date_time/advanced/iso8601_duration_handling.md +20 -0
- data/files/ruby/date_time/advanced/timezone_conversion.md +17 -0
- data/files/ruby/date_time/beginner/date_arithmetic.md +15 -0
- data/files/ruby/date_time/beginner/formatting_dates_times.md +18 -0
- data/files/ruby/date_time/beginner/getting_current_date_time.md +15 -0
- data/files/ruby/date_time/beginner/handling_time_zones.md +17 -0
- data/files/ruby/date_time/beginner/parsing_date_strings.md +15 -0
- data/files/ruby/date_time/expert/astronomical_julian_day_conversion.md +18 -0
- data/files/ruby/date_time/expert/business_calendar_refinement.md +31 -0
- data/files/ruby/date_time/expert/high_res_monotonic_timing.md +16 -0
- data/files/ruby/date_time/expert/leap_second_wrapper.md +36 -0
- data/files/ruby/date_time/expert/tzinfo_caching.md +23 -0
- data/files/ruby/date_time/middle/business_day_calculation.md +20 -0
- data/files/ruby/date_time/middle/calculate_durations.md +16 -0
- data/files/ruby/date_time/middle/format_with_strftime.md +13 -0
- data/files/ruby/date_time/middle/handle_time_zones.md +17 -0
- data/files/ruby/date_time/middle/parse_custom_strptime.md +15 -0
- data/files/ruby/define_method/advanced/custom_visibility_hooks.md +39 -0
- data/files/ruby/define_method/advanced/dsl_scope_capture.md +28 -0
- data/files/ruby/define_method/advanced/dynamic_method_proxy.md +24 -0
- data/files/ruby/define_method/advanced/memoization_via_define_method.md +37 -0
- data/files/ruby/define_method/beginner/attribute_getter_setter.md +26 -0
- data/files/ruby/define_method/beginner/capture_external_variable.md +21 -0
- data/files/ruby/define_method/beginner/dynamic_method_creation.md +17 -0
- data/files/ruby/define_method/beginner/method_with_arguments.md +23 -0
- data/files/ruby/define_method/expert/dynamic_api_client_generator.md +25 -0
- data/files/ruby/define_method/expert/fluent_dsl_builder.md +30 -0
- data/files/ruby/define_method/expert/hot_swappable_methods.md +18 -0
- data/files/ruby/define_method/expert/preserve_method_metadata.md +22 -0
- data/files/ruby/define_method/middle/dynamic_accessors.md +22 -0
- data/files/ruby/define_method/middle/dynamic_delegation.md +24 -0
- data/files/ruby/define_method/middle/method_wrapper_logging.md +29 -0
- data/files/ruby/define_method/middle/validation_helpers.md +43 -0
- data/files/ruby/directory_management/advanced/atomic_directory_swap.md +32 -0
- data/files/ruby/directory_management/advanced/recursive_traversal_find.md +29 -0
- data/files/ruby/directory_management/beginner/dir_list_and_filter.md +23 -0
- data/files/ruby/directory_management/beginner/recursive_directory_creation.md +17 -0
- data/files/ruby/directory_management/expert/cross_platform_realtime_dir_watcher.md +65 -0
- data/files/ruby/directory_management/expert/parallel_lazy_directory_traversal.md +37 -0
- data/files/ruby/directory_management/middle/pattern_based_traversal_with_pathname.md +24 -0
- data/files/ruby/directory_management/middle/safe_directory_creation_with_fileutils.md +19 -0
- data/files/ruby/enumerables/advanced/chunk_while_dynamic_grouping.md +9 -0
- data/files/ruby/enumerables/advanced/each_with_object_stateful_accumulation.md +14 -0
- data/files/ruby/enumerables/advanced/external_iterators_enum_for.md +15 -0
- data/files/ruby/enumerables/advanced/lazy_enumerators_infinite_streams.md +16 -0
- data/files/ruby/enumerables/advanced/slice_when_custom_breaks.md +9 -0
- data/files/ruby/enumerables/advanced/zip_lazy_pattern_matching.md +19 -0
- data/files/ruby/enumerables/beginner/accumulate_with_inject.md +16 -0
- data/files/ruby/enumerables/beginner/exclude_with_reject.md +13 -0
- data/files/ruby/enumerables/beginner/filter_with_select.md +15 -0
- data/files/ruby/enumerables/beginner/find_with_detect.md +15 -0
- data/files/ruby/enumerables/beginner/iterate_with_each.md +12 -0
- data/files/ruby/enumerables/beginner/transform_with_map.md +13 -0
- data/files/ruby/enumerables/expert/custom_enumerable_deep_traversal.md +27 -0
- data/files/ruby/enumerables/expert/dynamic_slice_when.md +14 -0
- data/files/ruby/enumerables/expert/fiber_based_enumerator.md +17 -0
- data/files/ruby/enumerables/expert/infinite_sequence_produce.md +11 -0
- data/files/ruby/enumerables/expert/lazy_pipeline_scaling.md +15 -0
- data/files/ruby/enumerables/expert/merge_infinite_streams.md +21 -0
- data/files/ruby/enumerables/middle/each_with_object_hash_building.md +11 -0
- data/files/ruby/enumerables/middle/flat_map_group_by_transform.md +16 -0
- data/files/ruby/enumerables/middle/lazy_chaining_enumerables.md +14 -0
- data/files/ruby/enumerables/middle/slice_before_chunk_while.md +14 -0
- data/files/ruby/enumerables/middle/sum_with_block.md +12 -0
- data/files/ruby/enumerables/middle/tally_element_counts.md +9 -0
- data/files/ruby/exceptions/advanced/custom_exception_hierarchy.md +19 -0
- data/files/ruby/exceptions/advanced/exception_cause_chaining.md +18 -0
- data/files/ruby/exceptions/advanced/exception_notification_integration.md +19 -0
- data/files/ruby/exceptions/advanced/retry_with_exponential_backoff.md +18 -0
- data/files/ruby/exceptions/beginner/ensure_usage.md +11 -0
- data/files/ruby/exceptions/beginner/raising_exceptions.md +29 -0
- data/files/ruby/exceptions/beginner/rescue_basic.md +10 -0
- data/files/ruby/exceptions/beginner/rescue_specific.md +12 -0
- data/files/ruby/exceptions/expert/custom_error_with_metadata.md +32 -0
- data/files/ruby/exceptions/expert/exception_wrapping_with_cause.md +24 -0
- data/files/ruby/exceptions/expert/exponential_backoff_retry_logic.md +29 -0
- data/files/ruby/exceptions/expert/tracepoint_exception_monitoring.md +21 -0
- data/files/ruby/exceptions/middle/ensure_for_cleanup.md +17 -0
- data/files/ruby/exceptions/middle/inline_rescue_in_method.md +17 -0
- data/files/ruby/exceptions/middle/rescue_specific_exceptions.md +16 -0
- data/files/ruby/exceptions/middle/retry_transient_errors.md +20 -0
- data/files/ruby/fibers/advanced/fiber_async_io.md +33 -0
- data/files/ruby/fibers/advanced/fiber_data_pipeline.md +25 -0
- data/files/ruby/fibers/advanced/fiber_enumerator_generator.md +20 -0
- data/files/ruby/fibers/advanced/fiber_error_supervision.md +32 -0
- data/files/ruby/fibers/beginner/creating_and_resuming.md +17 -0
- data/files/ruby/fibers/beginner/passing_values_between_fiber.md +14 -0
- data/files/ruby/fibers/beginner/simple_enumerator_with_fiber.md +15 -0
- data/files/ruby/fibers/beginner/what_is_a_fiber.md +16 -0
- data/files/ruby/fibers/expert/async_gem_integration.md +22 -0
- data/files/ruby/fibers/expert/async_io_multiplexing.md +43 -0
- data/files/ruby/fibers/expert/cooperative_fiber_scheduler.md +31 -0
- data/files/ruby/fibers/expert/fiber_lazy_enumerator.md +24 -0
- data/files/ruby/fibers/middle/fiber_arguments.md +19 -0
- data/files/ruby/fibers/middle/fiber_basic_usage.md +15 -0
- data/files/ruby/fibers/middle/fiber_cooperative_scheduler.md +31 -0
- data/files/ruby/fibers/middle/fiber_to_enumerator.md +19 -0
- data/files/ruby/file_io/advanced/atomic_file_write.md +23 -0
- data/files/ruby/file_io/advanced/chunked_buffer_reading.md +15 -0
- data/files/ruby/file_io/advanced/encoding_transcoding.md +14 -0
- data/files/ruby/file_io/advanced/fcntl_flags.md +19 -0
- data/files/ruby/file_io/advanced/memory_mapped_file.md +17 -0
- data/files/ruby/file_io/advanced/nonblocking_io_select.md +22 -0
- data/files/ruby/file_io/advanced/tail_f_implementation.md +19 -0
- data/files/ruby/file_io/advanced/zero_copy_io.md +13 -0
- data/files/ruby/file_io/beginner/append_to_file.md +9 -0
- data/files/ruby/file_io/beginner/check_file_existence.md +11 -0
- data/files/ruby/file_io/beginner/io_read_write_shortcuts.md +8 -0
- data/files/ruby/file_io/beginner/iterate_lines_foreach.md +9 -0
- data/files/ruby/file_io/beginner/join_file_paths.md +10 -0
- data/files/ruby/file_io/beginner/read_with_block.md +10 -0
- data/files/ruby/file_io/beginner/readlines_to_array.md +10 -0
- data/files/ruby/file_io/beginner/write_with_block.md +10 -0
- data/files/ruby/file_io/expert/async_io_eventmachine.md +22 -0
- data/files/ruby/file_io/expert/atomic_file_write.md +24 -0
- data/files/ruby/file_io/expert/descriptor_manipulation.md +25 -0
- data/files/ruby/file_io/expert/memory_map_file.md +20 -0
- data/files/ruby/file_io/expert/nonblocking_file_io.md +23 -0
- data/files/ruby/file_io/expert/sparse_file_manipulation.md +22 -0
- data/files/ruby/file_io/expert/streaming_encryption.md +25 -0
- data/files/ruby/file_io/expert/zero_copy_sendfile.md +17 -0
- data/files/ruby/file_io/middle/chunked_read.md.md +11 -0
- data/files/ruby/file_io/middle/efficient_file_copy.md.md +8 -0
- data/files/ruby/file_io/middle/encoding_handling.md.md +10 -0
- data/files/ruby/file_io/middle/file_locking.md.md +10 -0
- data/files/ruby/file_io/middle/file_open_block.md.md +10 -0
- data/files/ruby/file_io/middle/line_by_line_processing.md.md +10 -0
- data/files/ruby/file_io/middle/tempfile_usage.md.md +14 -0
- data/files/ruby/file_io/middle/write_append_modes.md.md +14 -0
- data/files/ruby/hashes/advanced/auto_vivification.md +12 -0
- data/files/ruby/hashes/advanced/compact_and_filter_map.md +17 -0
- data/files/ruby/hashes/advanced/fetch_with_block_defaults.md +20 -0
- data/files/ruby/hashes/advanced/grouping_with_each_with_object.md +22 -0
- data/files/ruby/hashes/advanced/hash_pattern_matching.md +19 -0
- data/files/ruby/hashes/advanced/hash_to_proc.md +19 -0
- data/files/ruby/hashes/advanced/indifferent_access.md +13 -0
- data/files/ruby/hashes/advanced/nested_transform_keys.md +21 -0
- data/files/ruby/hashes/advanced/recursive_deep_merge.md +29 -0
- data/files/ruby/hashes/advanced/slice_and_except.md +13 -0
- data/files/ruby/hashes/beginner/accessing_hash_values.md +13 -0
- data/files/ruby/hashes/beginner/array_to_hash_conversion.md +12 -0
- data/files/ruby/hashes/beginner/checking_key_existence.md +12 -0
- data/files/ruby/hashes/beginner/creating_hashes.md +12 -0
- data/files/ruby/hashes/beginner/hash_default_values.md +9 -0
- data/files/ruby/hashes/beginner/iterating_over_hash.md +17 -0
- data/files/ruby/hashes/beginner/merging_hashes.md +11 -0
- data/files/ruby/hashes/beginner/selecting_hash_entries.md +8 -0
- data/files/ruby/hashes/beginner/symbol_vs_string_keys.md +11 -0
- data/files/ruby/hashes/beginner/working_with_nested_hashes.md +16 -0
- data/files/ruby/hashes/expert/advanced_keyword_arg_forwarding.md +22 -0
- data/files/ruby/hashes/expert/auto_vivification_nested_hashes.md +15 -0
- data/files/ruby/hashes/expert/chaining_transform_keys_values.md +22 -0
- data/files/ruby/hashes/expert/custom_deep_merge_with_conflicts.md +29 -0
- data/files/ruby/hashes/expert/dynamic_struct_from_hash.md +22 -0
- data/files/ruby/hashes/expert/identity_vs_equality_key_comparison.md +15 -0
- data/files/ruby/hashes/expert/immutable_persistent_hash.md +19 -0
- data/files/ruby/hashes/expert/lazy_enumeration_hash_processing.md +17 -0
- data/files/ruby/hashes/expert/pattern_matching_nested_hashes.md +21 -0
- data/files/ruby/hashes/expert/refinements_safe_hash_extensions.md +22 -0
- data/files/ruby/hashes/middle/build_hash_each_with_object.md +12 -0
- data/files/ruby/hashes/middle/compact_hash.md +9 -0
- data/files/ruby/hashes/middle/fetch_with_default_block.md +22 -0
- data/files/ruby/hashes/middle/invert_handle_duplicates.md +16 -0
- data/files/ruby/hashes/middle/merge_with_block.md +20 -0
- data/files/ruby/hashes/middle/select_and_reject.md +13 -0
- data/files/ruby/hashes/middle/slice_hash.md +10 -0
- data/files/ruby/hashes/middle/sort_by_key_or_value.md +14 -0
- data/files/ruby/hashes/middle/transform_keys.md +10 -0
- data/files/ruby/hashes/middle/transform_values.md +14 -0
- data/files/ruby/irb/advanced/conditional_irbrc.md +16 -0
- data/files/ruby/irb/advanced/custom_irb_prompt.md +21 -0
- data/files/ruby/irb/advanced/custom_key_bindings.md +12 -0
- data/files/ruby/irb/advanced/define_magic_commands.md +16 -0
- data/files/ruby/irb/advanced/enable_auto_completion.md +14 -0
- data/files/ruby/irb/advanced/integrate_awesome_print.md +13 -0
- data/files/ruby/irb/advanced/multi_irb_sessions.md +10 -0
- data/files/ruby/irb/advanced/persist_command_history.md +11 -0
- data/files/ruby/irb/advanced/save_load_workspace.md +13 -0
- data/files/ruby/irb/advanced/use_pry_shell.md +15 -0
- data/files/ruby/irb/beginner/access_ruby_docs.md +9 -0
- data/files/ruby/irb/beginner/exit_irb.md +8 -0
- data/files/ruby/irb/beginner/grep_methods.md +9 -0
- data/files/ruby/irb/beginner/history_navigation.md +9 -0
- data/files/ruby/irb/beginner/launch_irb.md +13 -0
- data/files/ruby/irb/beginner/list_methods.md +9 -0
- data/files/ruby/irb/beginner/load_ruby_file.md +9 -0
- data/files/ruby/irb/beginner/multiline_code.md +10 -0
- data/files/ruby/irb/beginner/persist_history.md +12 -0
- data/files/ruby/irb/beginner/shell_commands.md +11 -0
- data/files/ruby/irb/expert/benchmark_integration.md +15 -0
- data/files/ruby/irb/expert/context_switching.md +21 -0
- data/files/ruby/irb/expert/dsl_auto_completion.md +23 -0
- data/files/ruby/irb/expert/dynamic_git_prompt.md +17 -0
- data/files/ruby/irb/expert/history_incremental_search.md +15 -0
- data/files/ruby/irb/expert/input_preprocessor.md +19 -0
- data/files/ruby/irb/expert/magic_commands_extension.md +21 -0
- data/files/ruby/irb/expert/programmatic_irb_control.md +18 -0
- data/files/ruby/irb/expert/sandboxed_session.md +17 -0
- data/files/ruby/irb/expert/threaded_debugging.md +18 -0
- data/files/ruby/irb/middle/auto_require_gems.md +8 -0
- data/files/ruby/irb/middle/awesome_print_output.md +13 -0
- data/files/ruby/irb/middle/binding_irb_hook.md +12 -0
- data/files/ruby/irb/middle/custom_inspector.md +8 -0
- data/files/ruby/irb/middle/custom_irb_commands.md +12 -0
- data/files/ruby/irb/middle/custom_prompt.md +13 -0
- data/files/ruby/irb/middle/pager_output.md +8 -0
- data/files/ruby/irb/middle/persistent_history.md +8 -0
- data/files/ruby/irb/middle/readline_key_bindings.md +9 -0
- data/files/ruby/irb/middle/tab_completion.md +7 -0
- data/files/ruby/json/advanced/custom_generator_state_for_json.md +27 -0
- data/files/ruby/json/advanced/high_performance_parsing_with_oj.md +21 -0
- data/files/ruby/json/advanced/streaming_large_json_with_oj_schandler.md +47 -0
- data/files/ruby/json/beginner/json_file_io.md +17 -0
- data/files/ruby/json/beginner/json_generate_basics.md +17 -0
- data/files/ruby/json/beginner/json_parse_basics.md +19 -0
- data/files/ruby/json/expert/custom_json_serialization_for_complex_objects.md +53 -0
- data/files/ruby/json/expert/high_performance_json_parsing_with_oj.md +28 -0
- data/files/ruby/json/expert/streaming_json_parsing_with_sc_handler.md +62 -0
- data/files/ruby/json/middle/customize_model_serialization.md +25 -0
- data/files/ruby/json/middle/json_schema_validation.md +27 -0
- data/files/ruby/json/middle/streaming_json_parsing.md +29 -0
- data/files/ruby/logging/advanced/custom_log_formatter_with_metadata.md +29 -0
- data/files/ruby/logging/advanced/silence_and_tagged_logging.md +20 -0
- data/files/ruby/logging/advanced/structured_logging_with_lograge.md +30 -0
- data/files/ruby/logging/beginner/basic_logger_setup.md +14 -0
- data/files/ruby/logging/beginner/log_rotation.md +11 -0
- data/files/ruby/logging/beginner/understanding_log_levels.md +14 -0
- data/files/ruby/logging/expert/async_non_blocking_logger.md +46 -0
- data/files/ruby/logging/expert/correlation_id_propagation.md +38 -0
- data/files/ruby/logging/expert/structured_json_logging.md +33 -0
- data/files/ruby/logging/middle/custom_logger_formatter.md +20 -0
- data/files/ruby/logging/middle/json_structured_logging.md +20 -0
- data/files/ruby/logging/middle/tagged_logging.md +15 -0
- data/files/ruby/marshal/advanced/custom_dump_load_versioning.md +32 -0
- data/files/ruby/marshal/advanced/selective_ivars_with_marshal_dump.md +35 -0
- data/files/ruby/marshal/advanced/streaming_with_compression.md +21 -0
- data/files/ruby/marshal/beginner/basic_marshal_dump_load.md +13 -0
- data/files/ruby/marshal/beginner/marshal_caching_simple_objects.md +17 -0
- data/files/ruby/marshal/beginner/marshal_with_files.md +16 -0
- data/files/ruby/marshal/expert/marshal_custom_versioning.md +47 -0
- data/files/ruby/marshal/expert/marshal_secure_compression.md +40 -0
- data/files/ruby/marshal/expert/marshal_streaming_chunks.md +30 -0
- data/files/ruby/marshal/middle/compress_marshal_data.md +16 -0
- data/files/ruby/marshal/middle/custom_marshal_dump_load.md +29 -0
- data/files/ruby/marshal/middle/deep_clone_objects.md +11 -0
- data/files/ruby/matrix/advanced/lu_caching_solver.md +53 -0
- data/files/ruby/matrix/advanced/numo_linalg_svd.md +25 -0
- data/files/ruby/matrix/advanced/rational_exact_arithmetic.md +19 -0
- data/files/ruby/matrix/beginner/matrix_basic_operations.md +16 -0
- data/files/ruby/matrix/beginner/matrix_element_access.md +22 -0
- data/files/ruby/matrix/beginner/matrix_initialization.md +14 -0
- data/files/ruby/matrix/expert/cblas_dgemm_acceleration.md +52 -0
- data/files/ruby/matrix/expert/sparse_matrix_lazy_enumerator.md +57 -0
- data/files/ruby/matrix/expert/strassen_matrix_multiplication.md +75 -0
- data/files/ruby/matrix/middle/matrix_basic_operations.md +15 -0
- data/files/ruby/matrix/middle/matrix_enumeration_transform.md +20 -0
- data/files/ruby/matrix/middle/matrix_transpose_and_diagonal.md +25 -0
- data/files/ruby/metaprogramming/advanced/alias_method_chain_emulation.md +25 -0
- data/files/ruby/metaprogramming/advanced/attribute_query_methods.md +13 -0
- data/files/ruby/metaprogramming/advanced/class_eval_with_context.md +17 -0
- data/files/ruby/metaprogramming/advanced/const_missing_autoload.md +16 -0
- data/files/ruby/metaprogramming/advanced/dsl_instance_eval.md +26 -0
- data/files/ruby/metaprogramming/advanced/dynamic_define_method.md +14 -0
- data/files/ruby/metaprogramming/advanced/dynamic_delegator_generation.md +17 -0
- data/files/ruby/metaprogramming/advanced/dynamic_singleton_methods.md +11 -0
- data/files/ruby/metaprogramming/advanced/eigenclass_singleton_methods.md +13 -0
- data/files/ruby/metaprogramming/advanced/macro_with_included_hook.md +21 -0
- data/files/ruby/metaprogramming/advanced/method_missing_dispatch.md +18 -0
- data/files/ruby/metaprogramming/advanced/module_prepend_hooks.md +19 -0
- data/files/ruby/metaprogramming/advanced/runtime_refinements.md +20 -0
- data/files/ruby/metaprogramming/advanced/tracepoint_monitoring.md +12 -0
- data/files/ruby/metaprogramming/advanced/unbound_method_binding.md +15 -0
- data/files/ruby/metaprogramming/beginner/alias_method_usage.md +20 -0
- data/files/ruby/metaprogramming/beginner/attr_accessor_metaprog.md +14 -0
- data/files/ruby/metaprogramming/beginner/class_eval_usage.md +16 -0
- data/files/ruby/metaprogramming/beginner/class_inherited_hook.md +13 -0
- data/files/ruby/metaprogramming/beginner/const_missing_lazy_loading.md +20 -0
- data/files/ruby/metaprogramming/beginner/define_method_dynamic.md +17 -0
- data/files/ruby/metaprogramming/beginner/define_singleton_method_usage.md +12 -0
- data/files/ruby/metaprogramming/beginner/dynamic_send.md +16 -0
- data/files/ruby/metaprogramming/beginner/eval_usage.md +9 -0
- data/files/ruby/metaprogramming/beginner/instance_eval_usage.md +14 -0
- data/files/ruby/metaprogramming/beginner/method_missing_basics.md +28 -0
- data/files/ruby/metaprogramming/beginner/module_included_hook.md +23 -0
- data/files/ruby/metaprogramming/beginner/respond_to_missing.md +24 -0
- data/files/ruby/metaprogramming/beginner/simple_dsl_blocks.md +31 -0
- data/files/ruby/metaprogramming/expert/advanced_method_missing_respond_to.md +32 -0
- data/files/ruby/metaprogramming/expert/chainable_dsl_with_lambdas.md +26 -0
- data/files/ruby/metaprogramming/expert/compile_time_code_generation_with_eval.md +24 -0
- data/files/ruby/metaprogramming/expert/composable_concerns_like_active_support.md +37 -0
- data/files/ruby/metaprogramming/expert/dsl_instance_eval_class_eval.md +28 -0
- data/files/ruby/metaprogramming/expert/dynamic_constant_loading_with_const_missing.md +21 -0
- data/files/ruby/metaprogramming/expert/dynamic_define_method_with_closure.md +23 -0
- data/files/ruby/metaprogramming/expert/eigenclass_singleton_method_customization.md +22 -0
- data/files/ruby/metaprogramming/expert/module_prepend_for_instrumentation.md +28 -0
- data/files/ruby/metaprogramming/expert/performance_measurement_proxy.md +29 -0
- data/files/ruby/metaprogramming/expert/proxy_pattern_with_basicobject.md +24 -0
- data/files/ruby/metaprogramming/expert/runtime_extension_with_fiddle.md +16 -0
- data/files/ruby/metaprogramming/expert/runtime_instrumentation_tracepoint.md +21 -0
- data/files/ruby/metaprogramming/expert/scoped_monkey_patching_with_refinements.md +28 -0
- data/files/ruby/metaprogramming/expert/unbound_method_rebinding.md +22 -0
- data/files/ruby/metaprogramming/middle/alias_method_wrapping.md +22 -0
- data/files/ruby/metaprogramming/middle/ar_dynamic_scopes.md +15 -0
- data/files/ruby/metaprogramming/middle/auto_timestamp_module.md +27 -0
- data/files/ruby/metaprogramming/middle/class_eval_dynamic_methods.md +15 -0
- data/files/ruby/metaprogramming/middle/const_missing_autoload.md +20 -0
- data/files/ruby/metaprogramming/middle/dsl_with_instance_eval.md +28 -0
- data/files/ruby/metaprogramming/middle/dynamic_attr_accessors.md +26 -0
- data/files/ruby/metaprogramming/middle/dynamic_callbacks.md +43 -0
- data/files/ruby/metaprogramming/middle/dynamic_delegation_forwardable.md +24 -0
- data/files/ruby/metaprogramming/middle/dynamic_method_define.md +16 -0
- data/files/ruby/metaprogramming/middle/dynamic_validation_macros.md +43 -0
- data/files/ruby/metaprogramming/middle/fluent_interface_chaining.md +26 -0
- data/files/ruby/metaprogramming/middle/hook_method_added.md +37 -0
- data/files/ruby/metaprogramming/middle/method_missing_fallback.md +26 -0
- data/files/ruby/metaprogramming/middle/scoped_refinements.md +24 -0
- data/files/ruby/method_missing/advanced/caching_missing_methods.md +31 -0
- data/files/ruby/method_missing/advanced/dsl_method_recording.md +28 -0
- data/files/ruby/method_missing/advanced/lazy_association_proxy.md +36 -0
- data/files/ruby/method_missing/advanced/rest_api_client_dynamic.md +33 -0
- data/files/ruby/method_missing/beginner/method_missing_basic_setup.md +15 -0
- data/files/ruby/method_missing/beginner/method_missing_dynamic_attributes.md +30 -0
- data/files/ruby/method_missing/beginner/method_missing_forward_to_super.md +23 -0
- data/files/ruby/method_missing/beginner/method_missing_respond_to.md +24 -0
- data/files/ruby/method_missing/expert/advanced_signature_handling.md +31 -0
- data/files/ruby/method_missing/expert/caching_method_missing_responses.md +37 -0
- data/files/ruby/method_missing/expert/dynamic_attributes_dsl.md +32 -0
- data/files/ruby/method_missing/expert/transparent_proxy_forwarding.md +25 -0
- data/files/ruby/method_missing/middle/dsl_fallback_methods.md +30 -0
- data/files/ruby/method_missing/middle/dynamic_delegation.md +25 -0
- data/files/ruby/method_missing/middle/forwarding_proxy.md +27 -0
- data/files/ruby/method_missing/middle/logging_undefined_calls.md +20 -0
- data/files/ruby/methods/advanced/curry_and_method_to_proc.md +14 -0
- data/files/ruby/methods/advanced/dynamic_define_method.md +16 -0
- data/files/ruby/methods/advanced/forwarding_arguments.md +20 -0
- data/files/ruby/methods/advanced/memoization_with_arguments.md +18 -0
- data/files/ruby/methods/advanced/method_missing_respond_to_missing.md +24 -0
- data/files/ruby/methods/advanced/method_object_dispatch.md +17 -0
- data/files/ruby/methods/advanced/prepend_for_method_wrapping.md +25 -0
- data/files/ruby/methods/advanced/refinements_local_method_override.md +17 -0
- data/files/ruby/methods/beginner/default_parameters.md +11 -0
- data/files/ruby/methods/beginner/defining_methods.md +13 -0
- data/files/ruby/methods/beginner/implicit_and_explicit_return.md +11 -0
- data/files/ruby/methods/beginner/keyword_arguments.md +11 -0
- data/files/ruby/methods/beginner/method_arguments.md +11 -0
- data/files/ruby/methods/beginner/method_chaining.md +8 -0
- data/files/ruby/methods/beginner/splat_arguments.md +11 -0
- data/files/ruby/methods/beginner/using_blocks.md +14 -0
- data/files/ruby/methods/expert/currying_partial_application.md +18 -0
- data/files/ruby/methods/expert/delegation_with_forwardable.md +41 -0
- data/files/ruby/methods/expert/dynamic_define_method.md +21 -0
- data/files/ruby/methods/expert/method_hooks_metaprogramming.md +32 -0
- data/files/ruby/methods/expert/module_prepend_chain.md +27 -0
- data/files/ruby/methods/expert/pattern_matching_params.md +19 -0
- data/files/ruby/methods/expert/refinements_scope_control.md +20 -0
- data/files/ruby/methods/expert/unbound_method_binding.md +30 -0
- data/files/ruby/methods/middle/alias_method_and_super.md +27 -0
- data/files/ruby/methods/middle/default_keyword_arguments.md +15 -0
- data/files/ruby/methods/middle/dynamic_define_method.md +17 -0
- data/files/ruby/methods/middle/forwardable_delegation.md +24 -0
- data/files/ruby/methods/middle/public_send_vs_send.md +20 -0
- data/files/ruby/methods/middle/splat_and_double_splat.md +17 -0
- data/files/ruby/methods/middle/symbol_to_proc.md +14 -0
- data/files/ruby/methods/middle/tap_chaining.md +16 -0
- data/files/ruby/minitest/advanced/custom_minitest_plugin.md +29 -0
- data/files/ruby/minitest/advanced/custom_reporter_usage.md +28 -0
- data/files/ruby/minitest/advanced/parallel_test_execution.md +20 -0
- data/files/ruby/minitest/advanced/performance_benchmarking.md +17 -0
- data/files/ruby/minitest/beginner/common_assertions.md +15 -0
- data/files/ruby/minitest/beginner/defining_test_cases.md +13 -0
- data/files/ruby/minitest/beginner/getting_started.md +12 -0
- data/files/ruby/minitest/beginner/setup_teardown_hooks.md +20 -0
- data/files/ruby/minitest/expert/custom_minitest_profiling_plugin.md +34 -0
- data/files/ruby/minitest/expert/dynamic_test_generation.md +23 -0
- data/files/ruby/minitest/expert/parallel_test_sharding.md +22 -0
- data/files/ruby/minitest/expert/property_based_with_rantly.md +23 -0
- data/files/ruby/minitest/middle/assertion_matchers_refutations.md +22 -0
- data/files/ruby/minitest/middle/custom_assertion_helpers.md +22 -0
- data/files/ruby/minitest/middle/parallel_test_execution.md +22 -0
- data/files/ruby/minitest/middle/setup_teardown_hooks.md +27 -0
- data/files/ruby/net_http/advanced/concurrent_requests_with_threads.md +24 -0
- data/files/ruby/net_http/advanced/custom_ssl_context.md +18 -0
- data/files/ruby/net_http/advanced/persistent_http_connections.md +13 -0
- data/files/ruby/net_http/advanced/streaming_large_responses.md +17 -0
- data/files/ruby/net_http/beginner/basic_get_request.md +12 -0
- data/files/ruby/net_http/beginner/custom_headers_requests.md +19 -0
- data/files/ruby/net_http/beginner/https_ssl_configuration.md +17 -0
- data/files/ruby/net_http/beginner/post_json_request.md +20 -0
- data/files/ruby/net_http/expert/persistent_connection_pooling.md +17 -0
- data/files/ruby/net_http/expert/retry_with_exponential_backoff.md +29 -0
- data/files/ruby/net_http/expert/ssl_certificate_pinning.md +30 -0
- data/files/ruby/net_http/expert/streaming_chunked_responses.md +22 -0
- data/files/ruby/net_http/middle/get_with_custom_headers.md +21 -0
- data/files/ruby/net_http/middle/parse_json_errors.md +23 -0
- data/files/ruby/net_http/middle/post_form_data.md +22 -0
- data/files/ruby/net_http/middle/timeout_ssl_verify.md +21 -0
- data/files/ruby/networking/advanced/custom_tls_context.md +26 -0
- data/files/ruby/networking/advanced/eventmachine_async_io.md +29 -0
- data/files/ruby/networking/advanced/http2_stream_multiplexing.md +40 -0
- data/files/ruby/networking/advanced/nonblocking_tcp_socket.md +28 -0
- data/files/ruby/networking/beginner/http_get_request.md +13 -0
- data/files/ruby/networking/beginner/open_uri_fetch.md +11 -0
- data/files/ruby/networking/beginner/tcp_client_example.md +13 -0
- data/files/ruby/networking/beginner/tcp_server_example.md +16 -0
- data/files/ruby/networking/expert/custom_tls_context.md +29 -0
- data/files/ruby/networking/expert/http2_multiplexing.md +39 -0
- data/files/ruby/networking/expert/packet_crafting_raw_sockets.md +24 -0
- data/files/ruby/networking/expert/persistent_http_pipelining.md +29 -0
- data/files/ruby/networking/middle/http_multipart_upload.md +27 -0
- data/files/ruby/networking/middle/http_persistent.md +15 -0
- data/files/ruby/networking/middle/http_ssl_customization.md +18 -0
- data/files/ruby/networking/middle/tcp_non_blocking_client.md +23 -0
- data/files/ruby/numbers/advanced/bigdecimal_precision.md +15 -0
- data/files/ruby/numbers/advanced/complex_rotations.md +13 -0
- data/files/ruby/numbers/advanced/numeric_clamp_bounds.md +18 -0
- data/files/ruby/numbers/advanced/prime_factorization.md +23 -0
- data/files/ruby/numbers/advanced/rational_usage.md +18 -0
- data/files/ruby/numbers/beginner/basic_arithmetic.md +15 -0
- data/files/ruby/numbers/beginner/generating_random_numbers.md +9 -0
- data/files/ruby/numbers/beginner/integer_vs_float.md +11 -0
- data/files/ruby/numbers/beginner/number_comparison.md +14 -0
- data/files/ruby/numbers/beginner/rounding_numbers.md +14 -0
- data/files/ruby/numbers/expert/expert_bigdecimal_precision.md +21 -0
- data/files/ruby/numbers/expert/expert_bitwise_binary.md +25 -0
- data/files/ruby/numbers/expert/expert_ffi_math_library.md +31 -0
- data/files/ruby/numbers/expert/expert_prime_enumeration.md +24 -0
- data/files/ruby/numbers/expert/expert_rational_complex.md +17 -0
- data/files/ruby/numbers/middle/bigdecimal_precision.md +15 -0
- data/files/ruby/numbers/middle/clamp_numbers.md +12 -0
- data/files/ruby/numbers/middle/extract_digits.md +16 -0
- data/files/ruby/numbers/middle/random_ranges.md +18 -0
- data/files/ruby/numbers/middle/rational_numbers.md +16 -0
- data/files/ruby/oop/advanced/class_eval_vs_instance_eval.md +26 -0
- data/files/ruby/oop/advanced/dynamic_method_definition.md +22 -0
- data/files/ruby/oop/advanced/eigenclass_for_class_macros.md +23 -0
- data/files/ruby/oop/advanced/forwarding_with_forwardable.md +24 -0
- data/files/ruby/oop/advanced/internal_dsl_with_blocks.md +30 -0
- data/files/ruby/oop/advanced/method_missing_as_proxy.md +34 -0
- data/files/ruby/oop/advanced/modules_as_namespaces_and_mixins.md +36 -0
- data/files/ruby/oop/advanced/refinements_for_scoped_patching.md +17 -0
- data/files/ruby/oop/advanced/tracepoint_for_method_hooking.md +17 -0
- data/files/ruby/oop/beginner/attr_accessors.md +14 -0
- data/files/ruby/oop/beginner/class_methods.md +12 -0
- data/files/ruby/oop/beginner/creating_instances.md +10 -0
- data/files/ruby/oop/beginner/defining_classes.md +8 -0
- data/files/ruby/oop/beginner/inheritance_basics.md +19 -0
- data/files/ruby/oop/beginner/initialize_method.md +16 -0
- data/files/ruby/oop/beginner/instance_methods.md +18 -0
- data/files/ruby/oop/beginner/instance_variables.md +18 -0
- data/files/ruby/oop/beginner/method_overriding.md +19 -0
- data/files/ruby/oop/beginner/modules_mixins.md +17 -0
- data/files/ruby/oop/expert/bytecode_introspection_mod.md +17 -0
- data/files/ruby/oop/expert/class_level_exec.md +30 -0
- data/files/ruby/oop/expert/concurrent_ractor_mixins.md +33 -0
- data/files/ruby/oop/expert/dynamic_method_dsl.md +23 -0
- data/files/ruby/oop/expert/method_missing_delegate.md +23 -0
- data/files/ruby/oop/expert/module_prepend_override.md +26 -0
- data/files/ruby/oop/expert/scoped_refinements.md +23 -0
- data/files/ruby/oop/expert/tracepoint_profiling.md +15 -0
- data/files/ruby/oop/expert/weakref_circular_cleanup.md +24 -0
- data/files/ruby/oop/middle/composition_over_inheritance.md +22 -0
- data/files/ruby/oop/middle/define_value_objects.md +27 -0
- data/files/ruby/oop/middle/dynamic_method_definitions.md +17 -0
- data/files/ruby/oop/middle/leverage_struct_for_data_objects.md +15 -0
- data/files/ruby/oop/middle/mixins_for_shared_behavior.md +18 -0
- data/files/ruby/oop/middle/use_forwardable_for_delegation.md +21 -0
- data/files/ruby/oop/middle/use_method_missing_cautiously.md +28 -0
- data/files/ruby/oop/middle/use_module_namespace.md +18 -0
- data/files/ruby/oop/middle/use_simpledelegator_for_wrappers.md +18 -0
- data/files/ruby/openssl/advanced/custom_ssl_context_configuration.md +22 -0
- data/files/ruby/openssl/advanced/ocsp_certificate_revocation_checking.md +25 -0
- data/files/ruby/openssl/advanced/smime_sign_and_encrypt.md +30 -0
- data/files/ruby/openssl/beginner/aes_encrypt_decrypt.md +28 -0
- data/files/ruby/openssl/beginner/create_sha256_digest.md +20 -0
- data/files/ruby/openssl/beginner/generate_rsa_key_pair.md +17 -0
- data/files/ruby/openssl/expert/hardware_engine_pkcs11.md +23 -0
- data/files/ruby/openssl/expert/mutual_tls_with_sslcontext.md +27 -0
- data/files/ruby/openssl/expert/streaming_aead_gcm_file_encryption.md +32 -0
- data/files/ruby/openssl/middle/aes_gcm_encryption.md +33 -0
- data/files/ruby/openssl/middle/custom_ssl_context.md +29 -0
- data/files/ruby/openssl/middle/verify_certificate_chain.md +25 -0
- data/files/ruby/operators/advanced/boolean_casting.md.md +12 -0
- data/files/ruby/operators/advanced/double_splat_args.md.md +15 -0
- data/files/ruby/operators/advanced/endless_range_operator.md.md +14 -0
- data/files/ruby/operators/advanced/flip_flop_operator.md.md +20 -0
- data/files/ruby/operators/advanced/operator_overloading.md.md +22 -0
- data/files/ruby/operators/advanced/pattern_matching_case_in.md.md +12 -0
- data/files/ruby/operators/advanced/safe_navigation_operator.md.md +13 -0
- data/files/ruby/operators/advanced/spaceship_operator.md.md +26 -0
- data/files/ruby/operators/advanced/symbol_to_proc.md.md +14 -0
- data/files/ruby/operators/advanced/unary_operators.md.md +21 -0
- data/files/ruby/operators/beginner/arithmetic_operators.md +11 -0
- data/files/ruby/operators/beginner/basic_assignment.md +14 -0
- data/files/ruby/operators/beginner/comparison_operators.md +12 -0
- data/files/ruby/operators/beginner/compound_assignment.md +10 -0
- data/files/ruby/operators/beginner/conditional_assignment.md +11 -0
- data/files/ruby/operators/beginner/exponentiation_operator.md +11 -0
- data/files/ruby/operators/beginner/logical_operators.md +17 -0
- data/files/ruby/operators/beginner/range_operators.md +15 -0
- data/files/ruby/operators/beginner/string_concatenation.md +14 -0
- data/files/ruby/operators/beginner/ternary_operator.md +12 -0
- data/files/ruby/operators/expert/bitmask_flags_with_operators.md +41 -0
- data/files/ruby/operators/expert/custom_unary_operator_overloads.md +22 -0
- data/files/ruby/operators/expert/deep_safe_navigation_chaining.md +13 -0
- data/files/ruby/operators/expert/dsl_via_operator_overloads.md +30 -0
- data/files/ruby/operators/expert/dynamic_operator_overloading.md +30 -0
- data/files/ruby/operators/expert/extending_numeric_precision.md +28 -0
- data/files/ruby/operators/expert/inline_rescue_in_operators.md +21 -0
- data/files/ruby/operators/expert/pipeline_operator_with_procs.md +17 -0
- data/files/ruby/operators/expert/refinements_for_core_operators.md +20 -0
- data/files/ruby/operators/expert/spaceship_sort_with_memoization.md +24 -0
- data/files/ruby/operators/middle/default_assignment_operator.md +8 -0
- data/files/ruby/operators/middle/defined_operator.md +10 -0
- data/files/ruby/operators/middle/exponentiation_operator.md +9 -0
- data/files/ruby/operators/middle/flip_flop_operator.md +14 -0
- data/files/ruby/operators/middle/method_proc_shorthand.md +12 -0
- data/files/ruby/operators/middle/range_operator.md +13 -0
- data/files/ruby/operators/middle/regex_match_operator.md +10 -0
- data/files/ruby/operators/middle/safe_navigation_operator.md +11 -0
- data/files/ruby/operators/middle/spaceship_operator.md +19 -0
- data/files/ruby/operators/middle/splat_and_double_splat.md +19 -0
- data/files/ruby/procs_and_lambdas/advanced/destructuring_parameters.md +14 -0
- data/files/ruby/procs_and_lambdas/advanced/dynamic_method_definitions.md +20 -0
- data/files/ruby/procs_and_lambdas/advanced/error_handling_wrappers.md +18 -0
- data/files/ruby/procs_and_lambdas/advanced/lambda_currying.md +13 -0
- data/files/ruby/procs_and_lambdas/advanced/memoization_with_procs.md +18 -0
- data/files/ruby/procs_and_lambdas/advanced/proc_enumerable_chaining.md +19 -0
- data/files/ruby/procs_and_lambdas/advanced/proc_lambda_composition.md +14 -0
- data/files/ruby/procs_and_lambdas/advanced/symbol_to_proc_advanced.md +14 -0
- data/files/ruby/procs_and_lambdas/beginner/calling_lambdas.md +14 -0
- data/files/ruby/procs_and_lambdas/beginner/calling_procs.md +12 -0
- data/files/ruby/procs_and_lambdas/beginner/getting_started_with_lambdas.md +10 -0
- data/files/ruby/procs_and_lambdas/beginner/getting_started_with_procs.md +10 -0
- data/files/ruby/procs_and_lambdas/beginner/passing_lambda_to_method.md +13 -0
- data/files/ruby/procs_and_lambdas/beginner/passing_proc_to_method.md +16 -0
- data/files/ruby/procs_and_lambdas/beginner/proc_vs_lambda_argument_handling.md +11 -0
- data/files/ruby/procs_and_lambdas/beginner/storing_procs_in_collections.md +14 -0
- data/files/ruby/procs_and_lambdas/expert/async_event_driven_procs.md +24 -0
- data/files/ruby/procs_and_lambdas/expert/currying_and_partial_application.md +12 -0
- data/files/ruby/procs_and_lambdas/expert/dynamic_arity_validation.md +14 -0
- data/files/ruby/procs_and_lambdas/expert/metaprogramming_with_define_method.md +26 -0
- data/files/ruby/procs_and_lambdas/expert/proc_and_lambda_composition.md +17 -0
- data/files/ruby/procs_and_lambdas/expert/procs_in_fiber_callbacks.md +22 -0
- data/files/ruby/procs_and_lambdas/expert/profunctor_style_adapters.md +23 -0
- data/files/ruby/procs_and_lambdas/expert/sandboxed_instance_exec.md +18 -0
- data/files/ruby/procs_and_lambdas/middle/chain_procs_lambdas.md +13 -0
- data/files/ruby/procs_and_lambdas/middle/context_capture_proc.md +12 -0
- data/files/ruby/procs_and_lambdas/middle/curried_lambda.md +10 -0
- data/files/ruby/procs_and_lambdas/middle/error_handling_proc.md +16 -0
- data/files/ruby/procs_and_lambdas/middle/lambda_arity.md +12 -0
- data/files/ruby/procs_and_lambdas/middle/memoization_lambda.md +11 -0
- data/files/ruby/procs_and_lambdas/middle/proc_callback.md +14 -0
- data/files/ruby/procs_and_lambdas/middle/proc_lambda_conversion.md +14 -0
- data/files/ruby/profiling/advanced/perftools_flamegraph_generation.md +16 -0
- data/files/ruby/profiling/advanced/ruby_prof_flat_printer.md +14 -0
- data/files/ruby/profiling/advanced/ruby_prof_graph_html.md +17 -0
- data/files/ruby/profiling/advanced/stackprof_sampling_mode.md +19 -0
- data/files/ruby/profiling/advanced/tracepoint_custom_profile.md +19 -0
- data/files/ruby/profiling/beginner/benchmark_bm.md +14 -0
- data/files/ruby/profiling/beginner/benchmark_ips.md +16 -0
- data/files/ruby/profiling/beginner/benchmark_measure.md +15 -0
- data/files/ruby/profiling/beginner/ruby_prof_flat_printer.md +16 -0
- data/files/ruby/profiling/beginner/ruby_profile_flag.md +9 -0
- data/files/ruby/profiling/expert/memory_profiler_deep_inspection.md +16 -0
- data/files/ruby/profiling/expert/rbspy_production_sampling.md +15 -0
- data/files/ruby/profiling/expert/ruby_prof_callgrind_kcachegrind.md +22 -0
- data/files/ruby/profiling/expert/stackprof_flamegraph.md +20 -0
- data/files/ruby/profiling/expert/thread_wall_time_profiling.md +18 -0
- data/files/ruby/profiling/middle/benchmark_bm_usage.md +11 -0
- data/files/ruby/profiling/middle/flamegraph_visualization.md +16 -0
- data/files/ruby/profiling/middle/memory_profiler_usage.md +12 -0
- data/files/ruby/profiling/middle/ruby_prof_cpu.md +14 -0
- data/files/ruby/profiling/middle/stackprof_sampling.md +13 -0
- data/files/ruby/ranges/advanced/custom_object_ranges.md +28 -0
- data/files/ruby/ranges/advanced/infinite_beginless_ranges.md +15 -0
- data/files/ruby/ranges/advanced/lazy_infinite_sequences.md +12 -0
- data/files/ruby/ranges/advanced/pattern_matching_with_ranges.md +27 -0
- data/files/ruby/ranges/advanced/range_step_usage.md +13 -0
- data/files/ruby/ranges/beginner/check_value_in_range.md +12 -0
- data/files/ruby/ranges/beginner/convert_range_to_array.md +13 -0
- data/files/ruby/ranges/beginner/inclusive_vs_exclusive_ranges.md +10 -0
- data/files/ruby/ranges/beginner/iterating_over_ranges.md +15 -0
- data/files/ruby/ranges/beginner/stepping_through_ranges.md +17 -0
- data/files/ruby/ranges/expert/cover_vs_include_performance.md +14 -0
- data/files/ruby/ranges/expert/custom_infinite_enumerator.md +19 -0
- data/files/ruby/ranges/expert/endless_and_beginless_ranges.md +17 -0
- data/files/ruby/ranges/expert/pattern_matching_with_ranges.md +22 -0
- data/files/ruby/ranges/expert/using_ranges_as_hash_keys.md +18 -0
- data/files/ruby/ranges/middle/endless_beginless_ranges.md +17 -0
- data/files/ruby/ranges/middle/range_case_when.md +20 -0
- data/files/ruby/ranges/middle/range_cover_include.md +13 -0
- data/files/ruby/ranges/middle/range_step_iteration.md +12 -0
- data/files/ruby/ranges/middle/range_to_a_and_size.md +13 -0
- data/files/ruby/reflection/advanced/dynamic_method_generation.md +20 -0
- data/files/ruby/reflection/advanced/method_source_reloader.md +17 -0
- data/files/ruby/reflection/advanced/runtime_constant_injection.md +19 -0
- data/files/ruby/reflection/advanced/tracepoint_method_tracing.md +18 -0
- data/files/ruby/reflection/beginner/dynamic_method_invocation.md +14 -0
- data/files/ruby/reflection/beginner/inspect_instance_variables.md +20 -0
- data/files/ruby/reflection/beginner/list_available_methods.md +14 -0
- data/files/ruby/reflection/beginner/use_respond_to.md +13 -0
- data/files/ruby/reflection/expert/ast_manipulation.md +27 -0
- data/files/ruby/reflection/expert/dynamic_basicobject_proxy.md +27 -0
- data/files/ruby/reflection/expert/granular_tracepoint_events.md +16 -0
- data/files/ruby/reflection/expert/singleton_class_hierarchy.md +20 -0
- data/files/ruby/reflection/middle/dynamic_constant_lookup.md +18 -0
- data/files/ruby/reflection/middle/dynamic_method_invocation.md +18 -0
- data/files/ruby/reflection/middle/instance_variable_inspection.md +19 -0
- data/files/ruby/reflection/middle/introspect_methods.md +17 -0
- data/files/ruby/regex/advanced/atomic_grouping.md +11 -0
- data/files/ruby/regex/advanced/dynamic_union.md +10 -0
- data/files/ruby/regex/advanced/extended_mode_comments.md +9 -0
- data/files/ruby/regex/advanced/g_anchor_scanning.md +10 -0
- data/files/ruby/regex/advanced/gsub_with_block.md +11 -0
- data/files/ruby/regex/advanced/lookaround_assertions.md +9 -0
- data/files/ruby/regex/advanced/named_capture_to_hash.md +8 -0
- data/files/ruby/regex/advanced/performance_benchmarking.md +16 -0
- data/files/ruby/regex/advanced/recursive_patterns.md +11 -0
- data/files/ruby/regex/advanced/unicode_properties.md +12 -0
- data/files/ruby/regex/beginner/anchors.md +12 -0
- data/files/ruby/regex/beginner/basic_match_operator.md +11 -0
- data/files/ruby/regex/beginner/capturing_groups.md +9 -0
- data/files/ruby/regex/beginner/character_classes.md +9 -0
- data/files/ruby/regex/beginner/escaping_special_chars.md +9 -0
- data/files/ruby/regex/beginner/gsub_replacement.md +9 -0
- data/files/ruby/regex/beginner/named_captures.md +10 -0
- data/files/ruby/regex/beginner/quantifiers.md +9 -0
- data/files/ruby/regex/beginner/regex_options.md +11 -0
- data/files/ruby/regex/beginner/string_match_method.md +12 -0
- data/files/ruby/regex/expert/advanced_lookaround_combinations.md +27 -0
- data/files/ruby/regex/expert/atomic_groups_for_speed.md +15 -0
- data/files/ruby/regex/expert/branch_reset_grouping.md +19 -0
- data/files/ruby/regex/expert/embed_ruby_code_in_regex.md +21 -0
- data/files/ruby/regex/expert/inline_toggle_modifiers.md +16 -0
- data/files/ruby/regex/expert/named_captures_with_transform.md +18 -0
- data/files/ruby/regex/expert/recursive_regex_for_nested.md +18 -0
- data/files/ruby/regex/expert/regexp_union_optimization.md +16 -0
- data/files/ruby/regex/expert/stringscanner_iterative_scans.md +18 -0
- data/files/ruby/regex/expert/unicode_and_posix_properties.md +20 -0
- data/files/ruby/regex/middle/anchor_validations.md +15 -0
- data/files/ruby/regex/middle/character_classes.md +10 -0
- data/files/ruby/regex/middle/gsub_with_block.md +13 -0
- data/files/ruby/regex/middle/inline_modifiers.md +15 -0
- data/files/ruby/regex/middle/lookahead_lookbehind.md +11 -0
- data/files/ruby/regex/middle/match_data_usage.md +12 -0
- data/files/ruby/regex/middle/named_capture_groups.md +11 -0
- data/files/ruby/regex/middle/non_capturing_groups.md +14 -0
- data/files/ruby/regex/middle/regexp_union.md +11 -0
- data/files/ruby/regex/middle/split_with_regex.md +13 -0
- data/files/ruby/rspec/advanced/around_hooks_time_travel_cleanup.md +20 -0
- data/files/ruby/rspec/advanced/composable_custom_matchers.md +36 -0
- data/files/ruby/rspec/advanced/dynamic_shared_context_metadata.md +25 -0
- data/files/ruby/rspec/advanced/parameterized_testing.md +25 -0
- data/files/ruby/rspec/beginner/first_spec_example.md +15 -0
- data/files/ruby/rspec/beginner/organizing_spec_files.md +21 -0
- data/files/ruby/rspec/beginner/setup_rspec.md +12 -0
- data/files/ruby/rspec/beginner/using_expectations.md +15 -0
- data/files/ruby/rspec/expert/advanced_diffable_matcher.md +40 -0
- data/files/ruby/rspec/expert/custom_example_group_dsl.md +22 -0
- data/files/ruby/rspec/expert/custom_formatter_plugin.md +51 -0
- data/files/ruby/rspec/expert/flaky_spec_auto_retry.md +29 -0
- data/files/ruby/rspec/middle/rspec_contexts_subject.md.md +24 -0
- data/files/ruby/rspec/middle/rspec_custom_matchers.md.md +20 -0
- data/files/ruby/rspec/middle/rspec_let_vs_let_bang.md.md +19 -0
- data/files/ruby/rspec/middle/rspec_shared_examples.md.md +19 -0
- data/files/ruby/serialization/advanced/marshal_custom_versioning.md +41 -0
- data/files/ruby/serialization/advanced/oj_serialization_tuning.md +23 -0
- data/files/ruby/serialization/advanced/streaming_large_json.md +19 -0
- data/files/ruby/serialization/beginner/json_serialization.md +16 -0
- data/files/ruby/serialization/beginner/marshal_serialization.md +13 -0
- data/files/ruby/serialization/beginner/yaml_serialization.md +17 -0
- data/files/ruby/serialization/expert/hybrid_msgpack_json.md +32 -0
- data/files/ruby/serialization/expert/oj_object_hooks.md +22 -0
- data/files/ruby/serialization/expert/versioned_marshal.md +42 -0
- data/files/ruby/serialization/middle/active_model_serializer_example.md +21 -0
- data/files/ruby/serialization/middle/customizing_to_json_example.md +15 -0
- data/files/ruby/serialization/middle/using_oj_for_high_performance.md +16 -0
- data/files/ruby/set/advanced/set_key_extractor.md +32 -0
- data/files/ruby/set/advanced/set_thread_safe.md +28 -0
- data/files/ruby/set/advanced/set_transitive_closure.md +39 -0
- data/files/ruby/set/beginner/basic_set_operations.md +17 -0
- data/files/ruby/set/beginner/initialize_set.md +14 -0
- data/files/ruby/set/beginner/manage_set_elements.md +13 -0
- data/files/ruby/set/expert/custom_hash_eql.md.md +29 -0
- data/files/ruby/set/expert/lazy_unique_filter.md.md +21 -0
- data/files/ruby/set/expert/thread_safe_set.md.md +29 -0
- data/files/ruby/set/middle/custom_object_set.md +34 -0
- data/files/ruby/set/middle/initialize_and_modify_set.md +17 -0
- data/files/ruby/set/middle/set_algebra_operations.md +20 -0
- data/files/ruby/sockets/advanced/non_blocking_io_select.md +35 -0
- data/files/ruby/sockets/advanced/ssl_tls_with_openssl.md +25 -0
- data/files/ruby/sockets/advanced/unix_socket_fd_passing.md +29 -0
- data/files/ruby/sockets/beginner/tcp_client_basics.md +14 -0
- data/files/ruby/sockets/beginner/tcp_server_basics.md +18 -0
- data/files/ruby/sockets/beginner/udp_socket_basics.md +33 -0
- data/files/ruby/sockets/expert/custom_tls_alpn_ocsp.md +47 -0
- data/files/ruby/sockets/expert/fiber_scheduler_socket_server.md +39 -0
- data/files/ruby/sockets/expert/zero_copy_sendfile.md +36 -0
- data/files/ruby/sockets/middle/socket_select_multiplex.md +33 -0
- data/files/ruby/sockets/middle/tcp_client_basic.md +22 -0
- data/files/ruby/sockets/middle/tcp_server_basic.md +19 -0
- data/files/ruby/strings/advanced/advanced_interpolation.md +1 -0
- data/files/ruby/strings/advanced/binary_encoding_manipulation.md +14 -0
- data/files/ruby/strings/advanced/complex_escapes.md +1 -0
- data/files/ruby/strings/advanced/emoji_handling.md +1 -0
- data/files/ruby/strings/advanced/freezing_and_symbols.md +15 -0
- data/files/ruby/strings/advanced/literals_stacking.md +1 -0
- data/files/ruby/strings/advanced/percent_quoting_variants.md +12 -0
- data/files/ruby/strings/advanced/regex_match_performance.md +11 -0
- data/files/ruby/strings/advanced/safe_concat.md +1 -0
- data/files/ruby/strings/advanced/strip_margin_heredoc.md +1 -0
- data/files/ruby/strings/advanced/unicode_normalization.md +1 -0
- data/files/ruby/strings/beginner/common_string_methods.md +10 -0
- data/files/ruby/strings/beginner/heredoc_string.md +14 -0
- data/files/ruby/strings/beginner/length_and_empty.md +10 -0
- data/files/ruby/strings/beginner/shovel_operator.md +10 -0
- data/files/ruby/strings/beginner/string_concatenation.md +10 -0
- data/files/ruby/strings/beginner/string_duplication.md +9 -0
- data/files/ruby/strings/beginner/string_indexing.md +10 -0
- data/files/ruby/strings/beginner/string_interpolation.md +9 -0
- data/files/ruby/strings/beginner/string_slicing.md +10 -0
- data/files/ruby/strings/beginner/substring_replacement.md +9 -0
- data/files/ruby/strings/expert/advanced_named_captures.md +15 -0
- data/files/ruby/strings/expert/ast_pattern_strings.md +1 -0
- data/files/ruby/strings/expert/binary_data_handling_string_b.md +10 -0
- data/files/ruby/strings/expert/binary_parsing_with_unpack_pack.md +12 -0
- data/files/ruby/strings/expert/deep_dup.md +1 -0
- data/files/ruby/strings/expert/demo_continue.md +1 -0
- data/files/ruby/strings/expert/drb_string_marshalling_hash.md +1 -0
- data/files/ruby/strings/expert/fiber_storage_usage.md +1 -0
- data/files/ruby/strings/expert/freeze_dedupe_strings.md +11 -0
- data/files/ruby/strings/expert/fstring_eval.md +1 -0
- data/files/ruby/strings/expert/functional_fstrings.md +1 -0
- data/files/ruby/strings/expert/gb_string_increment.md +1 -0
- data/files/ruby/strings/expert/grapheme_cluster_counting.md +12 -0
- data/files/ruby/strings/expert/handle_invalid_bytes_with_scrub.md +12 -0
- data/files/ruby/strings/expert/heredoc_inheritance.md +1 -0
- data/files/ruby/strings/expert/in_memory_io_with_stringio.md +13 -0
- data/files/ruby/strings/expert/opengl_strings.md +1 -0
- data/files/ruby/strings/expert/override_dup_with_initialize_copy.md +19 -0
- data/files/ruby/strings/expert/regex_named_captures.md +1 -0
- data/files/ruby/strings/expert/regex_performance.md +1 -0
- data/files/ruby/strings/expert/reuse_string_buffers_replace.md +12 -0
- data/files/ruby/strings/expert/sprintf_named.md +1 -0
- data/files/ruby/strings/expert/stateful_sub/",{.md +1 -0
- data/files/ruby/strings/expert/strict_encodings.md +1 -0
- data/files/ruby/strings/expert/string_gc_optimizations.md +1 -0
- data/files/ruby/strings/expert/zero_copy_substring.md +1 -0
- data/files/ruby/strings/middle/demo.json.md +1 -0
- data/files/ruby/strings/middle/dynamic_gsub_blocks.md +12 -0
- data/files/ruby/strings/middle/encoding_force_encode.md +11 -0
- data/files/ruby/strings/middle/heredoc_squiggly.md +17 -0
- data/files/ruby/strings/middle/logging_demos.md.md +1 -0
- data/files/ruby/strings/middle/mutable_string_concatenation.md +12 -0
- data/files/ruby/strings/middle/nested_interpolation.md +9 -0
- data/files/ruby/strings/middle/percent_string_literals.md +11 -0
- data/files/ruby/strings/middle/regex_named_captures.md +10 -0
- data/files/ruby/strings/middle/scrub_invalid_bytes.md +10 -0
- data/files/ruby/strings/middle/session_parse.md +1 -0
- data/files/ruby/strings/middle/string_formatting_sprintf.md +12 -0
- data/files/ruby/strings/middle/string_slicing_ranges.md +12 -0
- data/files/ruby/symbols/advanced/symbol_dynamic_memoization.md +29 -0
- data/files/ruby/symbols/advanced/symbol_pattern_matching.md +25 -0
- data/files/ruby/symbols/advanced/symbol_to_proc.md +15 -0
- data/files/ruby/symbols/beginner/dynamic_symbol_creation.md +16 -0
- data/files/ruby/symbols/beginner/symbol_as_method_identifier.md +20 -0
- data/files/ruby/symbols/beginner/symbol_vs_string.md +14 -0
- data/files/ruby/symbols/expert/dsl_metaprogramming_with_symbols.md +27 -0
- data/files/ruby/symbols/expert/secure_dynamic_symbol_creation.md +20 -0
- data/files/ruby/symbols/expert/symbol_garbage_collection_inspection.md +16 -0
- data/files/ruby/symbols/middle/dynamic_method_definition.md +20 -0
- data/files/ruby/symbols/middle/dynamic_method_invocation.md +20 -0
- data/files/ruby/symbols/middle/symbol_to_proc_enumeration.md +12 -0
- data/files/ruby/syntax/advanced/define_method_with_closure.md +17 -0
- data/files/ruby/syntax/advanced/endless_method_definition.md +14 -0
- data/files/ruby/syntax/advanced/flip_flop_operator.md +14 -0
- data/files/ruby/syntax/advanced/keyword_splat_destructuring.md +15 -0
- data/files/ruby/syntax/advanced/numbered_block_parameters.md +14 -0
- data/files/ruby/syntax/advanced/pattern_matching_destructuring.md +13 -0
- data/files/ruby/syntax/advanced/refinement_scoping.md +18 -0
- data/files/ruby/syntax/advanced/singleton_class_eval.md +14 -0
- data/files/ruby/syntax/advanced/to_proc_shorthand.md +12 -0
- data/files/ruby/syntax/advanced/trace_point_debugging.md +12 -0
- data/files/ruby/syntax/beginner/adding_comments.md +14 -0
- data/files/ruby/syntax/beginner/array_basics.md +8 -0
- data/files/ruby/syntax/beginner/defining_methods.md +10 -0
- data/files/ruby/syntax/beginner/hash_basics.md +8 -0
- data/files/ruby/syntax/beginner/iterating_with_each.md +13 -0
- data/files/ruby/syntax/beginner/simple_conditionals.md +16 -0
- data/files/ruby/syntax/beginner/string_interpolation.md +8 -0
- data/files/ruby/syntax/beginner/symbols_vs_strings.md +8 -0
- data/files/ruby/syntax/beginner/understanding_blocks.md +10 -0
- data/files/ruby/syntax/beginner/using_variables.md +8 -0
- data/files/ruby/syntax/expert/dynamic_define_method.md +16 -0
- data/files/ruby/syntax/expert/eigenclass_dsl.md +26 -0
- data/files/ruby/syntax/expert/endless_method_definitions.md +14 -0
- data/files/ruby/syntax/expert/infinite_enumerator.md +14 -0
- data/files/ruby/syntax/expert/keyword_arg_forwarding.md +16 -0
- data/files/ruby/syntax/expert/nested_hash_pattern.md +16 -0
- data/files/ruby/syntax/expert/numbered_parameters.md +18 -0
- data/files/ruby/syntax/expert/pattern_matching_guards.md +17 -0
- data/files/ruby/syntax/expert/scoped_refinements.md +24 -0
- data/files/ruby/syntax/expert/yield_self_then.md +12 -0
- data/files/ruby/syntax/middle/array_tally.md +9 -0
- data/files/ruby/syntax/middle/destructuring_assignment.md +14 -0
- data/files/ruby/syntax/middle/dig_method.md +16 -0
- data/files/ruby/syntax/middle/frozen_string_literal.md +14 -0
- data/files/ruby/syntax/middle/hash_transform_methods.md +15 -0
- data/files/ruby/syntax/middle/numbered_block_parameters.md +17 -0
- data/files/ruby/syntax/middle/pattern_matching_case_in.md +16 -0
- data/files/ruby/syntax/middle/safe_navigation_operator.md +15 -0
- data/files/ruby/syntax/middle/symbol_to_proc.md +14 -0
- data/files/ruby/syntax/middle/tap_debugging.md +11 -0
- data/files/ruby/tempfiles/advanced/atomic_tempfile_replacement.md +19 -0
- data/files/ruby/tempfiles/advanced/encrypted_tempfile_openssl.md +27 -0
- data/files/ruby/tempfiles/beginner/tempfile_basic_creation.md +19 -0
- data/files/ruby/tempfiles/beginner/tempfile_with_block_cleanup.md +14 -0
- data/files/ruby/tempfiles/expert/otmpfile_anonymous.md +23 -0
- data/files/ruby/tempfiles/expert/secure_wipe_tempfile.md +41 -0
- data/files/ruby/tempfiles/middle/tempfile_auto_cleanup.md +14 -0
- data/files/ruby/tempfiles/middle/tempfile_custom_extension_and_dir.md +17 -0
- data/files/ruby/threads/advanced/graceful_thread_shutdown.md +48 -0
- data/files/ruby/threads/advanced/prioritized_queue_and_conditionvariable.md +47 -0
- data/files/ruby/threads/advanced/thread_local_memoization.md +30 -0
- data/files/ruby/threads/advanced/thread_pool_executor_concurrent_ruby.md +26 -0
- data/files/ruby/threads/beginner/thread_basic_creation.md +15 -0
- data/files/ruby/threads/beginner/thread_joining.md +15 -0
- data/files/ruby/threads/beginner/thread_mutex_usage.md +23 -0
- data/files/ruby/threads/beginner/thread_passing_arguments.md +17 -0
- data/files/ruby/threads/expert/barrier_synchronization_with_conditionvariable.md +43 -0
- data/files/ruby/threads/expert/thread_pool_with_sized_queue.md +41 -0
- data/files/ruby/threads/expert/thread_safe_lru_cache_with_monitor.md +79 -0
- data/files/ruby/threads/expert/timeout_handling_with_thread_handle_interrupt.md +35 -0
- data/files/ruby/threads/middle/graceful_thread_lifecycle.md +23 -0
- data/files/ruby/threads/middle/mutex_synchronize_shared_data.md +23 -0
- data/files/ruby/threads/middle/queue_producer_consumer.md +30 -0
- data/files/ruby/threads/middle/thread_local_variables.md +13 -0
- data/files/ruby/uri/advanced/custom_uri_scheme.md +20 -0
- data/files/ruby/uri/advanced/idn_support_punycode.md +20 -0
- data/files/ruby/uri/advanced/query_param_merging.md +19 -0
- data/files/ruby/uri/beginner/build_url_with_query.md +13 -0
- data/files/ruby/uri/beginner/encode_decode_query.md +16 -0
- data/files/ruby/uri/beginner/parse_url.md +16 -0
- data/files/ruby/uri/expert/advanced_uri_merging.md +21 -0
- data/files/ruby/uri/expert/custom_percent_encoding.md +18 -0
- data/files/ruby/uri/expert/custom_uri_scheme.md +27 -0
- data/files/ruby/uri/middle/constructing_uris_with_encoding.md +19 -0
- data/files/ruby/uri/middle/merging_and_resolving_relative_uris.md +18 -0
- data/files/ruby/uri/middle/parsing_modifying_query_params.md +20 -0
- data/files/ruby/variables/advanced/dynamic_instance_variables.md +31 -0
- data/files/ruby/variables/advanced/dynamic_local_variables.md +23 -0
- data/files/ruby/variables/advanced/thread_local_variables.md +20 -0
- data/files/ruby/variables/beginner/clear_variable_naming.md +13 -0
- data/files/ruby/variables/beginner/multiple_assignment.md +11 -0
- data/files/ruby/variables/beginner/string_interpolation.md +10 -0
- data/files/ruby/variables/expert/binding_local_variable_manipulation_expert.md +16 -0
- data/files/ruby/variables/expert/dynamic_constant_management_expert.md +20 -0
- data/files/ruby/variables/expert/thread_fiber_local_variables_expert.md +20 -0
- data/files/ruby/variables/middle/block_vs_method_variable_scope.md +26 -0
- data/files/ruby/variables/middle/memoization_with_or_equal.md +23 -0
- data/files/ruby/variables/middle/parallel_assignment_and_splat.md +19 -0
- data/files/ruby/xml/advanced/high_performance_ox.md +34 -0
- data/files/ruby/xml/advanced/sax_streaming_large_xml.md +28 -0
- data/files/ruby/xml/advanced/xpath_with_namespaces.md +30 -0
- data/files/ruby/xml/beginner/basic_parsing_with_rexml.md +20 -0
- data/files/ruby/xml/beginner/building_xml_with_nokogiri_builder.md +33 -0
- data/files/ruby/xml/beginner/parsing_xml_with_nokogiri.md +25 -0
- data/files/ruby/xml/expert/custom_sax_handler_performance.md +42 -0
- data/files/ruby/xml/expert/nokogiri_builder_namespaces_schema.md +31 -0
- data/files/ruby/xml/expert/nokogiri_xml_reader_streaming.md +20 -0
- data/files/ruby/xml/middle/build_xml_with_builder.md +26 -0
- data/files/ruby/xml/middle/modify_xml_nodes_nokogiri.md +30 -0
- data/files/ruby/xml/middle/parse_xml_with_namespaces.md +24 -0
- data/files/ruby/yaml/advanced/custom_yaml_serialization.md +40 -0
- data/files/ruby/yaml/advanced/secure_yaml_safe_load.md +38 -0
- data/files/ruby/yaml/advanced/streaming_yaml_parsing.md +34 -0
- data/files/ruby/yaml/beginner/dump_to_yaml.md +19 -0
- data/files/ruby/yaml/beginner/load_yaml_file.md +14 -0
- data/files/ruby/yaml/beginner/safe_parse_yaml_string.md +18 -0
- data/files/ruby/yaml/expert/custom_psych_domain_type.md +34 -0
- data/files/ruby/yaml/expert/secure_yaml_safe_load.md +32 -0
- data/files/ruby/yaml/expert/streaming_yaml_parser.md +32 -0
- data/files/ruby/yaml/middle/custom_yaml_serialization.md +26 -0
- data/files/ruby/yaml/middle/safe_load_yaml.md +25 -0
- data/files/ruby/yaml/middle/yaml_aliases_anchors.md +28 -0
- data/files/sql/general/advanced/expression_and_partial_indexes.md +13 -0
- data/files/sql/general/advanced/full_text_search_configurations.md +14 -0
- data/files/sql/general/advanced/jsonb_indexed_queries.md +12 -0
- data/files/sql/general/advanced/lateral_joins_for_dynamic_subqueries.md +16 -0
- data/files/sql/general/advanced/materialized_views_optimization.md +15 -0
- data/files/sql/general/advanced/merge_upsert_statements.md +19 -0
- data/files/sql/general/advanced/optimizer_hints_and_plans.md +14 -0
- data/files/sql/general/advanced/pivot_queries_crosstab.md +14 -0
- data/files/sql/general/advanced/recursive_cte_hierarchical_queries.md +17 -0
- data/files/sql/general/advanced/window_functions_row_number.md +12 -0
- data/files/sql/general/beginner/basic_inner_join.md +11 -0
- data/files/sql/general/beginner/count_rows.md +11 -0
- data/files/sql/general/beginner/filter_with_where.md +11 -0
- data/files/sql/general/beginner/group_by_clause.md +11 -0
- data/files/sql/general/beginner/insert_into_table.md +10 -0
- data/files/sql/general/beginner/limit_results.md +12 -0
- data/files/sql/general/beginner/select_specific_columns.md +10 -0
- data/files/sql/general/beginner/sort_results_order_by.md +11 -0
- data/files/sql/general/beginner/update_and_delete_records.md +16 -0
- data/files/sql/general/beginner/use_column_aliases.md +10 -0
- data/files/sql/general/expert/explain_analyze_tuning.md +14 -0
- data/files/sql/general/expert/jsonb_indexing.md +15 -0
- data/files/sql/general/expert/lateral_joins.md +14 -0
- data/files/sql/general/expert/materialized_views_refresh.md +18 -0
- data/files/sql/general/expert/partition_pruning.md +21 -0
- data/files/sql/general/expert/pivot_unpivot.md +23 -0
- data/files/sql/general/expert/recursive_cte_hierarchies.md +19 -0
- data/files/sql/general/expert/row_level_security.md +17 -0
- data/files/sql/general/expert/upsert_on_conflict.md +13 -0
- data/files/sql/general/expert/window_function_advanced_analytics.md +18 -0
- data/files/sql/general/middle/batch_inserts_updates.md +17 -0
- data/files/sql/general/middle/cte_for_complex_queries.md +15 -0
- data/files/sql/general/middle/full_text_search.md +16 -0
- data/files/sql/general/middle/index_usage_monitoring.md +13 -0
- data/files/sql/general/middle/join_performance_tips.md +10 -0
- data/files/sql/general/middle/jsonb_querying.md +12 -0
- data/files/sql/general/middle/parameterized_queries_security.md +10 -0
- data/files/sql/general/middle/query_plan_analysis.md +10 -0
- data/files/sql/general/middle/upsert_with_on_conflict.md +11 -0
- data/files/sql/general/middle/window_functions_usage.md +12 -0
- data/files/sql/mysql/advanced/cte_recursive.md +13 -0
- data/files/sql/mysql/advanced/explain_analyze.md +10 -0
- data/files/sql/mysql/advanced/fulltext_boolean_weights.md +13 -0
- data/files/sql/mysql/advanced/generated_columns.md +9 -0
- data/files/sql/mysql/advanced/json_functions.md +10 -0
- data/files/sql/mysql/advanced/partitioning_range.md +11 -0
- data/files/sql/mysql/advanced/performance_schema.md +14 -0
- data/files/sql/mysql/advanced/spatial_index.md +15 -0
- data/files/sql/mysql/advanced/transaction_isolation.md +10 -0
- data/files/sql/mysql/advanced/window_running_total.md +10 -0
- data/files/sql/mysql/beginner/count_aggregate.md +13 -0
- data/files/sql/mysql/beginner/delete_records.md +13 -0
- data/files/sql/mysql/beginner/filter_with_where.md +13 -0
- data/files/sql/mysql/beginner/group_by_results.md +10 -0
- data/files/sql/mysql/beginner/inner_join.md +9 -0
- data/files/sql/mysql/beginner/insert_data.md +14 -0
- data/files/sql/mysql/beginner/limit_results.md +14 -0
- data/files/sql/mysql/beginner/order_by_clause.md +14 -0
- data/files/sql/mysql/beginner/select_all_columns.md +7 -0
- data/files/sql/mysql/beginner/update_records.md +14 -0
- data/files/sql/mysql/expert/advanced_partition_pruning.md +18 -0
- data/files/sql/mysql/expert/extended_statistics_multicolumn_selectivity.md +14 -0
- data/files/sql/mysql/expert/generated_columns_json_optimization.md +13 -0
- data/files/sql/mysql/expert/invisible_indexes_testing.md +18 -0
- data/files/sql/mysql/expert/optimizer_hints_query_forcing.md +13 -0
- data/files/sql/mysql/expert/performance_schema_query_profiling.md +18 -0
- data/files/sql/mysql/expert/recursive_cte_hierarchies.md +16 -0
- data/files/sql/mysql/expert/user_defined_functions_extending.md +30 -0
- data/files/sql/mysql/expert/window_functions_running_totals.md +16 -0
- data/files/sql/mysql/middle/ctes_common_table_expressions.md +14 -0
- data/files/sql/mysql/middle/explain_query.md +9 -0
- data/files/sql/mysql/middle/fulltext_search.md +10 -0
- data/files/sql/mysql/middle/group_concat_usage.md +11 -0
- data/files/sql/mysql/middle/index_usage.md +7 -0
- data/files/sql/mysql/middle/json_functions.md +12 -0
- data/files/sql/mysql/middle/limit_offset_performance.md +13 -0
- data/files/sql/mysql/middle/regex_search.md +12 -0
- data/files/sql/mysql/middle/user_variables.md +13 -0
- data/files/sql/mysql/middle/window_functions.md +10 -0
- data/files/sql/postgresql/advanced/declarative_partitioning_range.md +16 -0
- data/files/sql/postgresql/advanced/full_text_search_tsvector.md +15 -0
- data/files/sql/postgresql/advanced/jsonb_path_query.md +9 -0
- data/files/sql/postgresql/advanced/lateral_joins.md +14 -0
- data/files/sql/postgresql/advanced/materialized_view_concurrent_refresh.md +13 -0
- data/files/sql/postgresql/advanced/parallel_query_execution.md +12 -0
- data/files/sql/postgresql/advanced/partial_expression_index.md +11 -0
- data/files/sql/postgresql/advanced/recursive_cte_hierarchy.md +15 -0
- data/files/sql/postgresql/advanced/upsert_on_conflict.md +10 -0
- data/files/sql/postgresql/advanced/window_function_rank.md +13 -0
- data/files/sql/postgresql/beginner/aggregate_functions.md +10 -0
- data/files/sql/postgresql/beginner/basic_join.md +15 -0
- data/files/sql/postgresql/beginner/connect_to_db.md +12 -0
- data/files/sql/postgresql/beginner/create_table.md +11 -0
- data/files/sql/postgresql/beginner/delete_data.md +12 -0
- data/files/sql/postgresql/beginner/insert_data.md +11 -0
- data/files/sql/postgresql/beginner/order_by_limit.md +9 -0
- data/files/sql/postgresql/beginner/select_basic.md +10 -0
- data/files/sql/postgresql/beginner/update_data.md +14 -0
- data/files/sql/postgresql/beginner/where_clause.md +12 -0
- data/files/sql/postgresql/expert/autovacuum_and_bloat_analysis.md +18 -0
- data/files/sql/postgresql/expert/dynamic_sql_in_plpgsql.md +19 -0
- data/files/sql/postgresql/expert/jsonb_gin_expression_indexes.md +17 -0
- data/files/sql/postgresql/expert/logical_replication_setup.md +16 -0
- data/files/sql/postgresql/expert/parallel_query_tuning.md +14 -0
- data/files/sql/postgresql/expert/partition_pruning_and_wise_joins.md +23 -0
- data/files/sql/postgresql/expert/postgres_fdw_foreign_data_wrapper.md +19 -0
- data/files/sql/postgresql/expert/recursive_cte_graph_traversal.md +18 -0
- data/files/sql/postgresql/expert/window_function_filter_clause.md +11 -0
- data/files/sql/postgresql/middle/full_text_search.md +15 -0
- data/files/sql/postgresql/middle/jsonb_query_indexing.md +13 -0
- data/files/sql/postgresql/middle/lateral_joins_subqueries.md +13 -0
- data/files/sql/postgresql/middle/materialized_views.md +15 -0
- data/files/sql/postgresql/middle/partial_indexes.md +14 -0
- data/files/sql/postgresql/middle/plpgsql_triggers_audit.md +29 -0
- data/files/sql/postgresql/middle/recursive_cte_hierarchy.md +18 -0
- data/files/sql/postgresql/middle/table_partitioning_range.md +16 -0
- data/files/sql/postgresql/middle/upsert_on_conflict.md +11 -0
- data/files/sql/postgresql/middle/window_functions_running_totals.md +12 -0
- data/files/sql/sqlite/advanced/explain_query_planner.md +11 -0
- data/files/sql/sqlite/advanced/fts5_full_text_search.md +20 -0
- data/files/sql/sqlite/advanced/json1_extension.md +18 -0
- data/files/sql/sqlite/advanced/partial_indexes.md +14 -0
- data/files/sql/sqlite/advanced/pragma_performance_tuning.md +13 -0
- data/files/sql/sqlite/advanced/recursive_ctes.md +14 -0
- data/files/sql/sqlite/advanced/rtree_spatial_indexing.md +17 -0
- data/files/sql/sqlite/advanced/upsert_on_conflict.md +17 -0
- data/files/sql/sqlite/advanced/wal_journal_mode.md +13 -0
- data/files/sql/sqlite/advanced/window_functions.md +16 -0
- data/files/sql/sqlite/beginner/aggregate_functions.md +11 -0
- data/files/sql/sqlite/beginner/basic_crud_operations.md +24 -0
- data/files/sql/sqlite/beginner/creating_a_database.md +11 -0
- data/files/sql/sqlite/beginner/creating_indexes.md +11 -0
- data/files/sql/sqlite/beginner/limiting_results.md +11 -0
- data/files/sql/sqlite/beginner/ordering_results.md +11 -0
- data/files/sql/sqlite/beginner/selecting_specific_columns.md +8 -0
- data/files/sql/sqlite/beginner/sqlite_installation.md +13 -0
- data/files/sql/sqlite/beginner/using_transactions.md +13 -0
- data/files/sql/sqlite/beginner/using_where_clause.md +14 -0
- data/files/sql/sqlite/expert/custom_sql_functions_c.md +24 -0
- data/files/sql/sqlite/expert/explain_query_plan_optimization.md +14 -0
- data/files/sql/sqlite/expert/fts5_custom_tokenizer.md +13 -0
- data/files/sql/sqlite/expert/json1_complex_queries.md +13 -0
- data/files/sql/sqlite/expert/partial_expression_indexes.md +11 -0
- data/files/sql/sqlite/expert/pragma_low_level_optimization.md +13 -0
- data/files/sql/sqlite/expert/recursive_cte_hierarchical_queries.md +16 -0
- data/files/sql/sqlite/expert/virtual_tables_external.md +13 -0
- data/files/sql/sqlite/expert/wal_checkpoint_tuning.md +13 -0
- data/files/sql/sqlite/expert/window_functions_analytics.md +14 -0
- data/files/sql/sqlite/middle/common_table_expressions.md +20 -0
- data/files/sql/sqlite/middle/fts5_full_text_search.md +17 -0
- data/files/sql/sqlite/middle/json_functions.md +19 -0
- data/files/sql/sqlite/middle/partial_indexes.md +12 -0
- data/files/sql/sqlite/middle/pragma_performance_tuning.md +13 -0
- data/files/sql/sqlite/middle/recursive_cte_hierarchy.md +16 -0
- data/files/sql/sqlite/middle/timestamp_triggers.md +30 -0
- data/files/sql/sqlite/middle/transaction_batching.md +13 -0
- data/files/sql/sqlite/middle/upsert_on_conflict.md +15 -0
- data/files/sql/sqlite/middle/window_functions_row_number.md +15 -0
- data/lib/generators/get/smart/install_generator.rb +16 -0
- data/lib/generators/get/smart/templates/get_smart.rb +29 -0
- data/lib/get/smart/ai/generator.rb +194 -0
- data/lib/get/smart/app_context.rb +20 -0
- data/lib/get/smart/collection.rb +17 -0
- data/lib/get/smart/learning_path.rb +37 -0
- data/lib/get/smart/logic.rb +95 -0
- data/lib/get/smart/memory.rb +38 -0
- data/lib/get/smart/railtie.rb +26 -0
- data/lib/get/smart/tip.rb +49 -0
- data/lib/get/smart/topic.rb +12 -0
- data/lib/get/smart/topics.rb +30 -0
- data/lib/get/smart/version.rb +5 -0
- data/lib/get/smart.rb +79 -0
- data/lib/tasks/get/smart_tasks.rake +6 -0
- metadata +3115 -0
metadata
ADDED
@@ -0,0 +1,3115 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: get-smart
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Igor Kasyanchuk
|
8
|
+
bindir: bin
|
9
|
+
cert_chain: []
|
10
|
+
date: 2025-05-03 00:00:00.000000000 Z
|
11
|
+
dependencies:
|
12
|
+
- !ruby/object:Gem::Dependency
|
13
|
+
name: rails
|
14
|
+
requirement: !ruby/object:Gem::Requirement
|
15
|
+
requirements:
|
16
|
+
- - ">="
|
17
|
+
- !ruby/object:Gem::Version
|
18
|
+
version: '0'
|
19
|
+
type: :runtime
|
20
|
+
prerelease: false
|
21
|
+
version_requirements: !ruby/object:Gem::Requirement
|
22
|
+
requirements:
|
23
|
+
- - ">="
|
24
|
+
- !ruby/object:Gem::Version
|
25
|
+
version: '0'
|
26
|
+
- !ruby/object:Gem::Dependency
|
27
|
+
name: tty-markdown
|
28
|
+
requirement: !ruby/object:Gem::Requirement
|
29
|
+
requirements:
|
30
|
+
- - ">="
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: '0'
|
33
|
+
type: :runtime
|
34
|
+
prerelease: false
|
35
|
+
version_requirements: !ruby/object:Gem::Requirement
|
36
|
+
requirements:
|
37
|
+
- - ">="
|
38
|
+
- !ruby/object:Gem::Version
|
39
|
+
version: '0'
|
40
|
+
- !ruby/object:Gem::Dependency
|
41
|
+
name: tty-box
|
42
|
+
requirement: !ruby/object:Gem::Requirement
|
43
|
+
requirements:
|
44
|
+
- - ">="
|
45
|
+
- !ruby/object:Gem::Version
|
46
|
+
version: '0'
|
47
|
+
type: :runtime
|
48
|
+
prerelease: false
|
49
|
+
version_requirements: !ruby/object:Gem::Requirement
|
50
|
+
requirements:
|
51
|
+
- - ">="
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: '0'
|
54
|
+
- !ruby/object:Gem::Dependency
|
55
|
+
name: tty-tree
|
56
|
+
requirement: !ruby/object:Gem::Requirement
|
57
|
+
requirements:
|
58
|
+
- - ">="
|
59
|
+
- !ruby/object:Gem::Version
|
60
|
+
version: '0'
|
61
|
+
type: :runtime
|
62
|
+
prerelease: false
|
63
|
+
version_requirements: !ruby/object:Gem::Requirement
|
64
|
+
requirements:
|
65
|
+
- - ">="
|
66
|
+
- !ruby/object:Gem::Version
|
67
|
+
version: '0'
|
68
|
+
- !ruby/object:Gem::Dependency
|
69
|
+
name: colorize
|
70
|
+
requirement: !ruby/object:Gem::Requirement
|
71
|
+
requirements:
|
72
|
+
- - ">="
|
73
|
+
- !ruby/object:Gem::Version
|
74
|
+
version: '0'
|
75
|
+
type: :runtime
|
76
|
+
prerelease: false
|
77
|
+
version_requirements: !ruby/object:Gem::Requirement
|
78
|
+
requirements:
|
79
|
+
- - ">="
|
80
|
+
- !ruby/object:Gem::Version
|
81
|
+
version: '0'
|
82
|
+
- !ruby/object:Gem::Dependency
|
83
|
+
name: rspec-rails
|
84
|
+
requirement: !ruby/object:Gem::Requirement
|
85
|
+
requirements:
|
86
|
+
- - ">="
|
87
|
+
- !ruby/object:Gem::Version
|
88
|
+
version: '0'
|
89
|
+
type: :development
|
90
|
+
prerelease: false
|
91
|
+
version_requirements: !ruby/object:Gem::Requirement
|
92
|
+
requirements:
|
93
|
+
- - ">="
|
94
|
+
- !ruby/object:Gem::Version
|
95
|
+
version: '0'
|
96
|
+
- !ruby/object:Gem::Dependency
|
97
|
+
name: debug
|
98
|
+
requirement: !ruby/object:Gem::Requirement
|
99
|
+
requirements:
|
100
|
+
- - ">="
|
101
|
+
- !ruby/object:Gem::Version
|
102
|
+
version: '0'
|
103
|
+
type: :development
|
104
|
+
prerelease: false
|
105
|
+
version_requirements: !ruby/object:Gem::Requirement
|
106
|
+
requirements:
|
107
|
+
- - ">="
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
version: '0'
|
110
|
+
- !ruby/object:Gem::Dependency
|
111
|
+
name: wrapped_print
|
112
|
+
requirement: !ruby/object:Gem::Requirement
|
113
|
+
requirements:
|
114
|
+
- - ">="
|
115
|
+
- !ruby/object:Gem::Version
|
116
|
+
version: '0'
|
117
|
+
type: :development
|
118
|
+
prerelease: false
|
119
|
+
version_requirements: !ruby/object:Gem::Requirement
|
120
|
+
requirements:
|
121
|
+
- - ">="
|
122
|
+
- !ruby/object:Gem::Version
|
123
|
+
version: '0'
|
124
|
+
- !ruby/object:Gem::Dependency
|
125
|
+
name: simplecov
|
126
|
+
requirement: !ruby/object:Gem::Requirement
|
127
|
+
requirements:
|
128
|
+
- - ">="
|
129
|
+
- !ruby/object:Gem::Version
|
130
|
+
version: '0'
|
131
|
+
type: :development
|
132
|
+
prerelease: false
|
133
|
+
version_requirements: !ruby/object:Gem::Requirement
|
134
|
+
requirements:
|
135
|
+
- - ">="
|
136
|
+
- !ruby/object:Gem::Version
|
137
|
+
version: '0'
|
138
|
+
- !ruby/object:Gem::Dependency
|
139
|
+
name: ruby-openai
|
140
|
+
requirement: !ruby/object:Gem::Requirement
|
141
|
+
requirements:
|
142
|
+
- - ">="
|
143
|
+
- !ruby/object:Gem::Version
|
144
|
+
version: '0'
|
145
|
+
type: :development
|
146
|
+
prerelease: false
|
147
|
+
version_requirements: !ruby/object:Gem::Requirement
|
148
|
+
requirements:
|
149
|
+
- - ">="
|
150
|
+
- !ruby/object:Gem::Version
|
151
|
+
version: '0'
|
152
|
+
- !ruby/object:Gem::Dependency
|
153
|
+
name: dotenv
|
154
|
+
requirement: !ruby/object:Gem::Requirement
|
155
|
+
requirements:
|
156
|
+
- - ">="
|
157
|
+
- !ruby/object:Gem::Version
|
158
|
+
version: '0'
|
159
|
+
type: :development
|
160
|
+
prerelease: false
|
161
|
+
version_requirements: !ruby/object:Gem::Requirement
|
162
|
+
requirements:
|
163
|
+
- - ">="
|
164
|
+
- !ruby/object:Gem::Version
|
165
|
+
version: '0'
|
166
|
+
description: Learn Ruby and Rails by examples
|
167
|
+
email:
|
168
|
+
- igorkasyanchuk@gmail.com
|
169
|
+
executables: []
|
170
|
+
extensions: []
|
171
|
+
extra_rdoc_files: []
|
172
|
+
files:
|
173
|
+
- MIT-LICENSE
|
174
|
+
- README.md
|
175
|
+
- Rakefile
|
176
|
+
- files/gems/acts-as-taggable-on/advanced/custom_delimiters_unicode_normalization.md
|
177
|
+
- files/gems/acts-as-taggable-on/advanced/optimize_tag_query_with_joins.md
|
178
|
+
- files/gems/acts-as-taggable-on/advanced/polymorphic_tagging_across_models.md
|
179
|
+
- files/gems/acts-as-taggable-on/beginner/add_tags_to_model.md
|
180
|
+
- files/gems/acts-as-taggable-on/beginner/query_tags.md
|
181
|
+
- files/gems/acts-as-taggable-on/beginner/setup_gem.md
|
182
|
+
- files/gems/acts-as-taggable-on/expert/advanced_search_and_caching.md
|
183
|
+
- files/gems/acts-as-taggable-on/expert/dynamic_tag_contexts.md
|
184
|
+
- files/gems/acts-as-taggable-on/expert/hierarchical_tags_with_ancestry.md
|
185
|
+
- files/gems/acts-as-taggable-on/middle/caching_tag_counts.md
|
186
|
+
- files/gems/acts-as-taggable-on/middle/multiple_tag_contexts.md
|
187
|
+
- files/gems/acts-as-taggable-on/middle/querying_tagged_models.md
|
188
|
+
- files/gems/bcrypt/advanced/add_pepper_to_bcrypt.md
|
189
|
+
- files/gems/bcrypt/advanced/async_password_rehash.md
|
190
|
+
- files/gems/bcrypt/advanced/dynamic_bcrypt_cost.md
|
191
|
+
- files/gems/bcrypt/beginner/bcrypt_authentication.md
|
192
|
+
- files/gems/bcrypt/beginner/bcrypt_installation.md
|
193
|
+
- files/gems/bcrypt/beginner/bcrypt_model_setup.md
|
194
|
+
- files/gems/bcrypt/expert/bcrypt_async_hashing.md
|
195
|
+
- files/gems/bcrypt/expert/bcrypt_legacy_migration.md
|
196
|
+
- files/gems/bcrypt/expert/bcrypt_pepper_cost_configuration.md
|
197
|
+
- files/gems/bcrypt/middle/bcrypt_custom_cost.md
|
198
|
+
- files/gems/bcrypt/middle/bcrypt_generate_and_verify.md
|
199
|
+
- files/gems/bcrypt/middle/bcrypt_rehash_on_login.md
|
200
|
+
- files/gems/chartkick/advanced/after_render_hook.md
|
201
|
+
- files/gems/chartkick/advanced/custom_tooltips_formatters.md
|
202
|
+
- files/gems/chartkick/advanced/multi_axis_charts.md
|
203
|
+
- files/gems/chartkick/advanced/streaming_via_action_cable.md
|
204
|
+
- files/gems/chartkick/beginner/basic_line_chart.md
|
205
|
+
- files/gems/chartkick/beginner/customize_chart_options.md
|
206
|
+
- files/gems/chartkick/beginner/multiple_series_bar_chart.md
|
207
|
+
- files/gems/chartkick/beginner/setup_chartkick.md
|
208
|
+
- files/gems/chartkick/expert/combo_charts_multiple_axes.md
|
209
|
+
- files/gems/chartkick/expert/custom_chartjs_library_options.md
|
210
|
+
- files/gems/chartkick/expert/dynamic_realtime_updates_with_actioncable.md
|
211
|
+
- files/gems/chartkick/expert/sql_cte_aggregation_for_large_datasets.md
|
212
|
+
- files/gems/chartkick/middle/ajax_refresh.md
|
213
|
+
- files/gems/chartkick/middle/custom_chart_options.md
|
214
|
+
- files/gems/chartkick/middle/group_by_period.md
|
215
|
+
- files/gems/chartkick/middle/multiple_series.md
|
216
|
+
- files/gems/counter_culture/advanced/dynamic_conditional_counters.md
|
217
|
+
- files/gems/counter_culture/advanced/weighted_counter_updates.md
|
218
|
+
- files/gems/counter_culture/beginner/counter_culture_basic_usage.md
|
219
|
+
- files/gems/counter_culture/beginner/counter_culture_setup.md
|
220
|
+
- files/gems/counter_culture/expert/batch_async_counter_updates.md
|
221
|
+
- files/gems/counter_culture/expert/multi_level_association_caching.md
|
222
|
+
- files/gems/counter_culture/middle/multiple_counter_usage.md
|
223
|
+
- files/gems/counter_culture/middle/scoped_comment_counter.md
|
224
|
+
- files/gems/devise/advanced/custom_password_strength_validator.md.md
|
225
|
+
- files/gems/devise/advanced/devise_jwt_integration.md.md
|
226
|
+
- files/gems/devise/advanced/dynamic_omniauth_providers.md.md
|
227
|
+
- files/gems/devise/advanced/multiple_user_scopes.md.md
|
228
|
+
- files/gems/devise/beginner/configure_routes.md
|
229
|
+
- files/gems/devise/beginner/customize_devise_views.md
|
230
|
+
- files/gems/devise/beginner/generate_user_model.md
|
231
|
+
- files/gems/devise/beginner/install_devise.md
|
232
|
+
- files/gems/devise/expert/custom_warden_2fa.md
|
233
|
+
- files/gems/devise/expert/dynamic_failure_app_handling.md
|
234
|
+
- files/gems/devise/expert/jwt_stateless_api.md
|
235
|
+
- files/gems/devise/expert/multi_tenant_authentication.md
|
236
|
+
- files/gems/devise/middle/custom_redirect_path.md
|
237
|
+
- files/gems/devise/middle/override_devise_controllers.md
|
238
|
+
- files/gems/devise/middle/permit_extra_params.md
|
239
|
+
- files/gems/devise/middle/rspec_devise_helpers.md
|
240
|
+
- files/gems/factory_bot_rails/advanced/advanced_polymorphic_traits.md
|
241
|
+
- files/gems/factory_bot_rails/advanced/custom_factorybot_strategy.md
|
242
|
+
- files/gems/factory_bot_rails/advanced/transient_dynamic_associations.md
|
243
|
+
- files/gems/factory_bot_rails/beginner/associations.md.md
|
244
|
+
- files/gems/factory_bot_rails/beginner/basic_factory_setup.md.md
|
245
|
+
- files/gems/factory_bot_rails/beginner/using_traits.md.md
|
246
|
+
- files/gems/factory_bot_rails/expert/after_create_callbacks_external_service_setup.md
|
247
|
+
- files/gems/factory_bot_rails/expert/custom_to_create_bulk_insert_strategy.md
|
248
|
+
- files/gems/factory_bot_rails/expert/transient_traits_dynamic_associations.md
|
249
|
+
- files/gems/factory_bot_rails/middle/association_strategies.md
|
250
|
+
- files/gems/factory_bot_rails/middle/unique_sequences.md
|
251
|
+
- files/gems/factory_bot_rails/middle/use_traits.md
|
252
|
+
- files/gems/faker/advanced/custom_provider.md
|
253
|
+
- files/gems/faker/advanced/multilingual_data.md
|
254
|
+
- files/gems/faker/advanced/seed_reproducibility.md
|
255
|
+
- files/gems/faker/beginner/faker_in_tests.md
|
256
|
+
- files/gems/faker/beginner/installing_faker_gem.md
|
257
|
+
- files/gems/faker/beginner/seeding_with_faker.md
|
258
|
+
- files/gems/faker/expert/concurrent_load_testing.md.md
|
259
|
+
- files/gems/faker/expert/custom_faker_provider.md.md
|
260
|
+
- files/gems/faker/expert/dynamic_locale_fallback.md.md
|
261
|
+
- files/gems/faker/middle/faker_locale_configuration.md
|
262
|
+
- files/gems/faker/middle/faker_unique_generator.md
|
263
|
+
- files/gems/faker/middle/faker_with_factorybot.md
|
264
|
+
- files/gems/faraday/advanced/faraday_custom_hmac_middleware.md
|
265
|
+
- files/gems/faraday/advanced/faraday_retry_exponential_backoff.md
|
266
|
+
- files/gems/faraday/beginner/faraday_get_request.md
|
267
|
+
- files/gems/faraday/beginner/faraday_install_config.md
|
268
|
+
- files/gems/faraday/expert/custom_instrumentation_middleware.md
|
269
|
+
- files/gems/faraday/expert/thread_safe_connection_pool.md
|
270
|
+
- files/gems/faraday/middle/custom_middleware_integration.md
|
271
|
+
- files/gems/faraday/middle/timeouts_and_retries.md
|
272
|
+
- files/gems/flipper/advanced/consistent_percentage_rollout.md
|
273
|
+
- files/gems/flipper/advanced/custom_actor_groups.md
|
274
|
+
- files/gems/flipper/beginner/flipper_basic_toggle.md
|
275
|
+
- files/gems/flipper/beginner/flipper_setup.md
|
276
|
+
- files/gems/flipper/expert/custom_instrumentation_statsd.md
|
277
|
+
- files/gems/flipper/expert/multi_region_adapter.md
|
278
|
+
- files/gems/flipper/middle/flipper_custom_user_groups.md
|
279
|
+
- files/gems/flipper/middle/flipper_percentage_rollout.md
|
280
|
+
- files/gems/geocoder/advanced/geocoder_caching_and_fallback_strategies.md
|
281
|
+
- files/gems/geocoder/advanced/polymorphic_geocoding_multiple_models.md
|
282
|
+
- files/gems/geocoder/advanced/postgis_high_performance_queries.md
|
283
|
+
- files/gems/geocoder/beginner/geocoder_install.md
|
284
|
+
- files/gems/geocoder/beginner/geocoder_model_setup.md
|
285
|
+
- files/gems/geocoder/beginner/geocoder_reverse_usage.md
|
286
|
+
- files/gems/geocoder/expert/bulk_reverse_geocoding_sidekiq.md
|
287
|
+
- files/gems/geocoder/expert/optimized_distance_sql.md
|
288
|
+
- files/gems/geocoder/expert/postgis_advanced_queries.md
|
289
|
+
- files/gems/geocoder/middle/customizing_geocoder_config.md
|
290
|
+
- files/gems/geocoder/middle/distance_queries_near_scope.md
|
291
|
+
- files/gems/geocoder/middle/model_geocoding_setup.md
|
292
|
+
- files/gems/httparty/advanced/custom_httparty_parser.md
|
293
|
+
- files/gems/httparty/advanced/httparty_with_retry.md
|
294
|
+
- files/gems/httparty/beginner/basic_get_request.md
|
295
|
+
- files/gems/httparty/beginner/query_params_usage.md
|
296
|
+
- files/gems/httparty/expert/httparty_persistent_connections.md
|
297
|
+
- files/gems/httparty/expert/httparty_typhoeus_adapter.md
|
298
|
+
- files/gems/httparty/middle/httparty_dynamic_query_params.md
|
299
|
+
- files/gems/httparty/middle/httparty_reusable_client.md
|
300
|
+
- files/gems/image_processing/advanced/custom_watermark_processor.md
|
301
|
+
- files/gems/image_processing/advanced/persistent_variant_cache.md
|
302
|
+
- files/gems/image_processing/advanced/streaming_variants.md
|
303
|
+
- files/gems/image_processing/beginner/convert_format_thumbnail.md
|
304
|
+
- files/gems/image_processing/beginner/generate_resized_variant.md
|
305
|
+
- files/gems/image_processing/beginner/install_image_processing.md
|
306
|
+
- files/gems/image_processing/expert/advanced_caching_strategies.md
|
307
|
+
- files/gems/image_processing/expert/custom_mini_magick_operations.md
|
308
|
+
- files/gems/image_processing/expert/parallel_processing_pipeline.md
|
309
|
+
- files/gems/image_processing/middle/background_processing.md
|
310
|
+
- files/gems/image_processing/middle/chain_transformations.md
|
311
|
+
- files/gems/image_processing/middle/variants_resizing_format.md
|
312
|
+
- files/gems/mini_magick/advanced/composite_with_masks.md
|
313
|
+
- files/gems/mini_magick/advanced/multi_page_document_processing.md
|
314
|
+
- files/gems/mini_magick/advanced/stream_processing.md
|
315
|
+
- files/gems/mini_magick/beginner/convert_and_crop.md
|
316
|
+
- files/gems/mini_magick/beginner/install_and_setup.md
|
317
|
+
- files/gems/mini_magick/beginner/resize_image.md
|
318
|
+
- files/gems/mini_magick/expert/gif_optimization_pipeline.md
|
319
|
+
- files/gems/mini_magick/expert/pdf_multipage_annotation.md
|
320
|
+
- files/gems/mini_magick/expert/streaming_image_pipelining.md
|
321
|
+
- files/gems/mini_magick/middle/conditional_resize.md
|
322
|
+
- files/gems/mini_magick/middle/in_memory_processing.md
|
323
|
+
- files/gems/mini_magick/middle/optimize_and_compress.md
|
324
|
+
- files/gems/pundit/advanced/dynamic_policy_scopes.md
|
325
|
+
- files/gems/pundit/advanced/graphql_field_authorization.md
|
326
|
+
- files/gems/pundit/beginner/pundit_basic_policy_usage.md
|
327
|
+
- files/gems/pundit/beginner/pundit_install_setup.md
|
328
|
+
- files/gems/pundit/expert/pundit_dynamic_context_scopes.md
|
329
|
+
- files/gems/pundit/expert/pundit_rspec_custom_matchers.md
|
330
|
+
- files/gems/pundit/middle/policy_scope_in_controller.md
|
331
|
+
- files/gems/pundit/middle/verify_authorization_callbacks.md
|
332
|
+
- files/gems/ransack/advanced/custom_ransacker_computed_fields.md
|
333
|
+
- files/gems/ransack/advanced/define_custom_predicates.md
|
334
|
+
- files/gems/ransack/advanced/nested_association_query.md
|
335
|
+
- files/gems/ransack/beginner/basic_search_form.md
|
336
|
+
- files/gems/ransack/beginner/multi_field_search.md
|
337
|
+
- files/gems/ransack/beginner/sorting_results.md
|
338
|
+
- files/gems/ransack/expert/complex_arel_ransacker_full_name.md
|
339
|
+
- files/gems/ransack/expert/dynamic_whitelisting_ransackable_scopes.md
|
340
|
+
- files/gems/ransack/expert/postgres_full_text_search_predicate.md
|
341
|
+
- files/gems/ransack/middle/ransack_association_search.md
|
342
|
+
- files/gems/ransack/middle/ransack_group_or_conditions.md
|
343
|
+
- files/gems/ransack/middle/ransack_sort_pagination.md
|
344
|
+
- files/gems/redis/advanced/redis_cluster_integration.md
|
345
|
+
- files/gems/redis/advanced/redis_pubsub_connection_pool.md
|
346
|
+
- files/gems/redis/advanced/redis_redlock_distributed_locks.md
|
347
|
+
- files/gems/redis/advanced/redis_streams_event_sourcing.md
|
348
|
+
- files/gems/redis/beginner/connecting_to_redis.md
|
349
|
+
- files/gems/redis/beginner/set_and_get_keys.md
|
350
|
+
- files/gems/redis/beginner/setting_key_expiration.md
|
351
|
+
- files/gems/redis/beginner/working_with_lists.md
|
352
|
+
- files/gems/redis/expert/redis_hyperloglog_unique_counts.md
|
353
|
+
- files/gems/redis/expert/redis_lua_atomic_operations.md
|
354
|
+
- files/gems/redis/expert/redis_redlock_distributed_lock.md
|
355
|
+
- files/gems/redis/expert/redis_streams_event_sourcing.md
|
356
|
+
- files/gems/redis/middle/distributed_lock_redlock.md
|
357
|
+
- files/gems/redis/middle/fragment_caching_redis.md
|
358
|
+
- files/gems/redis/middle/rate_limiter_redis.md
|
359
|
+
- files/gems/redis/middle/session_store_redis.md
|
360
|
+
- files/gems/rspec/advanced/around_hooks_for_transactions.md
|
361
|
+
- files/gems/rspec/advanced/composite_matcher_operators.md
|
362
|
+
- files/gems/rspec/advanced/custom_matcher_chainable.md
|
363
|
+
- files/gems/rspec/advanced/filtering_by_custom_tags.md
|
364
|
+
- files/gems/rspec/advanced/let_lazy_loaded_dependencies.md
|
365
|
+
- files/gems/rspec/advanced/monkey_patch_rspec_dsl.md
|
366
|
+
- files/gems/rspec/advanced/profiling_slow_specs.md
|
367
|
+
- files/gems/rspec/advanced/rspec_configuration_overrides.md
|
368
|
+
- files/gems/rspec/advanced/shared_contexts_with_metadata.md
|
369
|
+
- files/gems/rspec/advanced/verifying_partial_doubles.md
|
370
|
+
- files/gems/rspec/beginner/rspec_after_hooks.md
|
371
|
+
- files/gems/rspec/beginner/rspec_before_hooks.md
|
372
|
+
- files/gems/rspec/beginner/rspec_common_matchers.md
|
373
|
+
- files/gems/rspec/beginner/rspec_describe_blocks.md
|
374
|
+
- files/gems/rspec/beginner/rspec_focus_tag.md
|
375
|
+
- files/gems/rspec/beginner/rspec_it_blocks.md
|
376
|
+
- files/gems/rspec/beginner/rspec_let_usage.md
|
377
|
+
- files/gems/rspec/beginner/rspec_setup.md
|
378
|
+
- files/gems/rspec/beginner/rspec_shared_examples.md
|
379
|
+
- files/gems/rspec/beginner/rspec_subject_definition.md
|
380
|
+
- files/gems/rspec/custom_matchers/advanced/chainable_custom_matchers.md
|
381
|
+
- files/gems/rspec/custom_matchers/advanced/diffable_custom_matchers.md
|
382
|
+
- files/gems/rspec/custom_matchers/advanced/parameterized_block_matchers.md
|
383
|
+
- files/gems/rspec/custom_matchers/beginner/basic_custom_matcher.md
|
384
|
+
- files/gems/rspec/custom_matchers/beginner/custom_failure_message.md
|
385
|
+
- files/gems/rspec/custom_matchers/beginner/parameterized_custom_matcher.md
|
386
|
+
- files/gems/rspec/custom_matchers/expert/diffable_block_expectations.md.md
|
387
|
+
- files/gems/rspec/custom_matchers/expert/dynamic_chaining_matchers.md.md
|
388
|
+
- files/gems/rspec/custom_matchers/expert/metaprogramming_driven_matchers.md.md
|
389
|
+
- files/gems/rspec/custom_matchers/middle/chained_custom_matcher.md
|
390
|
+
- files/gems/rspec/custom_matchers/middle/custom_failure_messages.md
|
391
|
+
- files/gems/rspec/custom_matchers/middle/parameterized_range_matcher.md
|
392
|
+
- files/gems/rspec/expert/advanced_const_mocking.md
|
393
|
+
- files/gems/rspec/expert/custom_composable_matchers.md
|
394
|
+
- files/gems/rspec/expert/custom_formatters.md
|
395
|
+
- files/gems/rspec/expert/hook_order_customization.md
|
396
|
+
- files/gems/rspec/expert/metadata_dynamic_test_generation.md
|
397
|
+
- files/gems/rspec/expert/parallel_testing_db_sharding.md
|
398
|
+
- files/gems/rspec/expert/parametrized_shared_examples.md
|
399
|
+
- files/gems/rspec/expert/performance_profiling.md
|
400
|
+
- files/gems/rspec/expert/vcr_webmock_advanced.md
|
401
|
+
- files/gems/rspec/hooks_and_lifecycle/advanced/metadata_conditional_hooks.md
|
402
|
+
- files/gems/rspec/hooks_and_lifecycle/advanced/orchestrating_external_service.md
|
403
|
+
- files/gems/rspec/hooks_and_lifecycle/advanced/transactional_time_travel.md
|
404
|
+
- files/gems/rspec/hooks_and_lifecycle/beginner/rspec_after_hook.md
|
405
|
+
- files/gems/rspec/hooks_and_lifecycle/beginner/rspec_around_hook.md
|
406
|
+
- files/gems/rspec/hooks_and_lifecycle/beginner/rspec_before_hook.md
|
407
|
+
- files/gems/rspec/hooks_and_lifecycle/expert/around_each_instrumentation.md
|
408
|
+
- files/gems/rspec/hooks_and_lifecycle/expert/metadata_based_hooks.md
|
409
|
+
- files/gems/rspec/hooks_and_lifecycle/expert/prepend_hooks_module.md
|
410
|
+
- files/gems/rspec/hooks_and_lifecycle/middle/around_hooks_custom_setup.md
|
411
|
+
- files/gems/rspec/hooks_and_lifecycle/middle/metadata_filtered_hooks.md
|
412
|
+
- files/gems/rspec/hooks_and_lifecycle/middle/shared_context_lifecycle.md
|
413
|
+
- files/gems/rspec/middle/aggregate_failures.md
|
414
|
+
- files/gems/rspec/middle/around_hooks.md
|
415
|
+
- files/gems/rspec/middle/custom_matchers.md
|
416
|
+
- files/gems/rspec/middle/instance_double_usage.md
|
417
|
+
- files/gems/rspec/middle/let_vs_let_bang.md
|
418
|
+
- files/gems/rspec/middle/leveraging_contexts.md
|
419
|
+
- files/gems/rspec/middle/named_subject.md
|
420
|
+
- files/gems/rspec/middle/shared_examples_usage.md
|
421
|
+
- files/gems/rspec/middle/tagged_examples_filtering.md
|
422
|
+
- files/gems/rspec/middle/verifying_partial_doubles.md
|
423
|
+
- files/gems/rspec/mocks_and_stubs/advanced/instance_double_interface.md
|
424
|
+
- files/gems/rspec/mocks_and_stubs/advanced/nested_doubles_for_complex_dependencies.md
|
425
|
+
- files/gems/rspec/mocks_and_stubs/advanced/partial_spy_mocks.md
|
426
|
+
- files/gems/rspec/mocks_and_stubs/advanced/sequential_return_values.md
|
427
|
+
- files/gems/rspec/mocks_and_stubs/advanced/stub_private_methods.md
|
428
|
+
- files/gems/rspec/mocks_and_stubs/beginner/argument_matching_stub.md
|
429
|
+
- files/gems/rspec/mocks_and_stubs/beginner/chain_method_stub.md
|
430
|
+
- files/gems/rspec/mocks_and_stubs/beginner/instance_double_usage.md
|
431
|
+
- files/gems/rspec/mocks_and_stubs/beginner/mock_expectation_receive.md
|
432
|
+
- files/gems/rspec/mocks_and_stubs/beginner/stub_return_value.md
|
433
|
+
- files/gems/rspec/mocks_and_stubs/expert/class_spy_on_new_with_and_call_original.md
|
434
|
+
- files/gems/rspec/mocks_and_stubs/expert/complex_block_yields_with_and_yield.md
|
435
|
+
- files/gems/rspec/mocks_and_stubs/expert/stub_private_methods_with_prepend.md
|
436
|
+
- files/gems/rspec/mocks_and_stubs/expert/verifying_module_methods_with_class_double.md
|
437
|
+
- files/gems/rspec/mocks_and_stubs/expert/wrap_original_with_and_wrap_original.md
|
438
|
+
- files/gems/rspec/mocks_and_stubs/middle/instance_double_strict_interface.md
|
439
|
+
- files/gems/rspec/mocks_and_stubs/middle/sequential_return_values.md
|
440
|
+
- files/gems/rspec/mocks_and_stubs/middle/stubbing_chained_methods.md
|
441
|
+
- files/gems/rspec/mocks_and_stubs/middle/using_spies_for_assertions.md
|
442
|
+
- files/gems/rspec/mocks_and_stubs/middle/yielding_block_methods.md
|
443
|
+
- files/gems/rspec/shared_examples/advanced/metadata_filtered_shared_examples.md
|
444
|
+
- files/gems/rspec/shared_examples/advanced/parameterized_shared_examples_dsl.md
|
445
|
+
- files/gems/rspec/shared_examples/beginner/shared_examples_dry_specs.md
|
446
|
+
- files/gems/rspec/shared_examples/beginner/shared_examples_with_arguments.md
|
447
|
+
- files/gems/rspec/shared_examples/expert/dynamic_shared_examples_with_metadata.md
|
448
|
+
- files/gems/rspec/shared_examples/expert/parameterized_shared_examples_with_dynamic_classes.md
|
449
|
+
- files/gems/rspec/shared_examples/middle/shared_examples_basic_usage.md
|
450
|
+
- files/gems/rspec/shared_examples/middle/shared_examples_parameterized_usage.md
|
451
|
+
- files/gems/ruby-openai/advanced/batch_embeddings_async.md
|
452
|
+
- files/gems/ruby-openai/advanced/function_calling_advanced.md
|
453
|
+
- files/gems/ruby-openai/advanced/streaming_chat_responses.md
|
454
|
+
- files/gems/ruby-openai/beginner/handle_errors_gracefully.md
|
455
|
+
- files/gems/ruby-openai/beginner/setup_ruby_openai.md
|
456
|
+
- files/gems/ruby-openai/beginner/simple_chat_request.md
|
457
|
+
- files/gems/ruby-openai/expert/advanced_streaming_with_backpressure.md
|
458
|
+
- files/gems/ruby-openai/expert/dynamic_function_call_management.md
|
459
|
+
- files/gems/ruby-openai/expert/high_throughput_rate_limited_requests.md
|
460
|
+
- files/gems/ruby-openai/middle/handle_rate_limit_retries.md
|
461
|
+
- files/gems/ruby-openai/middle/parallel_requests.md
|
462
|
+
- files/gems/ruby-openai/middle/streaming_responses.md
|
463
|
+
- files/gems/sidekiq/advanced/batch_orchestration.md
|
464
|
+
- files/gems/sidekiq/advanced/custom_retry_backoff.md
|
465
|
+
- files/gems/sidekiq/advanced/custom_server_middleware.md
|
466
|
+
- files/gems/sidekiq/advanced/rate_limiting_concurrency.md
|
467
|
+
- files/gems/sidekiq/advanced/unique_job_locking.md
|
468
|
+
- files/gems/sidekiq/beginner/create_basic_worker.md
|
469
|
+
- files/gems/sidekiq/beginner/enqueue_job_from_controller.md
|
470
|
+
- files/gems/sidekiq/beginner/monitor_sidekiq_web_ui.md
|
471
|
+
- files/gems/sidekiq/beginner/pass_arguments_to_worker.md
|
472
|
+
- files/gems/sidekiq/beginner/setup_sidekiq_in_rails.md
|
473
|
+
- files/gems/sidekiq/expert/sidekiq_batch_chaining.md
|
474
|
+
- files/gems/sidekiq/expert/sidekiq_dynamic_autoscaling.md
|
475
|
+
- files/gems/sidekiq/expert/sidekiq_opentelemetry_middleware.md
|
476
|
+
- files/gems/sidekiq/expert/sidekiq_retry_jitter.md
|
477
|
+
- files/gems/sidekiq/expert/sidekiq_tenant_isolation_namespace.md
|
478
|
+
- files/gems/sidekiq/middle/sidekiq_batch_grouping.md
|
479
|
+
- files/gems/sidekiq/middle/sidekiq_custom_middleware.md
|
480
|
+
- files/gems/sidekiq/middle/sidekiq_custom_retry.md
|
481
|
+
- files/gems/sidekiq/middle/sidekiq_schedule_jobs.md
|
482
|
+
- files/gems/sidekiq/middle/sidekiq_testing_in_rspec.md
|
483
|
+
- files/gems/simple_form/advanced/custom_rich_text_input.md
|
484
|
+
- files/gems/simple_form/advanced/custom_wrappers.md
|
485
|
+
- files/gems/simple_form/advanced/nested_associations_cocoon.md
|
486
|
+
- files/gems/simple_form/beginner/simple_form_basic_form.md
|
487
|
+
- files/gems/simple_form/beginner/simple_form_customizing_inputs.md
|
488
|
+
- files/gems/simple_form/beginner/simple_form_installation.md
|
489
|
+
- files/gems/simple_form/expert/custom_formbuilder_macros.md
|
490
|
+
- files/gems/simple_form/expert/custom_js_widget_wrapper.md
|
491
|
+
- files/gems/simple_form/expert/dynamic_nested_associations.md
|
492
|
+
- files/gems/simple_form/middle/collection_inputs.md
|
493
|
+
- files/gems/simple_form/middle/custom_input_wrapper.md
|
494
|
+
- files/gems/simple_form/middle/html_attribute_customization.md
|
495
|
+
- files/gems/solid_queue/advanced/advanced_custom_middleware_integration.md.md
|
496
|
+
- files/gems/solid_queue/advanced/advanced_dynamic_worker_routing.md.md
|
497
|
+
- files/gems/solid_queue/advanced/advanced_exponential_backoff.md.md
|
498
|
+
- files/gems/solid_queue/beginner/define_and_enqueue_job.md
|
499
|
+
- files/gems/solid_queue/beginner/install_and_configure.md
|
500
|
+
- files/gems/solid_queue/beginner/schedule_job_future.md
|
501
|
+
- files/gems/solid_queue/expert/atomic_job_deduplication.md
|
502
|
+
- files/gems/solid_queue/expert/dynamic_queue_sharding.md
|
503
|
+
- files/gems/solid_queue/expert/kafka_broker_implementation.md
|
504
|
+
- files/gems/solid_queue/middle/batch_enqueueing.md
|
505
|
+
- files/gems/solid_queue/middle/custom_queue_configuration.md
|
506
|
+
- files/gems/solid_queue/middle/error_handling_and_retries.md
|
507
|
+
- files/gems/vcr/advanced/vcr_custom_hooks.md
|
508
|
+
- files/gems/vcr/advanced/vcr_custom_request_matching.md
|
509
|
+
- files/gems/vcr/beginner/basic_cassette_usage.md
|
510
|
+
- files/gems/vcr/beginner/install_and_configure_vcr.md
|
511
|
+
- files/gems/vcr/expert/vcr_custom_persister_and_serializer.md
|
512
|
+
- files/gems/vcr/expert/vcr_deep_request_matching_and_hooks.md
|
513
|
+
- files/gems/vcr/middle/custom_request_matchers.md
|
514
|
+
- files/gems/vcr/middle/dynamic_cassette_naming.md
|
515
|
+
- files/gems/view_component/advanced/nested_slots.md
|
516
|
+
- files/gems/view_component/advanced/precompile_and_cache.md
|
517
|
+
- files/gems/view_component/advanced/system_arguments.md
|
518
|
+
- files/gems/view_component/advanced/testing_with_rspec.md
|
519
|
+
- files/gems/view_component/advanced/turbo_stream_integration.md
|
520
|
+
- files/gems/view_component/beginner/view_component_installation.md
|
521
|
+
- files/gems/view_component/beginner/view_component_passing_props.md
|
522
|
+
- files/gems/view_component/beginner/view_component_rendering.md
|
523
|
+
- files/gems/view_component/beginner/view_component_slots.md
|
524
|
+
- files/gems/view_component/beginner/view_component_testing.md
|
525
|
+
- files/gems/view_component/expert/advanced_fragment_caching.md
|
526
|
+
- files/gems/view_component/expert/deep_testing_with_matchers.md
|
527
|
+
- files/gems/view_component/expert/dynamic_slots_composition.md
|
528
|
+
- files/gems/view_component/expert/hotwire_stimulus_integration.md
|
529
|
+
- files/gems/view_component/expert/instrumentation_and_profiling.md
|
530
|
+
- files/gems/view_component/middle/component_caching.md
|
531
|
+
- files/gems/view_component/middle/previewing_components.md
|
532
|
+
- files/gems/view_component/middle/styling_with_css_modules.md
|
533
|
+
- files/gems/view_component/middle/testing_components_with_rspec.md
|
534
|
+
- files/gems/view_component/middle/using_slots.md
|
535
|
+
- files/gems/webmock/advanced/custom_request_matchers_and_callbacks.md
|
536
|
+
- files/gems/webmock/advanced/stub_dynamic_request_patterns.md
|
537
|
+
- files/gems/webmock/beginner/stub_get_requests.md
|
538
|
+
- files/gems/webmock/beginner/verify_http_requests.md
|
539
|
+
- files/gems/webmock/expert/chunked_streaming_response.md
|
540
|
+
- files/gems/webmock/expert/dynamic_request_block_stub.md
|
541
|
+
- files/gems/webmock/middle/match_requests_by_headers.md
|
542
|
+
- files/gems/webmock/middle/stub_dynamic_urls_regex.md
|
543
|
+
- files/javascript/hotwire/advanced/advanced_turbo_stream_targets.md
|
544
|
+
- files/javascript/hotwire/advanced/custom_turbo_stream_action.md
|
545
|
+
- files/javascript/hotwire/advanced/dynamic_turbo_frame_source.md
|
546
|
+
- files/javascript/hotwire/advanced/dynamic_turbo_stream_templates.md
|
547
|
+
- files/javascript/hotwire/advanced/freeze_frame_for_modals.md
|
548
|
+
- files/javascript/hotwire/advanced/global_turbo_progress_bar.md
|
549
|
+
- files/javascript/hotwire/advanced/incremental_updates_with_turbo_streams.md
|
550
|
+
- files/javascript/hotwire/advanced/intercepting_turbo_requests.md
|
551
|
+
- files/javascript/hotwire/advanced/override_form_submission_turbo.md
|
552
|
+
- files/javascript/hotwire/advanced/stimulus_and_turbo_combination.md
|
553
|
+
- files/javascript/hotwire/advanced/stimulus_lifecycle_management.md
|
554
|
+
- files/javascript/hotwire/advanced/stimulus_mutation_observer.md
|
555
|
+
- files/javascript/hotwire/advanced/streaming_large_payloads.md
|
556
|
+
- files/javascript/hotwire/advanced/turbo_error_handling.md
|
557
|
+
- files/javascript/hotwire/advanced/turbo_frame_preload_cache.md
|
558
|
+
- files/javascript/hotwire/advanced/turbo_native_integration.md
|
559
|
+
- files/javascript/hotwire/beginner/basic_stimulus_controller.md
|
560
|
+
- files/javascript/hotwire/beginner/basic_turbo_frame.md
|
561
|
+
- files/javascript/hotwire/beginner/disable_turbo_drive_on_link.md
|
562
|
+
- files/javascript/hotwire/beginner/importmap_pin_turbo.md
|
563
|
+
- files/javascript/hotwire/beginner/install_hotwire.md
|
564
|
+
- files/javascript/hotwire/beginner/install_stimulus.md
|
565
|
+
- files/javascript/hotwire/beginner/render_turbo_stream_response.md
|
566
|
+
- files/javascript/hotwire/beginner/stimulus_actions.md
|
567
|
+
- files/javascript/hotwire/beginner/stimulus_targets.md
|
568
|
+
- files/javascript/hotwire/beginner/stimulus_values.md
|
569
|
+
- files/javascript/hotwire/beginner/target_turbo_frame_navigation.md
|
570
|
+
- files/javascript/hotwire/beginner/turbo_form_remote_submission.md
|
571
|
+
- files/javascript/hotwire/beginner/turbo_programmatic_navigation.md
|
572
|
+
- files/javascript/hotwire/beginner/turbo_stream_append.md
|
573
|
+
- files/javascript/hotwire/beginner/turbo_stream_remove.md
|
574
|
+
- files/javascript/hotwire/expert/stimulus_reflex_hotwire.md
|
575
|
+
- files/javascript/hotwire/expert/stimulus_turbo_event_bridge.md
|
576
|
+
- files/javascript/hotwire/expert/turbo_auth_redirect_handling.md
|
577
|
+
- files/javascript/hotwire/expert/turbo_cable_namespace.md
|
578
|
+
- files/javascript/hotwire/expert/turbo_cache_control.md
|
579
|
+
- files/javascript/hotwire/expert/turbo_custom_validation.md
|
580
|
+
- files/javascript/hotwire/expert/turbo_debugging_profiling.md
|
581
|
+
- files/javascript/hotwire/expert/turbo_direct_upload_progress.md
|
582
|
+
- files/javascript/hotwire/expert/turbo_fragment_caching.md
|
583
|
+
- files/javascript/hotwire/expert/turbo_frame_lazy_load.md
|
584
|
+
- files/javascript/hotwire/expert/turbo_low_level_api.md
|
585
|
+
- files/javascript/hotwire/expert/turbo_native_mobile.md
|
586
|
+
- files/javascript/hotwire/expert/turbo_optimistic_ui.md
|
587
|
+
- files/javascript/hotwire/expert/turbo_stream_batch_updates.md
|
588
|
+
- files/javascript/hotwire/expert/turbo_stream_websocket_integration.md
|
589
|
+
- files/javascript/stimulus/advanced/conditional_controller_activation.md
|
590
|
+
- files/javascript/stimulus/advanced/controller_mixins.md
|
591
|
+
- files/javascript/stimulus/advanced/dynamic_controller_composition.md
|
592
|
+
- files/javascript/stimulus/advanced/dynamic_outlets_binding.md
|
593
|
+
- files/javascript/stimulus/advanced/event_delegation_custom_actions.md
|
594
|
+
- files/javascript/stimulus/advanced/imperative_controller_api.md
|
595
|
+
- files/javascript/stimulus/advanced/lazy_loading_controllers.md
|
596
|
+
- files/javascript/stimulus/advanced/lifecycle_frame_callbacks.md
|
597
|
+
- files/javascript/stimulus/advanced/mutation_observer_adapter.md
|
598
|
+
- files/javascript/stimulus/advanced/nested_controllers_target_delegation.md
|
599
|
+
- files/javascript/stimulus/advanced/scss_class_map.md
|
600
|
+
- files/javascript/stimulus/advanced/stimulus_testing_helpers.md
|
601
|
+
- files/javascript/stimulus/advanced/turbo_streams_integration.md
|
602
|
+
- files/javascript/stimulus/advanced/typescript_decorator_integration.md
|
603
|
+
- files/javascript/stimulus/advanced/value_change_observers.md
|
604
|
+
- files/javascript/stimulus/beginner/actions_events.md
|
605
|
+
- files/javascript/stimulus/beginner/connect_disconnect.md
|
606
|
+
- files/javascript/stimulus/beginner/connect_html_controller.md
|
607
|
+
- files/javascript/stimulus/beginner/create_controller.md
|
608
|
+
- files/javascript/stimulus/beginner/data_attributes_usage.md
|
609
|
+
- files/javascript/stimulus/beginner/debounce_events.md
|
610
|
+
- files/javascript/stimulus/beginner/debug_with_console.md
|
611
|
+
- files/javascript/stimulus/beginner/event_modifiers.md
|
612
|
+
- files/javascript/stimulus/beginner/initialize_method.md
|
613
|
+
- files/javascript/stimulus/beginner/install_stimulus.md
|
614
|
+
- files/javascript/stimulus/beginner/manipulating_classes.md
|
615
|
+
- files/javascript/stimulus/beginner/multiple_controllers.md
|
616
|
+
- files/javascript/stimulus/beginner/using_targets.md
|
617
|
+
- files/javascript/stimulus/beginner/using_values.md
|
618
|
+
- files/javascript/stimulus/expert/composable_controllers.md
|
619
|
+
- files/javascript/stimulus/expert/custom_target_decorators.md
|
620
|
+
- files/javascript/stimulus/expert/dynamic_import.md
|
621
|
+
- files/javascript/stimulus/expert/graphql_subscriptions.md
|
622
|
+
- files/javascript/stimulus/expert/high_freq_events.md
|
623
|
+
- files/javascript/stimulus/expert/lifecycle_hooks.md
|
624
|
+
- files/javascript/stimulus/expert/modal_lazy_connect.md
|
625
|
+
- files/javascript/stimulus/expert/nested_controller_comm.md
|
626
|
+
- files/javascript/stimulus/expert/proxy_action_middleware.md
|
627
|
+
- files/javascript/stimulus/expert/server_sent_events.md
|
628
|
+
- files/javascript/stimulus/expert/state_machine.md
|
629
|
+
- files/javascript/stimulus/expert/threejs_integration.md
|
630
|
+
- files/javascript/stimulus/expert/value_types_map.md
|
631
|
+
- files/javascript/stimulus/expert/weakmap_memory_opt.md
|
632
|
+
- files/javascript/stimulus/expert/webworker_integration.md
|
633
|
+
- files/javascript/stimulus/middle/actioncable_integration.md
|
634
|
+
- files/javascript/stimulus/middle/async_fetch_requests.md
|
635
|
+
- files/javascript/stimulus/middle/cleanup_event_listeners.md
|
636
|
+
- files/javascript/stimulus/middle/css_class_management.md
|
637
|
+
- files/javascript/stimulus/middle/custom_actions_with_modifiers.md
|
638
|
+
- files/javascript/stimulus/middle/debugging_with_inspector.md
|
639
|
+
- files/javascript/stimulus/middle/dynamic_controller_loading.md
|
640
|
+
- files/javascript/stimulus/middle/dynamic_values.md
|
641
|
+
- files/javascript/stimulus/middle/event_throttling.md
|
642
|
+
- files/javascript/stimulus/middle/lifecycle_callbacks.md
|
643
|
+
- files/javascript/stimulus/middle/nested_targets.md
|
644
|
+
- files/javascript/stimulus/middle/testing_controllers_with_jest.md
|
645
|
+
- files/javascript/stimulus/middle/theming_with_data_controllers.md
|
646
|
+
- files/javascript/stimulus/middle/turbo_frames_integration.md
|
647
|
+
- files/javascript/stimulus/middle/value_change_callbacks.md
|
648
|
+
- files/javascript/turbo/advanced/advanced_error_handling_streams.md
|
649
|
+
- files/javascript/turbo/advanced/custom_form_submission_frame.md
|
650
|
+
- files/javascript/turbo/advanced/custom_turbo_stream_actions.md
|
651
|
+
- files/javascript/turbo/advanced/dynamic_module_loading_in_streams.md
|
652
|
+
- files/javascript/turbo/advanced/intercept_modify_requests.md
|
653
|
+
- files/javascript/turbo/advanced/lazy_load_turbo_frame.md
|
654
|
+
- files/javascript/turbo/advanced/performance_debounce_turbo_calls.md
|
655
|
+
- files/javascript/turbo/advanced/prefetching_links_turbo.md
|
656
|
+
- files/javascript/turbo/advanced/preload_turbo_frames_on_hover.md
|
657
|
+
- files/javascript/turbo/advanced/react_turbo_integration.md
|
658
|
+
- files/javascript/turbo/advanced/secure_turbo_endpoints.md
|
659
|
+
- files/javascript/turbo/advanced/turbo_caching_invalidation.md
|
660
|
+
- files/javascript/turbo/advanced/turbo_stimulus_integration.md
|
661
|
+
- files/javascript/turbo/advanced/turbo_stream_multiplexing.md
|
662
|
+
- files/javascript/turbo/advanced/websocket_turbo_streams.md
|
663
|
+
- files/javascript/turbo/beginner/basic_turbo_frame.md
|
664
|
+
- files/javascript/turbo/beginner/customize_turbo_visit.md
|
665
|
+
- files/javascript/turbo/beginner/disable_turbo_on_link.md
|
666
|
+
- files/javascript/turbo/beginner/enable_turbo_on_form.md
|
667
|
+
- files/javascript/turbo/beginner/file_upload_with_turbo.md
|
668
|
+
- files/javascript/turbo/beginner/install_turbo_js.md
|
669
|
+
- files/javascript/turbo/beginner/manual_turbo_load.md
|
670
|
+
- files/javascript/turbo/beginner/progress_indicator.md
|
671
|
+
- files/javascript/turbo/beginner/simple_turbo_stream.md
|
672
|
+
- files/javascript/turbo/beginner/turbo_before_fetch_request.md
|
673
|
+
- files/javascript/turbo/beginner/turbo_cache_navigation.md
|
674
|
+
- files/javascript/turbo/beginner/turbo_debug_mode.md
|
675
|
+
- files/javascript/turbo/beginner/turbo_error_handling.md
|
676
|
+
- files/javascript/turbo/beginner/turbo_event_listeners.md
|
677
|
+
- files/javascript/turbo/beginner/turbo_restore_scroll.md
|
678
|
+
- files/javascript/turbo/expert/turbo_cache_optimization.md
|
679
|
+
- files/javascript/turbo/expert/turbo_frame_lazy_loading.md
|
680
|
+
- files/javascript/turbo/expert/turbo_frame_nested_navigation.md
|
681
|
+
- files/javascript/turbo/expert/turbo_management_multiple_frames.md
|
682
|
+
- files/javascript/turbo/expert/turbo_native_mobile_integration.md
|
683
|
+
- files/javascript/turbo/expert/turbo_prefetch_and_prerender.md
|
684
|
+
- files/javascript/turbo/expert/turbo_rendering_performance.md
|
685
|
+
- files/javascript/turbo/expert/turbo_security_csp.md
|
686
|
+
- files/javascript/turbo/expert/turbo_stream_broadcasting.md
|
687
|
+
- files/javascript/turbo/expert/turbo_stream_chunked_uploads.md
|
688
|
+
- files/javascript/turbo/expert/turbo_stream_client_hooks.md
|
689
|
+
- files/javascript/turbo/expert/turbo_stream_complex_selectors.md
|
690
|
+
- files/javascript/turbo/expert/turbo_stream_continuous_updates.md
|
691
|
+
- files/javascript/turbo/expert/turbo_stream_streaming_response.md
|
692
|
+
- files/javascript/turbo/middle/turbo_abort_navigation.md
|
693
|
+
- files/javascript/turbo/middle/turbo_broadcast_streams.md
|
694
|
+
- files/javascript/turbo/middle/turbo_connect_stream_source.md
|
695
|
+
- files/javascript/turbo/middle/turbo_control_navigation.md
|
696
|
+
- files/javascript/turbo/middle/turbo_custom_progress_bar.md
|
697
|
+
- files/javascript/turbo/middle/turbo_custom_stream_action.md
|
698
|
+
- files/javascript/turbo/middle/turbo_debug_logging.md
|
699
|
+
- files/javascript/turbo/middle/turbo_form_intercept.md
|
700
|
+
- files/javascript/turbo/middle/turbo_frame_cache.md
|
701
|
+
- files/javascript/turbo/middle/turbo_frame_manipulation_js.md
|
702
|
+
- files/javascript/turbo/middle/turbo_inject_streams_js.md
|
703
|
+
- files/javascript/turbo/middle/turbo_lazy_frame_loading.md
|
704
|
+
- files/javascript/turbo/middle/turbo_link_prefetch.md
|
705
|
+
- files/javascript/turbo/middle/turbo_navigation_lifecycle.md
|
706
|
+
- files/javascript/turbo/middle/turbo_stimulus_integration.md
|
707
|
+
- files/nosql/redis/advanced/redis_lua_scripting.md
|
708
|
+
- files/nosql/redis/advanced/redis_pipelining.md
|
709
|
+
- files/nosql/redis/advanced/redis_streams.md
|
710
|
+
- files/nosql/redis/beginner/redis_basic_key_value.md
|
711
|
+
- files/nosql/redis/beginner/redis_connection_setup.md
|
712
|
+
- files/nosql/redis/beginner/redis_list_usage.md
|
713
|
+
- files/nosql/redis/expert/redis_cluster_pipeline_optimization.md
|
714
|
+
- files/nosql/redis/expert/redis_lua_atomic_operations.md
|
715
|
+
- files/nosql/redis/expert/redis_streams_event_sourcing.md
|
716
|
+
- files/nosql/redis/middle/redis_api_rate_limiter.md
|
717
|
+
- files/nosql/redis/middle/redis_cachestore_namespace.md
|
718
|
+
- files/nosql/redis/middle/redis_distributed_lock_redlock.md
|
719
|
+
- files/rails/action_cable/advanced/chunked_streaming.md
|
720
|
+
- files/rails/action_cable/advanced/graphql_subscriptions.md
|
721
|
+
- files/rails/action_cable/advanced/jwt_channel_authentication.md
|
722
|
+
- files/rails/action_cable/advanced/kafka_pubsub_adapter.md
|
723
|
+
- files/rails/action_cable/advanced/rate_limiting_backpressure.md
|
724
|
+
- files/rails/action_cable/beginner/broadcast_messages.md
|
725
|
+
- files/rails/action_cable/beginner/client_subscribe_js.md
|
726
|
+
- files/rails/action_cable/beginner/generate_chat_channel.md
|
727
|
+
- files/rails/action_cable/beginner/setup_action_cable.md
|
728
|
+
- files/rails/action_cable/beginner/stream_named_room.md
|
729
|
+
- files/rails/action_cable/expert/fine_grained_authorization.md
|
730
|
+
- files/rails/action_cable/expert/jwt_authentication.md
|
731
|
+
- files/rails/action_cable/expert/load_testing_action_cable.md
|
732
|
+
- files/rails/action_cable/expert/metrics_instrumentation.md
|
733
|
+
- files/rails/action_cable/expert/redis_scaling_namespace_isolation.md
|
734
|
+
- files/rails/action_cable/middle/cleanup_streams_on_unsubscribe.md
|
735
|
+
- files/rails/action_cable/middle/client_reconnection_resubscribe.md
|
736
|
+
- files/rails/action_cable/middle/dynamic_stream_identifiers.md
|
737
|
+
- files/rails/action_cable/middle/manual_broadcast_controller.md
|
738
|
+
- files/rails/action_cable/middle/model_callback_streaming.md
|
739
|
+
- files/rails/active_record/advanced/asynchronous_querying_load_async.md
|
740
|
+
- files/rails/active_record/advanced/bulk_upsert_with_upsert_all.md
|
741
|
+
- files/rails/active_record/advanced/common_table_expressions_cte.md
|
742
|
+
- files/rails/active_record/advanced/custom_types_and_attributes_api.md
|
743
|
+
- files/rails/active_record/advanced/dynamic_parameterized_scopes.md
|
744
|
+
- files/rails/active_record/advanced/jsonb_querying_and_indexing.md
|
745
|
+
- files/rails/active_record/advanced/leveraging_window_functions.md
|
746
|
+
- files/rails/active_record/advanced/multi_database_sharding.md
|
747
|
+
- files/rails/active_record/advanced/optimistic_locking_for_concurrency.md
|
748
|
+
- files/rails/active_record/advanced/using_arel_for_complex_joins.md
|
749
|
+
- files/rails/active_record/beginner/associations_basics.md
|
750
|
+
- files/rails/active_record/beginner/console_basics.md
|
751
|
+
- files/rails/active_record/beginner/create_records.md
|
752
|
+
- files/rails/active_record/beginner/delete_records.md
|
753
|
+
- files/rails/active_record/beginner/limit_and_offset.md
|
754
|
+
- files/rails/active_record/beginner/querying_with_where.md
|
755
|
+
- files/rails/active_record/beginner/reading_records.md
|
756
|
+
- files/rails/active_record/beginner/sorting_results.md
|
757
|
+
- files/rails/active_record/beginner/update_records.md
|
758
|
+
- files/rails/active_record/beginner/validations_intro.md
|
759
|
+
- files/rails/active_record/expert/advanced_eager_loading.md
|
760
|
+
- files/rails/active_record/expert/arel_complex_predicates.md
|
761
|
+
- files/rails/active_record/expert/association_cache_bidi.md
|
762
|
+
- files/rails/active_record/expert/bulk_upserts_insert_all.md
|
763
|
+
- files/rails/active_record/expert/dynamic_scopes_metaprogramming.md
|
764
|
+
- files/rails/active_record/expert/multi_tenancy_schema_adapter.md
|
765
|
+
- files/rails/active_record/expert/partial_indexes_migrations.md
|
766
|
+
- files/rails/active_record/expert/query_performance_notifications.md
|
767
|
+
- files/rails/active_record/expert/sql_window_functions.md
|
768
|
+
- files/rails/active_record/expert/virtual_attributes_custom_types.md
|
769
|
+
- files/rails/active_record/middle/arel_complex_queries.md
|
770
|
+
- files/rails/active_record/middle/batch_processing.md
|
771
|
+
- files/rails/active_record/middle/dynamic_scopes.md
|
772
|
+
- files/rails/active_record/middle/eager_loading_includes.md
|
773
|
+
- files/rails/active_record/middle/merge_relations.md
|
774
|
+
- files/rails/active_record/middle/optimistic_locking.md
|
775
|
+
- files/rails/active_record/middle/pluck_and_select_optimization.md
|
776
|
+
- files/rails/active_record/middle/transactions_and_rollback.md
|
777
|
+
- files/rails/active_record/middle/upsert_records.md
|
778
|
+
- files/rails/active_record/middle/use_counter_cache.md
|
779
|
+
- files/rails/active_record_associations/advanced/association_callbacks_for_cache_invalidation.md
|
780
|
+
- files/rails/active_record_associations/advanced/association_extensions_module.md
|
781
|
+
- files/rails/active_record_associations/advanced/deep_nested_attributes_with_reject_if.md
|
782
|
+
- files/rails/active_record_associations/advanced/dynamic_associations_definition.md
|
783
|
+
- files/rails/active_record_associations/advanced/habtm_to_has_many_through_with_extra.md
|
784
|
+
- files/rails/active_record_associations/advanced/inverse_of_and_eager_preloading.md
|
785
|
+
- files/rails/active_record_associations/advanced/multi_table_join_with_has_many_through.md
|
786
|
+
- files/rails/active_record_associations/advanced/polymorphic_counter_cache_optimization.md
|
787
|
+
- files/rails/active_record_associations/advanced/preloading_with_aggregates.md
|
788
|
+
- files/rails/active_record_associations/advanced/self_referential_scopes.md
|
789
|
+
- files/rails/active_record_associations/advanced/sti_associations_with_default_scopes.md
|
790
|
+
- files/rails/active_record_associations/advanced/through_association_with_conditions.md
|
791
|
+
- files/rails/active_record_associations/beginner/belongs_to_association.md
|
792
|
+
- files/rails/active_record_associations/beginner/build_associated_records.md
|
793
|
+
- files/rails/active_record_associations/beginner/counter_cache_option.md
|
794
|
+
- files/rails/active_record_associations/beginner/dependent_option.md
|
795
|
+
- files/rails/active_record_associations/beginner/eager_loading_associations.md
|
796
|
+
- files/rails/active_record_associations/beginner/has_and_belongs_to_many_association.md
|
797
|
+
- files/rails/active_record_associations/beginner/has_many_association.md
|
798
|
+
- files/rails/active_record_associations/beginner/has_many_through_association.md
|
799
|
+
- files/rails/active_record_associations/beginner/has_one_association.md
|
800
|
+
- files/rails/active_record_associations/beginner/inverse_of_option.md
|
801
|
+
- files/rails/active_record_associations/beginner/nested_attributes.md
|
802
|
+
- files/rails/active_record_associations/beginner/validates_associated.md
|
803
|
+
- files/rails/active_record_associations/expert/association_callbacks_usage.md
|
804
|
+
- files/rails/active_record_associations/expert/composite_primary_key_associations.md
|
805
|
+
- files/rails/active_record_associations/expert/custom_inverse_of_complex.md
|
806
|
+
- files/rails/active_record_associations/expert/custom_join_sql_through.md
|
807
|
+
- files/rails/active_record_associations/expert/dynamic_association_extensions.md
|
808
|
+
- files/rails/active_record_associations/expert/dynamic_build_in_callbacks.md
|
809
|
+
- files/rails/active_record_associations/expert/eager_load_override_select.md
|
810
|
+
- files/rails/active_record_associations/expert/multi_level_through_alias.md
|
811
|
+
- files/rails/active_record_associations/expert/polymorphic_counter_cache.md
|
812
|
+
- files/rails/active_record_associations/expert/recursive_self_referential_tree.md
|
813
|
+
- files/rails/active_record_associations/expert/scoped_polymorphic_association_conditions.md
|
814
|
+
- files/rails/active_record_associations/expert/sti_hierarchical_associations.md
|
815
|
+
- files/rails/active_record_associations/middle/association_extensions.md
|
816
|
+
- files/rails/active_record_associations/middle/association_scopes.md
|
817
|
+
- files/rails/active_record_associations/middle/conditional_associations.md
|
818
|
+
- files/rails/active_record_associations/middle/counter_cache.md
|
819
|
+
- files/rails/active_record_associations/middle/custom_foreign_key_and_class_name.md
|
820
|
+
- files/rails/active_record_associations/middle/dependent_options.md
|
821
|
+
- files/rails/active_record_associations/middle/eager_loading_includes.md
|
822
|
+
- files/rails/active_record_associations/middle/has_many_through.md
|
823
|
+
- files/rails/active_record_associations/middle/inverse_of.md
|
824
|
+
- files/rails/active_record_associations/middle/polymorphic_association.md
|
825
|
+
- files/rails/active_record_associations/middle/touch_option.md
|
826
|
+
- files/rails/active_record_associations/middle/validating_associations.md
|
827
|
+
- files/rails/active_record_callbacks/advanced/active_support_callbacks_api.md
|
828
|
+
- files/rails/active_record_callbacks/advanced/around_transaction_callbacks.md
|
829
|
+
- files/rails/active_record_callbacks/advanced/callback_performance_tips.md
|
830
|
+
- files/rails/active_record_callbacks/advanced/concern_based_callbacks.md
|
831
|
+
- files/rails/active_record_callbacks/advanced/conditional_callbacks_lambda.md
|
832
|
+
- files/rails/active_record_callbacks/advanced/custom_callback_chains.md
|
833
|
+
- files/rails/active_record_callbacks/advanced/explicit_callback_priority.md
|
834
|
+
- files/rails/active_record_callbacks/advanced/introspect_reorder_callbacks.md
|
835
|
+
- files/rails/active_record_callbacks/advanced/skip_callbacks_in_tests.md
|
836
|
+
- files/rails/active_record_callbacks/advanced/sti_inherited_callbacks.md
|
837
|
+
- files/rails/active_record_callbacks/beginner/after_create_notification.md
|
838
|
+
- files/rails/active_record_callbacks/beginner/after_destroy_cleanup.md
|
839
|
+
- files/rails/active_record_callbacks/beginner/after_save_cache_clear.md
|
840
|
+
- files/rails/active_record_callbacks/beginner/before_create_default_status.md
|
841
|
+
- files/rails/active_record_callbacks/beginner/before_save_callback.md
|
842
|
+
- files/rails/active_record_callbacks/beginner/before_validation_usage.md
|
843
|
+
- files/rails/active_record_callbacks/beginner/conditional_callback_if_unless.md
|
844
|
+
- files/rails/active_record_callbacks/beginner/multiple_callbacks_order.md
|
845
|
+
- files/rails/active_record_callbacks/beginner/skip_callback_example.md
|
846
|
+
- files/rails/active_record_callbacks/beginner/using_blocks_in_callbacks.md
|
847
|
+
- files/rails/active_record_callbacks/expert/abort_before_destroy.md
|
848
|
+
- files/rails/active_record_callbacks/expert/around_commit_transaction.md
|
849
|
+
- files/rails/active_record_callbacks/expert/async_callbacks.md
|
850
|
+
- files/rails/active_record_callbacks/expert/concerns_for_callbacks.md
|
851
|
+
- files/rails/active_record_callbacks/expert/conditional_chain_callbacks.md
|
852
|
+
- files/rails/active_record_callbacks/expert/dynamic_callback_definitions.md
|
853
|
+
- files/rails/active_record_callbacks/expert/memory_leak_callbacks.md
|
854
|
+
- files/rails/active_record_callbacks/expert/prepend_callbacks.md
|
855
|
+
- files/rails/active_record_callbacks/expert/rspec_callbacks_testing.md
|
856
|
+
- files/rails/active_record_callbacks/expert/soft_delete_callbacks.md
|
857
|
+
- files/rails/active_record_callbacks/middle/around_save_transaction.md
|
858
|
+
- files/rails/active_record_callbacks/middle/batch_operations_callbacks.md
|
859
|
+
- files/rails/active_record_callbacks/middle/callback_ordering.md
|
860
|
+
- files/rails/active_record_callbacks/middle/callbacks_in_concerns.md
|
861
|
+
- files/rails/active_record_callbacks/middle/conditional_callbacks.md
|
862
|
+
- files/rails/active_record_callbacks/middle/default_values_validation.md
|
863
|
+
- files/rails/active_record_callbacks/middle/email_after_commit.md
|
864
|
+
- files/rails/active_record_callbacks/middle/normalize_attribute.md
|
865
|
+
- files/rails/active_record_callbacks/middle/skip_callbacks.md
|
866
|
+
- files/rails/active_record_callbacks/middle/testing_callbacks.md
|
867
|
+
- files/rails/active_record_migrations/advanced/check_constraints.md
|
868
|
+
- files/rails/active_record_migrations/advanced/concurrent_index.md
|
869
|
+
- files/rails/active_record_migrations/advanced/conditional_migrations.md
|
870
|
+
- files/rails/active_record_migrations/advanced/custom_enum_types.md
|
871
|
+
- files/rails/active_record_migrations/advanced/default_sql_functions.md
|
872
|
+
- files/rails/active_record_migrations/advanced/foreign_key_cascade.md
|
873
|
+
- files/rails/active_record_migrations/advanced/materialized_views.md
|
874
|
+
- files/rails/active_record_migrations/advanced/partitioned_tables.md
|
875
|
+
- files/rails/active_record_migrations/advanced/reversible_data_migrations.md
|
876
|
+
- files/rails/active_record_migrations/advanced/uuid_primary_keys.md
|
877
|
+
- files/rails/active_record_migrations/beginner/add_column.md
|
878
|
+
- files/rails/active_record_migrations/beginner/add_index.md
|
879
|
+
- files/rails/active_record_migrations/beginner/change_column_type.md
|
880
|
+
- files/rails/active_record_migrations/beginner/create_table.md
|
881
|
+
- files/rails/active_record_migrations/beginner/remove_column.md
|
882
|
+
- files/rails/active_record_migrations/beginner/remove_index.md
|
883
|
+
- files/rails/active_record_migrations/beginner/rename_column.md
|
884
|
+
- files/rails/active_record_migrations/beginner/reversible_migration.md
|
885
|
+
- files/rails/active_record_migrations/beginner/rollback.md
|
886
|
+
- files/rails/active_record_migrations/beginner/timestamps.md
|
887
|
+
- files/rails/active_record_migrations/expert/batch_updates_with_find_in_batches.md
|
888
|
+
- files/rails/active_record_migrations/expert/custom_migration_base_class.md
|
889
|
+
- files/rails/active_record_migrations/expert/decouple_models_using_anonymous_class.md
|
890
|
+
- files/rails/active_record_migrations/expert/deferrable_foreign_keys.md
|
891
|
+
- files/rails/active_record_migrations/expert/disable_ddl_transaction_for_concurrent_index.md
|
892
|
+
- files/rails/active_record_migrations/expert/multi_step_default_column_addition.md
|
893
|
+
- files/rails/active_record_migrations/expert/parallel_migrations_via_rake.md
|
894
|
+
- files/rails/active_record_migrations/expert/postgresql_table_partitioning.md
|
895
|
+
- files/rails/active_record_migrations/expert/reversible_data_backfill.md
|
896
|
+
- files/rails/active_record_migrations/expert/squash_and_manage_migration_versions.md
|
897
|
+
- files/rails/active_record_migrations/middle/add_column_default_not_null.md
|
898
|
+
- files/rails/active_record_migrations/middle/add_index_options.md
|
899
|
+
- files/rails/active_record_migrations/middle/batch_data_migration.md
|
900
|
+
- files/rails/active_record_migrations/middle/change_column_with_data_migration.md
|
901
|
+
- files/rails/active_record_migrations/middle/concurrent_index.md
|
902
|
+
- files/rails/active_record_migrations/middle/conditional_migrations.md
|
903
|
+
- files/rails/active_record_migrations/middle/raw_sql_execute.md
|
904
|
+
- files/rails/active_record_migrations/middle/remove_columns_indexes.md
|
905
|
+
- files/rails/active_record_migrations/middle/rename_column.md
|
906
|
+
- files/rails/active_record_migrations/middle/reversible_migrations.md
|
907
|
+
- files/rails/active_record_querying/advanced/array_and_hstore_query.md
|
908
|
+
- files/rails/active_record_querying/advanced/bulk_update_with_case.md
|
909
|
+
- files/rails/active_record_querying/advanced/common_table_expressions.md
|
910
|
+
- files/rails/active_record_querying/advanced/computed_selects.md
|
911
|
+
- files/rails/active_record_querying/advanced/dynamic_arel_queries.md
|
912
|
+
- files/rails/active_record_querying/advanced/dynamic_filter_scopes.md
|
913
|
+
- files/rails/active_record_querying/advanced/jsonb_querying.md
|
914
|
+
- files/rails/active_record_querying/advanced/lateral_joins.md
|
915
|
+
- files/rails/active_record_querying/advanced/polymorphic_joins.md
|
916
|
+
- files/rails/active_record_querying/advanced/union_relations.md
|
917
|
+
- files/rails/active_record_querying/advanced/upsert_all_conflicts.md
|
918
|
+
- files/rails/active_record_querying/advanced/window_functions.md
|
919
|
+
- files/rails/active_record_querying/beginner/basic_all_where.md
|
920
|
+
- files/rails/active_record_querying/beginner/chaining_queries.md
|
921
|
+
- files/rails/active_record_querying/beginner/exists_queries.md
|
922
|
+
- files/rails/active_record_querying/beginner/find_or_create_by.md
|
923
|
+
- files/rails/active_record_querying/beginner/find_vs_find_by.md
|
924
|
+
- files/rails/active_record_querying/beginner/first_last.md
|
925
|
+
- files/rails/active_record_querying/beginner/limit_usage.md
|
926
|
+
- files/rails/active_record_querying/beginner/offset_usage.md
|
927
|
+
- files/rails/active_record_querying/beginner/order_results.md
|
928
|
+
- files/rails/active_record_querying/beginner/pluck_usage.md
|
929
|
+
- files/rails/active_record_querying/beginner/select_columns.md
|
930
|
+
- files/rails/active_record_querying/beginner/where_not.md
|
931
|
+
- files/rails/active_record_querying/expert/batch_processing_find_each.md
|
932
|
+
- files/rails/active_record_querying/expert/bulk_upserts.md
|
933
|
+
- files/rails/active_record_querying/expert/ctes_with_active_record.md
|
934
|
+
- files/rails/active_record_querying/expert/eager_loading_nested_polymorphic.md
|
935
|
+
- files/rails/active_record_querying/expert/explain_analyze_inspection.md
|
936
|
+
- files/rails/active_record_querying/expert/index_hints_with_raw_sql.md
|
937
|
+
- files/rails/active_record_querying/expert/jsonb_postgresql_queries.md
|
938
|
+
- files/rails/active_record_querying/expert/lateral_joins.md
|
939
|
+
- files/rails/active_record_querying/expert/optimistic_locking_queries.md
|
940
|
+
- files/rails/active_record_querying/expert/prepared_statements.md
|
941
|
+
- files/rails/active_record_querying/expert/recursive_cte_for_hierarchies.md
|
942
|
+
- files/rails/active_record_querying/expert/window_functions.md
|
943
|
+
- files/rails/active_record_querying/middle/batch_processing.md
|
944
|
+
- files/rails/active_record_querying/middle/distinct_select.md
|
945
|
+
- files/rails/active_record_querying/middle/exists_query.md
|
946
|
+
- files/rails/active_record_querying/middle/from_subquery.md
|
947
|
+
- files/rails/active_record_querying/middle/includes_conditions.md
|
948
|
+
- files/rails/active_record_querying/middle/joins_conditions.md
|
949
|
+
- files/rails/active_record_querying/middle/or_queries.md
|
950
|
+
- files/rails/active_record_querying/middle/pluck_usage.md
|
951
|
+
- files/rails/active_record_querying/middle/reorder_results.md
|
952
|
+
- files/rails/active_record_querying/middle/unscope_conditions.md
|
953
|
+
- files/rails/active_record_querying/middle/where_not_usage.md
|
954
|
+
- files/rails/active_record_querying/middle/where_range_query.md
|
955
|
+
- files/rails/active_record_validations/advanced/conditional_validation_lambda.md
|
956
|
+
- files/rails/active_record_validations/advanced/custom_validation_contexts.md
|
957
|
+
- files/rails/active_record_validations/advanced/custom_validator_class.md
|
958
|
+
- files/rails/active_record_validations/advanced/database_uniqueness_enforcement.md
|
959
|
+
- files/rails/active_record_validations/advanced/dynamic_validations.md
|
960
|
+
- files/rails/active_record_validations/advanced/i18n_error_messages.md
|
961
|
+
- files/rails/active_record_validations/advanced/json_schema_validation.md
|
962
|
+
- files/rails/active_record_validations/advanced/multi_attribute_validation.md
|
963
|
+
- files/rails/active_record_validations/advanced/nested_association_validations.md
|
964
|
+
- files/rails/active_record_validations/advanced/strict_validations.md
|
965
|
+
- files/rails/active_record_validations/beginner/associated_records_validation.md
|
966
|
+
- files/rails/active_record_validations/beginner/conditional_validation.md
|
967
|
+
- files/rails/active_record_validations/beginner/custom_validation_method.md
|
968
|
+
- files/rails/active_record_validations/beginner/format_validation.md
|
969
|
+
- files/rails/active_record_validations/beginner/grouping_with_options.md
|
970
|
+
- files/rails/active_record_validations/beginner/inclusion_exclusion_validation.md
|
971
|
+
- files/rails/active_record_validations/beginner/length_validation.md
|
972
|
+
- files/rails/active_record_validations/beginner/numericality_validation.md
|
973
|
+
- files/rails/active_record_validations/beginner/presence_validation.md
|
974
|
+
- files/rails/active_record_validations/beginner/uniqueness_validation.md
|
975
|
+
- files/rails/active_record_validations/expert/advanced_uniqueness_scopes.md
|
976
|
+
- files/rails/active_record_validations/expert/complex_association_validations.md
|
977
|
+
- files/rails/active_record_validations/expert/composable_lambda_validators.md
|
978
|
+
- files/rails/active_record_validations/expert/contextual_validations.md
|
979
|
+
- files/rails/active_record_validations/expert/custom_validator_classes.md
|
980
|
+
- files/rails/active_record_validations/expert/db_constraints_parallel.md
|
981
|
+
- files/rails/active_record_validations/expert/defer_validations_before_validation.md
|
982
|
+
- files/rails/active_record_validations/expert/dynamic_conditional_validations.md
|
983
|
+
- files/rails/active_record_validations/expert/json_schema_validation.md
|
984
|
+
- files/rails/active_record_validations/expert/optimize_validation_performance.md
|
985
|
+
- files/rails/active_record_validations/middle/associated_models_validation.md
|
986
|
+
- files/rails/active_record_validations/middle/conditional_validations.md
|
987
|
+
- files/rails/active_record_validations/middle/custom_validator_method.md
|
988
|
+
- files/rails/active_record_validations/middle/grouped_validations_with_options.md
|
989
|
+
- files/rails/active_record_validations/middle/nested_attributes_presence.md
|
990
|
+
- files/rails/active_record_validations/middle/numericality_options.md
|
991
|
+
- files/rails/active_record_validations/middle/regex_format_validation.md
|
992
|
+
- files/rails/active_record_validations/middle/uniqueness_scope.md
|
993
|
+
- files/rails/active_record_validations/middle/validates_each_usage.md
|
994
|
+
- files/rails/active_record_validations/middle/validation_contexts.md
|
995
|
+
- files/rails/active_storage/advanced/custom_blob_analysis.md
|
996
|
+
- files/rails/active_storage/advanced/custom_variant_processor.md
|
997
|
+
- files/rails/active_storage/advanced/direct_upload_throttling.md
|
998
|
+
- files/rails/active_storage/advanced/stream_large_files.md
|
999
|
+
- files/rails/active_storage/advanced/webp_global_variant.md
|
1000
|
+
- files/rails/active_storage/beginner/active_storage_attach_files.md
|
1001
|
+
- files/rails/active_storage/beginner/active_storage_delete_purge.md
|
1002
|
+
- files/rails/active_storage/beginner/active_storage_display_image.md
|
1003
|
+
- files/rails/active_storage/beginner/active_storage_setup.md
|
1004
|
+
- files/rails/active_storage/beginner/active_storage_validate.md
|
1005
|
+
- files/rails/active_storage/expert/async_variant_generation.md
|
1006
|
+
- files/rails/active_storage/expert/cdn_signed_url_with_custom_headers.md
|
1007
|
+
- files/rails/active_storage/expert/custom_pdf_page_count_analyzer.md
|
1008
|
+
- files/rails/active_storage/expert/mirror_service_fallback.md
|
1009
|
+
- files/rails/active_storage/expert/resumable_multipart_upload.md
|
1010
|
+
- files/rails/active_storage/middle/direct_uploads_with_javascript.md
|
1011
|
+
- files/rails/active_storage/middle/generating_and_displaying_variants.md
|
1012
|
+
- files/rails/active_storage/middle/purging_unused_blobs_and_attachments.md
|
1013
|
+
- files/rails/active_storage/middle/switching_active_storage_services.md
|
1014
|
+
- files/rails/active_storage/middle/validating_active_storage_attachments.md
|
1015
|
+
- files/rails/active_support/advanced/advanced_cache_fetch_multi.md
|
1016
|
+
- files/rails/active_support/advanced/concern_modularization.md
|
1017
|
+
- files/rails/active_support/advanced/custom_inflections.md
|
1018
|
+
- files/rails/active_support/advanced/deprecation_management.md
|
1019
|
+
- files/rails/active_support/advanced/json_encoder_customization.md
|
1020
|
+
- files/rails/active_support/advanced/nested_hash_transformations.md
|
1021
|
+
- files/rails/active_support/advanced/notifications_instrumentation.md
|
1022
|
+
- files/rails/active_support/advanced/per_thread_registry.md
|
1023
|
+
- files/rails/active_support/advanced/reloader_hooks.md
|
1024
|
+
- files/rails/active_support/advanced/tagged_logging.md
|
1025
|
+
- files/rails/active_support/beginner/array_accessors.md
|
1026
|
+
- files/rails/active_support/beginner/current_time_date.md
|
1027
|
+
- files/rails/active_support/beginner/deep_merge_hash.md
|
1028
|
+
- files/rails/active_support/beginner/delegate_method.md
|
1029
|
+
- files/rails/active_support/beginner/indifferent_access.md
|
1030
|
+
- files/rails/active_support/beginner/numeric_time_helpers.md
|
1031
|
+
- files/rails/active_support/beginner/presence_methods.md
|
1032
|
+
- files/rails/active_support/beginner/string_inflections.md
|
1033
|
+
- files/rails/active_support/beginner/string_inquiry.md
|
1034
|
+
- files/rails/active_support/beginner/try_method.md
|
1035
|
+
- files/rails/active_support/expert/advanced_hashdeep_merge.md
|
1036
|
+
- files/rails/active_support/expert/cache_key_generation_extensibility.md
|
1037
|
+
- files/rails/active_support/expert/callbacks_building_custom_chains.md
|
1038
|
+
- files/rails/active_support/expert/concern_dependency_injection.md
|
1039
|
+
- files/rails/active_support/expert/custom_durations_with_precision.md
|
1040
|
+
- files/rails/active_support/expert/custom_inflections.md
|
1041
|
+
- files/rails/active_support/expert/json_serialization_custom_encoder.md
|
1042
|
+
- files/rails/active_support/expert/notifications_custom_instrumentation.md
|
1043
|
+
- files/rails/active_support/expert/on_load_hooks_for_engines.md
|
1044
|
+
- files/rails/active_support/expert/tagged_logging_contexts.md
|
1045
|
+
- files/rails/active_support/middle/active_support_concern_modules.md
|
1046
|
+
- files/rails/active_support/middle/deep_merge_nested_hashes.md
|
1047
|
+
- files/rails/active_support/middle/enumerable_in_groups_of.md
|
1048
|
+
- files/rails/active_support/middle/hash_with_indifferent_access.md
|
1049
|
+
- files/rails/active_support/middle/notifications_instrumentation.md
|
1050
|
+
- files/rails/active_support/middle/numeric_time_extensions.md
|
1051
|
+
- files/rails/active_support/middle/presence_and_blank_helpers.md
|
1052
|
+
- files/rails/active_support/middle/safe_constantize_for_dynamic_loading.md
|
1053
|
+
- files/rails/active_support/middle/string_inflection_helpers.md
|
1054
|
+
- files/rails/active_support/middle/use_time_current_for_timezone.md
|
1055
|
+
- files/rails/api_mode/advanced/advanced_jsonapi_serializer.md
|
1056
|
+
- files/rails/api_mode/advanced/custom_rack_middleware_injection.md
|
1057
|
+
- files/rails/api_mode/advanced/header_based_api_versioning.md
|
1058
|
+
- files/rails/api_mode/advanced/http_caching_etags_conditional_get.md
|
1059
|
+
- files/rails/api_mode/beginner/configure_cors.md
|
1060
|
+
- files/rails/api_mode/beginner/create_api_app.md
|
1061
|
+
- files/rails/api_mode/beginner/generate_resource_controller.md
|
1062
|
+
- files/rails/api_mode/beginner/use_strong_parameters.md
|
1063
|
+
- files/rails/api_mode/expert/accept_header_api_versioning.md
|
1064
|
+
- files/rails/api_mode/expert/custom_rate_limiting_middleware.md
|
1065
|
+
- files/rails/api_mode/expert/fast_json_serialization_with_oj.md
|
1066
|
+
- files/rails/api_mode/expert/streaming_json_responses.md
|
1067
|
+
- files/rails/api_mode/middle/api_error_handling.md
|
1068
|
+
- files/rails/api_mode/middle/api_generators.md
|
1069
|
+
- files/rails/api_mode/middle/api_versioning.md
|
1070
|
+
- files/rails/api_mode/middle/json_serialization.md
|
1071
|
+
- files/rails/assets/advanced/asset_caching_strategies.md
|
1072
|
+
- files/rails/assets/advanced/custom_asset_precompilation.md
|
1073
|
+
- files/rails/assets/advanced/dynamic_asset_host.md
|
1074
|
+
- files/rails/assets/advanced/sprockets_custom_processor.md
|
1075
|
+
- files/rails/assets/advanced/webpacker_custom_config.md
|
1076
|
+
- files/rails/assets/beginner/asset_pipeline_basics.md
|
1077
|
+
- files/rails/assets/beginner/cache_busting_versioning.md
|
1078
|
+
- files/rails/assets/beginner/organize_images_fonts.md
|
1079
|
+
- files/rails/assets/beginner/precompile_assets.md
|
1080
|
+
- files/rails/assets/beginner/sprockets_helpers.md
|
1081
|
+
- files/rails/assets/expert/custom_sprockets_processor.md
|
1082
|
+
- files/rails/assets/expert/dynamic_asset_host_fallback.md
|
1083
|
+
- files/rails/assets/expert/http_cache_invalidation.md
|
1084
|
+
- files/rails/assets/expert/inline_critical_css.md
|
1085
|
+
- files/rails/assets/expert/webpack_bundle_splitting.md
|
1086
|
+
- files/rails/assets/middle/configure_asset_host.md
|
1087
|
+
- files/rails/assets/middle/custom_precompile_assets.md
|
1088
|
+
- files/rails/assets/middle/sass_partials_and_variables.md
|
1089
|
+
- files/rails/assets/middle/sprockets_directives_load_order.md
|
1090
|
+
- files/rails/assets/middle/use_webpacker_asset_pack_tag.md
|
1091
|
+
- files/rails/authentication_and_authorization/advanced/custom_devise_warden_strategy.md
|
1092
|
+
- files/rails/authentication_and_authorization/advanced/jwt_refresh_token_rotation.md
|
1093
|
+
- files/rails/authentication_and_authorization/advanced/multi_tenant_policy_scoping.md
|
1094
|
+
- files/rails/authentication_and_authorization/advanced/pundit_policy_caching.md
|
1095
|
+
- files/rails/authentication_and_authorization/beginner/bcrypt_user_auth.md
|
1096
|
+
- files/rails/authentication_and_authorization/beginner/before_action_authentication.md
|
1097
|
+
- files/rails/authentication_and_authorization/beginner/sessions_controller_setup.md
|
1098
|
+
- files/rails/authentication_and_authorization/beginner/simple_role_authorization.md
|
1099
|
+
- files/rails/authentication_and_authorization/expert/cancancan_ability_caching_preload.md
|
1100
|
+
- files/rails/authentication_and_authorization/expert/dynamic_pundit_scope_with_rls.md
|
1101
|
+
- files/rails/authentication_and_authorization/expert/graphql_jwt_pundit_integration.md
|
1102
|
+
- files/rails/authentication_and_authorization/expert/mfa_custom_warden_strategy.md
|
1103
|
+
- files/rails/authentication_and_authorization/middle/customize_redirects.md
|
1104
|
+
- files/rails/authentication_and_authorization/middle/policy_scope_index.md
|
1105
|
+
- files/rails/authentication_and_authorization/middle/role_based_policies.md
|
1106
|
+
- files/rails/authentication_and_authorization/middle/token_authentication.md
|
1107
|
+
- files/rails/background_jobs/advanced/idempotent_jobs.md
|
1108
|
+
- files/rails/background_jobs/advanced/job_metrics.md
|
1109
|
+
- files/rails/background_jobs/advanced/rate_limiting_middleware.md
|
1110
|
+
- files/rails/background_jobs/advanced/sidekiq_batches.md
|
1111
|
+
- files/rails/background_jobs/advanced/transactional_enqueue.md
|
1112
|
+
- files/rails/background_jobs/beginner/create_simple_job.md
|
1113
|
+
- files/rails/background_jobs/beginner/enqueue_with_perform_later.md
|
1114
|
+
- files/rails/background_jobs/beginner/install_sidekiq.md
|
1115
|
+
- files/rails/background_jobs/beginner/monitor_sidekiq_web.md
|
1116
|
+
- files/rails/background_jobs/beginner/pass_arguments_to_job.md
|
1117
|
+
- files/rails/background_jobs/expert/custom_retry_strategy.md
|
1118
|
+
- files/rails/background_jobs/expert/job_orchestration.md
|
1119
|
+
- files/rails/background_jobs/expert/observability_instrumentation.md
|
1120
|
+
- files/rails/background_jobs/expert/sidekiq_batch_callbacks.md
|
1121
|
+
- files/rails/background_jobs/expert/unique_jobs_idempotency.md
|
1122
|
+
- files/rails/background_jobs/middle/configure_retry_and_discard.md
|
1123
|
+
- files/rails/background_jobs/middle/integrate_active_job_sidekiq.md
|
1124
|
+
- files/rails/background_jobs/middle/schedule_jobs_with_active_job.md
|
1125
|
+
- files/rails/background_jobs/middle/serialize_arguments_safely.md
|
1126
|
+
- files/rails/background_jobs/middle/test_background_jobs_in_rspec.md
|
1127
|
+
- files/rails/benchmarking/advanced/benchmark_ips_gem.md
|
1128
|
+
- files/rails/benchmarking/advanced/gc_profiler_memory.md
|
1129
|
+
- files/rails/benchmarking/advanced/micro_benchmark_bmbm.md
|
1130
|
+
- files/rails/benchmarking/advanced/rack_mini_profiler_programmatic.md
|
1131
|
+
- files/rails/benchmarking/advanced/sql_query_notifications.md
|
1132
|
+
- files/rails/benchmarking/beginner/benchmark_bm.md
|
1133
|
+
- files/rails/benchmarking/beginner/benchmark_measure.md
|
1134
|
+
- files/rails/benchmarking/beginner/benchmark_realtime.md
|
1135
|
+
- files/rails/benchmarking/beginner/console_benchmark.md
|
1136
|
+
- files/rails/benchmarking/beginner/rails_logger_benchmark.md
|
1137
|
+
- files/rails/benchmarking/expert/active_support_notifications_metrics.md
|
1138
|
+
- files/rails/benchmarking/expert/concurrent_ruby_benchmark.md
|
1139
|
+
- files/rails/benchmarking/expert/low_level_benchmarking.md
|
1140
|
+
- files/rails/benchmarking/expert/memory_allocation_tracking.md
|
1141
|
+
- files/rails/benchmarking/expert/sql_query_profiling.md
|
1142
|
+
- files/rails/benchmarking/middle/activerecord_n_plus_one_benchmark.md
|
1143
|
+
- files/rails/benchmarking/middle/benchmark_ips_usage.md
|
1144
|
+
- files/rails/benchmarking/middle/console_benchmark_measure.md
|
1145
|
+
- files/rails/benchmarking/middle/rake_task_benchmark.md
|
1146
|
+
- files/rails/benchmarking/middle/view_rendering_benchmark.md
|
1147
|
+
- files/rails/caching/advanced/custom_cache_versioning.md
|
1148
|
+
- files/rails/caching/advanced/dynamic_fragment_caching.md
|
1149
|
+
- files/rails/caching/advanced/http_conditional_caching.md
|
1150
|
+
- files/rails/caching/advanced/low_level_race_condition_ttl.md
|
1151
|
+
- files/rails/caching/advanced/multi_tier_caching.md
|
1152
|
+
- files/rails/caching/advanced/russian_doll_caching.md
|
1153
|
+
- files/rails/caching/beginner/cache_expiration.md
|
1154
|
+
- files/rails/caching/beginner/conditional_fragment_caching.md
|
1155
|
+
- files/rails/caching/beginner/configure_cache_store.md
|
1156
|
+
- files/rails/caching/beginner/low_level_cache_fetch.md
|
1157
|
+
- files/rails/caching/beginner/russian_doll_caching.md
|
1158
|
+
- files/rails/caching/beginner/view_fragment_caching.md
|
1159
|
+
- files/rails/caching/expert/fetch_multi_batch_reads.md
|
1160
|
+
- files/rails/caching/expert/http_conditional_get.md
|
1161
|
+
- files/rails/caching/expert/localcache_with_remote_store.md
|
1162
|
+
- files/rails/caching/expert/race_condition_ttl.md
|
1163
|
+
- files/rails/caching/expert/raw_store_bypass_serialization.md
|
1164
|
+
- files/rails/caching/expert/russian_doll_cache_versioning.md
|
1165
|
+
- files/rails/command_line/advanced/customizing_cli_defaults_with_railsrc.md
|
1166
|
+
- files/rails/command_line/advanced/one_off_scripts_with_runner.md
|
1167
|
+
- files/rails/command_line/beginner/create_new_app.md
|
1168
|
+
- files/rails/command_line/beginner/run_local_server.md
|
1169
|
+
- files/rails/command_line/expert/custom-rails-cli-commands-railtie.md
|
1170
|
+
- files/rails/command_line/expert/spring-custom-commands.md
|
1171
|
+
- files/rails/command_line/middle/filtering_rails_routes.md
|
1172
|
+
- files/rails/command_line/middle/rails_runner_scripts.md
|
1173
|
+
- files/rails/configuration/advanced/conditional_middleware_configuration.md
|
1174
|
+
- files/rails/configuration/advanced/config_for_nested_yaml.md
|
1175
|
+
- files/rails/configuration/advanced/dynamic_custom_config_x.md
|
1176
|
+
- files/rails/configuration/beginner/config_time_zone.md
|
1177
|
+
- files/rails/configuration/beginner/configure_locale.md
|
1178
|
+
- files/rails/configuration/beginner/skip_generator_files.md
|
1179
|
+
- files/rails/configuration/expert/dynamic_config_for.md
|
1180
|
+
- files/rails/configuration/expert/multi_env_encrypted_credentials.md
|
1181
|
+
- files/rails/configuration/expert/railtie_initialization_hooks.md
|
1182
|
+
- files/rails/configuration/middle/custom_app_config.md
|
1183
|
+
- files/rails/configuration/middle/environment_specific_config.md
|
1184
|
+
- files/rails/configuration/middle/load_yaml_config.md
|
1185
|
+
- files/rails/console/advanced/console_custom_helpers.md
|
1186
|
+
- files/rails/console/advanced/console_performance_profiling.md
|
1187
|
+
- files/rails/console/beginner/query_with_console.md
|
1188
|
+
- files/rails/console/beginner/reload_rails_console.md
|
1189
|
+
- files/rails/console/expert/benchmark_explain_active_record.md
|
1190
|
+
- files/rails/console/expert/custom_pry_rc_for_rails_console.md
|
1191
|
+
- files/rails/console/middle/enhanced_output_with_awesomeprint.md
|
1192
|
+
- files/rails/console/middle/quick_reload_application_code.md
|
1193
|
+
- files/rails/controllers/advanced/actioncable_integration.md
|
1194
|
+
- files/rails/controllers/advanced/bulk_insert_update.md
|
1195
|
+
- files/rails/controllers/advanced/controller_concerns_draggable.md
|
1196
|
+
- files/rails/controllers/advanced/controller_testing_shared_examples.md
|
1197
|
+
- files/rails/controllers/advanced/jwt_authentication_in_controllers.md
|
1198
|
+
- files/rails/controllers/advanced/n_plus_one_query_optimization.md
|
1199
|
+
- files/rails/controllers/advanced/rate_limiting_actions.md
|
1200
|
+
- files/rails/controllers/advanced/rescue_from_graceful_errors.md
|
1201
|
+
- files/rails/controllers/advanced/russian_doll_caching.md
|
1202
|
+
- files/rails/controllers/advanced/streaming_json_responses.md
|
1203
|
+
- files/rails/controllers/advanced/strong_params_nested_attributes.md
|
1204
|
+
- files/rails/controllers/advanced/versioned_api_namespaces.md
|
1205
|
+
- files/rails/controllers/beginner/accessing_params.md
|
1206
|
+
- files/rails/controllers/beginner/basic_controller_setup.md
|
1207
|
+
- files/rails/controllers/beginner/defining_restful_actions.md
|
1208
|
+
- files/rails/controllers/beginner/flash_messages.md
|
1209
|
+
- files/rails/controllers/beginner/handling_not_found_errors.md
|
1210
|
+
- files/rails/controllers/beginner/redirecting_after_actions.md
|
1211
|
+
- files/rails/controllers/beginner/rendering_json_responses.md
|
1212
|
+
- files/rails/controllers/beginner/rendering_templates.md
|
1213
|
+
- files/rails/controllers/beginner/responding_to_formats.md
|
1214
|
+
- files/rails/controllers/beginner/using_before_action_filters.md
|
1215
|
+
- files/rails/controllers/beginner/using_partials_to_dry_views.md
|
1216
|
+
- files/rails/controllers/beginner/using_strong_parameters.md
|
1217
|
+
- files/rails/controllers/expert/action_cable_integration.md
|
1218
|
+
- files/rails/controllers/expert/advanced_content_negotiation.md
|
1219
|
+
- files/rails/controllers/expert/controller_concerns_adv.md
|
1220
|
+
- files/rails/controllers/expert/dependency_injection_service_objects.md
|
1221
|
+
- files/rails/controllers/expert/dynamic_action_metaprogramming.md
|
1222
|
+
- files/rails/controllers/expert/http2_server_push.md
|
1223
|
+
- files/rails/controllers/expert/http_caching_conditional_get.md
|
1224
|
+
- files/rails/controllers/expert/instrumentation_notifications_controller.md
|
1225
|
+
- files/rails/controllers/expert/rescue_from_custom_exceptions.md
|
1226
|
+
- files/rails/controllers/expert/streaming_action_controller_live.md
|
1227
|
+
- files/rails/controllers/expert/strong_params_dynamic_filters.md
|
1228
|
+
- files/rails/controllers/expert/threading_parallel_requests.md
|
1229
|
+
- files/rails/controllers/middle/action_caching.md
|
1230
|
+
- files/rails/controllers/middle/before_action_filters.md
|
1231
|
+
- files/rails/controllers/middle/controller_concerns.md
|
1232
|
+
- files/rails/controllers/middle/default_url_options.md
|
1233
|
+
- files/rails/controllers/middle/namespaced_api_controller.md
|
1234
|
+
- files/rails/controllers/middle/nested_resources_management.md
|
1235
|
+
- files/rails/controllers/middle/redirect_back_fallback.md
|
1236
|
+
- files/rails/controllers/middle/rescue_from_errors.md
|
1237
|
+
- files/rails/controllers/middle/respond_to_formats.md
|
1238
|
+
- files/rails/controllers/middle/service_objects.md
|
1239
|
+
- files/rails/controllers/middle/streaming_responses.md
|
1240
|
+
- files/rails/controllers/middle/strong_parameters.md
|
1241
|
+
- files/rails/debugging/advanced/active_support_notifications.md
|
1242
|
+
- files/rails/debugging/advanced/derailed_benchmarks_setup.md
|
1243
|
+
- files/rails/debugging/advanced/memory_profiler_usage.md
|
1244
|
+
- files/rails/debugging/advanced/pry_remote_session.md
|
1245
|
+
- files/rails/debugging/advanced/rack_mini_profiler_production.md
|
1246
|
+
- files/rails/debugging/advanced/ruby_tracepoint_tracing.md
|
1247
|
+
- files/rails/debugging/beginner/binding_irb.md
|
1248
|
+
- files/rails/debugging/beginner/byebug_basics.md
|
1249
|
+
- files/rails/debugging/beginner/logging_debug.md
|
1250
|
+
- files/rails/debugging/beginner/puts_and_inspect.md
|
1251
|
+
- files/rails/debugging/beginner/rails_console.md
|
1252
|
+
- files/rails/debugging/beginner/view_dev_logs.md
|
1253
|
+
- files/rails/debugging/expert/binding_of_caller_usage.md
|
1254
|
+
- files/rails/debugging/expert/byebug_advanced_mastery.md
|
1255
|
+
- files/rails/debugging/expert/custom_exception_pry.md
|
1256
|
+
- files/rails/debugging/expert/notifications_inspector.md
|
1257
|
+
- files/rails/debugging/expert/remote_pry_docker_debug.md
|
1258
|
+
- files/rails/debugging/expert/tracepoint_active_record_sql.md
|
1259
|
+
- files/rails/debugging/middle/active_record_explain_queries.md
|
1260
|
+
- files/rails/debugging/middle/byebug_step_through.md
|
1261
|
+
- files/rails/debugging/middle/conditional_breakpoints.md
|
1262
|
+
- files/rails/debugging/middle/pry_rails_inspection.md
|
1263
|
+
- files/rails/debugging/middle/tagged_logging.md
|
1264
|
+
- files/rails/debugging/middle/web_console_error_pages.md
|
1265
|
+
- files/rails/deployment/advanced/capistrano_parallel_precompile.md
|
1266
|
+
- files/rails/deployment/advanced/k8s_canary_deployment.md
|
1267
|
+
- files/rails/deployment/advanced/puma_phased_restarts.md
|
1268
|
+
- files/rails/deployment/beginner/basic_capistrano_setup.md
|
1269
|
+
- files/rails/deployment/beginner/deploy_to_heroku.md
|
1270
|
+
- files/rails/deployment/beginner/dockerize_rails_app.md
|
1271
|
+
- files/rails/deployment/expert/canary_deployments_k8s_flagger.md
|
1272
|
+
- files/rails/deployment/expert/docker_cache_optimization.md
|
1273
|
+
- files/rails/deployment/expert/zero_downtime_db_migrations.md
|
1274
|
+
- files/rails/deployment/middle/capistrano_custom_tasks.md
|
1275
|
+
- files/rails/deployment/middle/local_asset_precompile.md
|
1276
|
+
- files/rails/deployment/middle/production_credentials_usage.md
|
1277
|
+
- files/rails/encryption/advanced/custom_aws_kms_key_provider.md
|
1278
|
+
- files/rails/encryption/advanced/deterministic_encryption_search.md
|
1279
|
+
- files/rails/encryption/advanced/rotate_encryption_keys.md
|
1280
|
+
- files/rails/encryption/beginner/active_record_encryption.md
|
1281
|
+
- files/rails/encryption/beginner/message_encryptor_basics.md
|
1282
|
+
- files/rails/encryption/beginner/rails_credentials.md
|
1283
|
+
- files/rails/encryption/expert/active_record_attribute_encryption.md
|
1284
|
+
- files/rails/encryption/expert/authenticated_encryption_with_aad.md
|
1285
|
+
- files/rails/encryption/expert/rotate_encryption_keys.md
|
1286
|
+
- files/rails/encryption/middle/active_record_encryption_config.md
|
1287
|
+
- files/rails/encryption/middle/custom_message_encryptor.md
|
1288
|
+
- files/rails/encryption/middle/migrate_existing_to_encrypted.md
|
1289
|
+
- files/rails/engines_and_plugins/advanced/asset_pipeline_and_migrations_railtie.md
|
1290
|
+
- files/rails/engines_and_plugins/advanced/custom_generator_extension.md
|
1291
|
+
- files/rails/engines_and_plugins/advanced/dynamic_engine_mounting.md
|
1292
|
+
- files/rails/engines_and_plugins/advanced/isolate_namespace_engine_config.md
|
1293
|
+
- files/rails/engines_and_plugins/beginner/engine_basic_setup.md
|
1294
|
+
- files/rails/engines_and_plugins/beginner/engine_models_migrations.md
|
1295
|
+
- files/rails/engines_and_plugins/beginner/engine_mounting.md
|
1296
|
+
- files/rails/engines_and_plugins/beginner/plugin_basic_setup.md
|
1297
|
+
- files/rails/engines_and_plugins/expert/custom_plugin_with_railtie.md
|
1298
|
+
- files/rails/engines_and_plugins/expert/isolate_namespace_advanced.md
|
1299
|
+
- files/rails/engines_and_plugins/expert/optimize_engine_loading.md
|
1300
|
+
- files/rails/engines_and_plugins/expert/railtie_middleware_hooks.md
|
1301
|
+
- files/rails/engines_and_plugins/middle/configuring_engine_initializers.md
|
1302
|
+
- files/rails/engines_and_plugins/middle/mounting_engines_routes.md
|
1303
|
+
- files/rails/engines_and_plugins/middle/overriding_engine_views.md
|
1304
|
+
- files/rails/engines_and_plugins/middle/using_plugin_rails_generators.md
|
1305
|
+
- files/rails/environments/advanced/config_for_env_settings.md
|
1306
|
+
- files/rails/environments/advanced/multi_env_credentials.md
|
1307
|
+
- files/rails/environments/beginner/checking_and_setting_rails_environment.md
|
1308
|
+
- files/rails/environments/beginner/running_rails_in_different_environments.md
|
1309
|
+
- files/rails/environments/expert/dynamic_environment_switching_middleware.md
|
1310
|
+
- files/rails/environments/expert/environment_layering_with_common.md
|
1311
|
+
- files/rails/environments/middle/environment_file_configuration.md
|
1312
|
+
- files/rails/environments/middle/rails_env_conditional_logic.md
|
1313
|
+
- files/rails/forms/advanced/accessibility_enhancements_with_aria.md
|
1314
|
+
- files/rails/forms/advanced/ajax_remote_form_submission.md
|
1315
|
+
- files/rails/forms/advanced/cache_form_partials_for_performance.md
|
1316
|
+
- files/rails/forms/advanced/conditional_fields_with_stimulus.md
|
1317
|
+
- files/rails/forms/advanced/custom_form_builder_shared_helpers.md
|
1318
|
+
- files/rails/forms/advanced/direct_s3_uploads_with_active_storage.md
|
1319
|
+
- files/rails/forms/advanced/dynamic_nested_fields_with_cocoon.md
|
1320
|
+
- files/rails/forms/advanced/form_object_with_reform.md
|
1321
|
+
- files/rails/forms/advanced/multi_step_form_wizard.md
|
1322
|
+
- files/rails/forms/advanced/stimulus_reflex_real_time_validation.md
|
1323
|
+
- files/rails/forms/beginner/checkbox_and_radio.md
|
1324
|
+
- files/rails/forms/beginner/date_time_select.md
|
1325
|
+
- files/rails/forms/beginner/display_error_messages.md
|
1326
|
+
- files/rails/forms/beginner/file_upload_field.md
|
1327
|
+
- files/rails/forms/beginner/form_tag_basics.md
|
1328
|
+
- files/rails/forms/beginner/form_with_model.md
|
1329
|
+
- files/rails/forms/beginner/nested_fields_for.md
|
1330
|
+
- files/rails/forms/beginner/password_field_basics.md
|
1331
|
+
- files/rails/forms/beginner/select_dropdown.md
|
1332
|
+
- files/rails/forms/beginner/text_field_and_label.md
|
1333
|
+
- files/rails/forms/expert/action_text_integration.md
|
1334
|
+
- files/rails/forms/expert/advanced_strong_parameters.md
|
1335
|
+
- files/rails/forms/expert/custom_form_builder.md
|
1336
|
+
- files/rails/forms/expert/dynamic_nested_forms.md
|
1337
|
+
- files/rails/forms/expert/form_object_pattern.md
|
1338
|
+
- files/rails/forms/expert/i18n_and_accessibility.md
|
1339
|
+
- files/rails/forms/expert/polymorphic_form_inputs.md
|
1340
|
+
- files/rails/forms/expert/real_time_validations.md
|
1341
|
+
- files/rails/forms/expert/select_options_caching.md
|
1342
|
+
- files/rails/forms/middle/checkbox_array_input.md
|
1343
|
+
- files/rails/forms/middle/collection_select_association.md
|
1344
|
+
- files/rails/forms/middle/csrf_token_auto.md
|
1345
|
+
- files/rails/forms/middle/custom_error_highlighting.md
|
1346
|
+
- files/rails/forms/middle/custom_form_builder.md
|
1347
|
+
- files/rails/forms/middle/custom_input_options.md
|
1348
|
+
- files/rails/forms/middle/file_field_active_storage.md
|
1349
|
+
- files/rails/forms/middle/form_with_remote_submissions.md
|
1350
|
+
- files/rails/forms/middle/i18n_labels.md
|
1351
|
+
- files/rails/forms/middle/nested_fields_for_models.md
|
1352
|
+
- files/rails/helpers/advanced/caching_heavy_helper_computations.md
|
1353
|
+
- files/rails/helpers/advanced/dynamic_content_tag_with_blocks.md
|
1354
|
+
- files/rails/helpers/advanced/dynamic_partial_resolution_with_lookup_context.md
|
1355
|
+
- files/rails/helpers/advanced/extending_javascript_helper_for_i18n.md
|
1356
|
+
- files/rails/helpers/advanced/injecting_helpers_into_mailers.md
|
1357
|
+
- files/rails/helpers/advanced/render_partials_from_helpers.md
|
1358
|
+
- files/rails/helpers/beginner/rails_helper_content_tag.md
|
1359
|
+
- files/rails/helpers/beginner/rails_helper_form_with.md
|
1360
|
+
- files/rails/helpers/beginner/rails_helper_image_tag.md
|
1361
|
+
- files/rails/helpers/beginner/rails_helper_link_to.md
|
1362
|
+
- files/rails/helpers/beginner/rails_helper_number_to_currency.md
|
1363
|
+
- files/rails/helpers/beginner/rails_helper_simple_format.md
|
1364
|
+
- files/rails/helpers/expert/dsl_fluent_helpers.md
|
1365
|
+
- files/rails/helpers/expert/include_helpers_in_mailers.md
|
1366
|
+
- files/rails/helpers/expert/memoization_with_rails_cache.md
|
1367
|
+
- files/rails/helpers/expert/metaprogramming_method_missing_helpers.md
|
1368
|
+
- files/rails/helpers/expert/organizing_helpers_with_concern.md
|
1369
|
+
- files/rails/helpers/expert/testing_helpers_with_actionview.md
|
1370
|
+
- files/rails/helpers/middle/capture_blocks.md
|
1371
|
+
- files/rails/helpers/middle/content_tag_usage.md
|
1372
|
+
- files/rails/helpers/middle/custom_helper_modules.md
|
1373
|
+
- files/rails/helpers/middle/link_to_dynamic_routes.md
|
1374
|
+
- files/rails/helpers/middle/number_helpers_usage.md
|
1375
|
+
- files/rails/helpers/middle/tag_helper_void_elements.md
|
1376
|
+
- files/rails/i18n/advanced/advanced_pluralization.md
|
1377
|
+
- files/rails/i18n/advanced/custom_db_backend.md
|
1378
|
+
- files/rails/i18n/advanced/html_safe_interpolation.md
|
1379
|
+
- files/rails/i18n/advanced/lazy_mailer_lookup.md
|
1380
|
+
- files/rails/i18n/advanced/proc_based_default_fallback.md
|
1381
|
+
- files/rails/i18n/beginner/interpolation_in_translations.md
|
1382
|
+
- files/rails/i18n/beginner/organize_locale_files.md
|
1383
|
+
- files/rails/i18n/beginner/pluralization_examples.md
|
1384
|
+
- files/rails/i18n/beginner/setup_default_locale.md
|
1385
|
+
- files/rails/i18n/beginner/translate_in_views.md
|
1386
|
+
- files/rails/i18n/expert/caching_translations_memcache.md
|
1387
|
+
- files/rails/i18n/expert/complex_pluralization_rules.md
|
1388
|
+
- files/rails/i18n/expert/custom_active_record_backend.md
|
1389
|
+
- files/rails/i18n/expert/namespace_lazy_lookups.md
|
1390
|
+
- files/rails/i18n/expert/thread_safe_locale_switching.md
|
1391
|
+
- files/rails/i18n/middle/datetime_localization.md
|
1392
|
+
- files/rails/i18n/middle/default_translation_options.md
|
1393
|
+
- files/rails/i18n/middle/locale_fallbacks.md
|
1394
|
+
- files/rails/i18n/middle/pluralization_with_count.md
|
1395
|
+
- files/rails/i18n/middle/scoped_view_translations.md
|
1396
|
+
- files/rails/layouts/advanced/custom_lookup_context_for_layout.md
|
1397
|
+
- files/rails/layouts/advanced/dynamic_layout_selection.md
|
1398
|
+
- files/rails/layouts/advanced/engine_isolated_layouts.md
|
1399
|
+
- files/rails/layouts/advanced/layout_variants_by_format.md
|
1400
|
+
- files/rails/layouts/advanced/nested_layouts_with_content_for.md
|
1401
|
+
- files/rails/layouts/beginner/application_layout.md
|
1402
|
+
- files/rails/layouts/beginner/custom_controller_layout.md
|
1403
|
+
- files/rails/layouts/beginner/layout_inheritance.md
|
1404
|
+
- files/rails/layouts/beginner/nested_layouts_partials.md
|
1405
|
+
- files/rails/layouts/beginner/yield_content_for.md
|
1406
|
+
- files/rails/layouts/expert/advanced_content_for_yields.md
|
1407
|
+
- files/rails/layouts/expert/dynamic_layout_selection.md
|
1408
|
+
- files/rails/layouts/expert/layout_fragment_caching.md
|
1409
|
+
- files/rails/layouts/expert/nested_layout_inheritance.md
|
1410
|
+
- files/rails/layouts/expert/view_component_layouts.md
|
1411
|
+
- files/rails/layouts/middle/asset_helpers_in_layout.md.md
|
1412
|
+
- files/rails/layouts/middle/content_for_and_yield.md.md
|
1413
|
+
- files/rails/layouts/middle/dynamic_controller_layout.md.md
|
1414
|
+
- files/rails/layouts/middle/nested_layouts.md.md
|
1415
|
+
- files/rails/layouts/middle/partial_locals_in_layout.md.md
|
1416
|
+
- files/rails/logging/advanced/asynchronous_logging.md
|
1417
|
+
- files/rails/logging/advanced/custom_log_formatter.md
|
1418
|
+
- files/rails/logging/advanced/lograge_logstash_integration.md
|
1419
|
+
- files/rails/logging/advanced/sql_query_context_logging.md
|
1420
|
+
- files/rails/logging/advanced/structured_json_logging.md
|
1421
|
+
- files/rails/logging/advanced/tagged_logging_context.md
|
1422
|
+
- files/rails/logging/beginner/custom_log_formatter.md
|
1423
|
+
- files/rails/logging/beginner/default_logger_usage.md
|
1424
|
+
- files/rails/logging/beginner/logging_in_controllers.md
|
1425
|
+
- files/rails/logging/beginner/logging_in_models.md
|
1426
|
+
- files/rails/logging/beginner/setting_log_levels.md
|
1427
|
+
- files/rails/logging/beginner/tagged_logging.md
|
1428
|
+
- files/rails/logging/expert/async_buffered_logging.md
|
1429
|
+
- files/rails/logging/expert/custom_active_support_logsubscriber.md
|
1430
|
+
- files/rails/logging/expert/enhance_lograge_custom_payloads.md
|
1431
|
+
- files/rails/logging/expert/implement_correlation_id_tracing.md
|
1432
|
+
- files/rails/logging/expert/instrument_performance_with_notifications.md
|
1433
|
+
- files/rails/logging/expert/structure_json_logs_semantic.md
|
1434
|
+
- files/rails/logging/middle/active_record_sql_logging.md
|
1435
|
+
- files/rails/logging/middle/broadcast_to_multiple_loggers.md
|
1436
|
+
- files/rails/logging/middle/custom_log_formatter.md
|
1437
|
+
- files/rails/logging/middle/environment_log_levels.md
|
1438
|
+
- files/rails/logging/middle/silence_logging.md
|
1439
|
+
- files/rails/logging/middle/tagged_logging.md
|
1440
|
+
- files/rails/mailers/advanced/async_mail_delivery.md
|
1441
|
+
- files/rails/mailers/advanced/custom_delivery_method.md
|
1442
|
+
- files/rails/mailers/advanced/dynamic_subjects_i18n.md
|
1443
|
+
- files/rails/mailers/advanced/instrumentation_monitoring.md
|
1444
|
+
- files/rails/mailers/advanced/interceptors_observers.md
|
1445
|
+
- files/rails/mailers/advanced/mailer_previews_locales.md
|
1446
|
+
- files/rails/mailers/advanced/parameterized_mailers.md
|
1447
|
+
- files/rails/mailers/advanced/streaming_attachments.md
|
1448
|
+
- files/rails/mailers/beginner/background_jobs_emails.md
|
1449
|
+
- files/rails/mailers/beginner/default_options.md
|
1450
|
+
- files/rails/mailers/beginner/generating_mailer.md
|
1451
|
+
- files/rails/mailers/beginner/mailer_methods_templates.md
|
1452
|
+
- files/rails/mailers/beginner/preview_emails.md
|
1453
|
+
- files/rails/mailers/beginner/send_emails_controllers.md
|
1454
|
+
- files/rails/mailers/beginner/smtp_configuration.md
|
1455
|
+
- files/rails/mailers/beginner/test_mailers.md
|
1456
|
+
- files/rails/mailers/expert/custom_delivery_method.md
|
1457
|
+
- files/rails/mailers/expert/custom_mailer_preview.md
|
1458
|
+
- files/rails/mailers/expert/dynamic_multipart_variants.md
|
1459
|
+
- files/rails/mailers/expert/instrumentation_and_metrics.md
|
1460
|
+
- files/rails/mailers/expert/mail_interceptors_observers.md
|
1461
|
+
- files/rails/mailers/expert/mailer_concerns_mixins.md
|
1462
|
+
- files/rails/mailers/expert/prioritized_async_delivery.md
|
1463
|
+
- files/rails/mailers/expert/streaming_attachments_s3.md
|
1464
|
+
- files/rails/mailers/middle/attachments_inline_images.md
|
1465
|
+
- files/rails/mailers/middle/background_delivery_active_job.md
|
1466
|
+
- files/rails/mailers/middle/customizing_layouts.md
|
1467
|
+
- files/rails/mailers/middle/default_url_options.md
|
1468
|
+
- files/rails/mailers/middle/localizing_content.md
|
1469
|
+
- files/rails/mailers/middle/mailer_previews.md
|
1470
|
+
- files/rails/mailers/middle/testing_mailers.md
|
1471
|
+
- files/rails/mailers/middle/using_helpers_in_mailers.md
|
1472
|
+
- files/rails/middleware/advanced/conditional_middleware_insertion.md
|
1473
|
+
- files/rails/middleware/advanced/custom_logging_middleware.md
|
1474
|
+
- files/rails/middleware/advanced/middleware_stack_inspection.md
|
1475
|
+
- files/rails/middleware/advanced/response_timing_middleware.md
|
1476
|
+
- files/rails/middleware/beginner/cors_middleware.md
|
1477
|
+
- files/rails/middleware/beginner/custom_middleware_setup.md
|
1478
|
+
- files/rails/middleware/beginner/insert_middleware_position.md
|
1479
|
+
- files/rails/middleware/beginner/request_logging_middleware.md
|
1480
|
+
- files/rails/middleware/expert/conditional_asset_pipeline_forking.md
|
1481
|
+
- files/rails/middleware/expert/dynamic_request_throttling_middleware.md
|
1482
|
+
- files/rails/middleware/expert/rotating_security_header_injector.md
|
1483
|
+
- files/rails/middleware/expert/stale_while_revalidate_cache_middleware.md
|
1484
|
+
- files/rails/middleware/middle/conditional_middleware_loading.md
|
1485
|
+
- files/rails/middleware/middle/custom_request_logger_middleware.md
|
1486
|
+
- files/rails/middleware/middle/middleware_insertion_points.md
|
1487
|
+
- files/rails/middleware/middle/testing_middleware_integration.md
|
1488
|
+
- files/rails/models/advanced/advisory_locks_for_concurrency_control.md
|
1489
|
+
- files/rails/models/advanced/bulk_upsert_with_upsert_all.md
|
1490
|
+
- files/rails/models/advanced/composite_primary_keys_usage.md
|
1491
|
+
- files/rails/models/advanced/custom_attribute_api_types.md
|
1492
|
+
- files/rails/models/advanced/db_check_constraints_for_validation.md
|
1493
|
+
- files/rails/models/advanced/model_concerns_for_modular_logic.md
|
1494
|
+
- files/rails/models/advanced/optimistic_locking_advanced.md
|
1495
|
+
- files/rails/models/advanced/parameterized_scopes_for_reusability.md
|
1496
|
+
- files/rails/models/advanced/postgres_enum_with_attribute_api.md
|
1497
|
+
- files/rails/models/advanced/using_arel_for_complex_queries.md
|
1498
|
+
- files/rails/models/beginner/model_associations.md
|
1499
|
+
- files/rails/models/beginner/model_callbacks.md
|
1500
|
+
- files/rails/models/beginner/model_constants.md
|
1501
|
+
- files/rails/models/beginner/model_custom_queries.md
|
1502
|
+
- files/rails/models/beginner/model_default_values.md
|
1503
|
+
- files/rails/models/beginner/model_delegation.md
|
1504
|
+
- files/rails/models/beginner/model_enums.md
|
1505
|
+
- files/rails/models/beginner/model_scopes.md
|
1506
|
+
- files/rails/models/beginner/model_testing.md
|
1507
|
+
- files/rails/models/beginner/model_validations.md
|
1508
|
+
- files/rails/models/expert/active_record_encryption.md
|
1509
|
+
- files/rails/models/expert/after_initialize_caching.md
|
1510
|
+
- files/rails/models/expert/arel_complex_subquery.md
|
1511
|
+
- files/rails/models/expert/composite_primary_keys.md
|
1512
|
+
- files/rails/models/expert/custom_dirty_tracking.md
|
1513
|
+
- files/rails/models/expert/custom_optimistic_locking.md
|
1514
|
+
- files/rails/models/expert/dynamic_scopes_metaprogramming.md
|
1515
|
+
- files/rails/models/expert/json_column_virtual_attributes.md
|
1516
|
+
- files/rails/models/expert/partitioned_table_models.md
|
1517
|
+
- files/rails/models/expert/sti_abstract_base.md
|
1518
|
+
- files/rails/models/middle/rails_models_association_counter_cache.md
|
1519
|
+
- files/rails/models/middle/rails_models_callbacks_best_practices.md
|
1520
|
+
- files/rails/models/middle/rails_models_custom_validations.md
|
1521
|
+
- files/rails/models/middle/rails_models_default_scope.md
|
1522
|
+
- files/rails/models/middle/rails_models_dirty_tracking.md
|
1523
|
+
- files/rails/models/middle/rails_models_enums.md
|
1524
|
+
- files/rails/models/middle/rails_models_polymorphic_association.md
|
1525
|
+
- files/rails/models/middle/rails_models_scopes.md
|
1526
|
+
- files/rails/models/middle/rails_models_serialization.md
|
1527
|
+
- files/rails/models/middle/rails_models_transactions.md
|
1528
|
+
- files/rails/partials/advanced/collection_partial_caching.md.md
|
1529
|
+
- files/rails/partials/advanced/dynamic_view_path_overrides.md.md
|
1530
|
+
- files/rails/partials/advanced/partial_with_layout.md.md
|
1531
|
+
- files/rails/partials/advanced/variant_specific_partials.md.md
|
1532
|
+
- files/rails/partials/beginner/basic_partial_rendering.md
|
1533
|
+
- files/rails/partials/beginner/partial_naming_conventions.md
|
1534
|
+
- files/rails/partials/beginner/passing_local_variables.md
|
1535
|
+
- files/rails/partials/beginner/rendering_collections.md
|
1536
|
+
- files/rails/partials/expert/dynamic_partial_resolution.md
|
1537
|
+
- files/rails/partials/expert/namespaced_partial_overrides.md
|
1538
|
+
- files/rails/partials/expert/partial_with_layout.md
|
1539
|
+
- files/rails/partials/expert/russian_doll_caching_partials.md
|
1540
|
+
- files/rails/partials/middle/caching_partials.md
|
1541
|
+
- files/rails/partials/middle/nested_partials.md
|
1542
|
+
- files/rails/partials/middle/passing_locals_to_partials.md
|
1543
|
+
- files/rails/partials/middle/rendering_collections.md
|
1544
|
+
- files/rails/performance/advanced/bulk_upserts_with_upsert_all.md
|
1545
|
+
- files/rails/performance/advanced/cpu_profiling_with_stackprof.md
|
1546
|
+
- files/rails/performance/advanced/custom_polymorphic_preloader.md
|
1547
|
+
- files/rails/performance/advanced/db_connection_pool_tuning.md
|
1548
|
+
- files/rails/performance/advanced/http_caching_with_etag.md
|
1549
|
+
- files/rails/performance/advanced/multiple_db_read_routing.md
|
1550
|
+
- files/rails/performance/advanced/preload_for_callbacks.md
|
1551
|
+
- files/rails/performance/advanced/ruby_gc_tunables.md
|
1552
|
+
- files/rails/performance/advanced/sql_query_commenting.md
|
1553
|
+
- files/rails/performance/advanced/streaming_large_responses.md
|
1554
|
+
- files/rails/performance/beginner/add_database_indexes.md
|
1555
|
+
- files/rails/performance/beginner/counter_cache_usage.md
|
1556
|
+
- files/rails/performance/beginner/eager_loading_includes.md
|
1557
|
+
- files/rails/performance/beginner/find_each_batch_processing.md
|
1558
|
+
- files/rails/performance/beginner/fragment_caching_views.md
|
1559
|
+
- files/rails/performance/beginner/pagination_with_kaminari.md
|
1560
|
+
- files/rails/performance/beginner/pluck_instead_of_select.md
|
1561
|
+
- files/rails/performance/beginner/precompile_assets_production.md
|
1562
|
+
- files/rails/performance/beginner/rack_mini_profiler_setup.md
|
1563
|
+
- files/rails/performance/beginner/russian_doll_caching.md
|
1564
|
+
- files/rails/performance/expert/active_support_instrumentation.md
|
1565
|
+
- files/rails/performance/expert/async_query_loading.md
|
1566
|
+
- files/rails/performance/expert/batch_preloading_scopes.md
|
1567
|
+
- files/rails/performance/expert/fast_jsonapi_serialization.md
|
1568
|
+
- files/rails/performance/expert/gc_jemalloc_tuning.md
|
1569
|
+
- files/rails/performance/expert/middleware_stack_refinement.md
|
1570
|
+
- files/rails/performance/expert/partial_expression_indexes.md
|
1571
|
+
- files/rails/performance/expert/puma_connection_pool_tuning.md
|
1572
|
+
- files/rails/performance/expert/streaming_live_responses.md
|
1573
|
+
- files/rails/performance/expert/two_level_caching.md
|
1574
|
+
- files/rails/performance/middle/batch_processing_with_find_each.md
|
1575
|
+
- files/rails/performance/middle/bulk_insertions_with_insert_all.md
|
1576
|
+
- files/rails/performance/middle/eager_loading_associations.md
|
1577
|
+
- files/rails/performance/middle/integrating_bullet_gem.md
|
1578
|
+
- files/rails/performance/middle/leveraging_rack_mini_profiler.md
|
1579
|
+
- files/rails/performance/middle/low_level_caching_with_cache_fetch.md
|
1580
|
+
- files/rails/performance/middle/optimizing_sql_indexes.md
|
1581
|
+
- files/rails/performance/middle/selecting_specific_columns.md
|
1582
|
+
- files/rails/performance/middle/using_counter_cache.md
|
1583
|
+
- files/rails/performance/middle/using_pluck_for_arrays.md
|
1584
|
+
- files/rails/routing/advanced/api_versioning.md
|
1585
|
+
- files/rails/routing/advanced/globbing_routes.md
|
1586
|
+
- files/rails/routing/advanced/route_constraints.md
|
1587
|
+
- files/rails/routing/advanced/routing_concerns.md
|
1588
|
+
- files/rails/routing/advanced/shallow_routing.md
|
1589
|
+
- files/rails/routing/beginner/inspect_routes.md
|
1590
|
+
- files/rails/routing/beginner/named_custom_routes.md
|
1591
|
+
- files/rails/routing/beginner/nested_resources.md
|
1592
|
+
- files/rails/routing/beginner/restful_resources.md
|
1593
|
+
- files/rails/routing/beginner/root_route.md
|
1594
|
+
- files/rails/routing/expert/advanced_route_globbing.md
|
1595
|
+
- files/rails/routing/expert/api_versioning_constraint.md
|
1596
|
+
- files/rails/routing/expert/dynamic_db_driven_routes.md
|
1597
|
+
- files/rails/routing/expert/dynamic_route_macros.md
|
1598
|
+
- files/rails/routing/expert/localized_routes_i18n.md
|
1599
|
+
- files/rails/routing/middle/member_collection_routes.md
|
1600
|
+
- files/rails/routing/middle/route_constraints_lambda.md
|
1601
|
+
- files/rails/routing/middle/route_globbing.md
|
1602
|
+
- files/rails/routing/middle/routing_concerns.md
|
1603
|
+
- files/rails/routing/middle/shallow_nesting.md
|
1604
|
+
- files/rails/secrets_and_credentials/advanced/credentials_rotation_workflow.md
|
1605
|
+
- files/rails/secrets_and_credentials/advanced/environment_specific_credentials.md
|
1606
|
+
- files/rails/secrets_and_credentials/advanced/nested_credentials_access.md
|
1607
|
+
- files/rails/secrets_and_credentials/beginner/accessing_credentials_in_code.md
|
1608
|
+
- files/rails/secrets_and_credentials/beginner/editing_credentials.md
|
1609
|
+
- files/rails/secrets_and_credentials/beginner/env_specific_credentials.md
|
1610
|
+
- files/rails/secrets_and_credentials/expert/aws_kms_credentials_provider.md
|
1611
|
+
- files/rails/secrets_and_credentials/expert/credentials_rotation_task.md
|
1612
|
+
- files/rails/secrets_and_credentials/expert/multi_layer_credentials.md
|
1613
|
+
- files/rails/secrets_and_credentials/middle/access_nested_credentials.md
|
1614
|
+
- files/rails/secrets_and_credentials/middle/manage_env_credentials.md
|
1615
|
+
- files/rails/secrets_and_credentials/middle/rotate_master_key.md
|
1616
|
+
- files/rails/security/advanced/advanced_active_record_relation_filters.md
|
1617
|
+
- files/rails/security/advanced/audit_logging_with_paper_trail.md
|
1618
|
+
- files/rails/security/advanced/blind_index_for_searchable_encrypted_data.md
|
1619
|
+
- files/rails/security/advanced/devise_two_factor_authentication.md
|
1620
|
+
- files/rails/security/advanced/dynamic_csp_with_secure_headers.md
|
1621
|
+
- files/rails/security/advanced/encrypted_credentials_multi_environment.md
|
1622
|
+
- files/rails/security/advanced/host_authorization_middleware.md
|
1623
|
+
- files/rails/security/advanced/hsts_strict_transport_security.md
|
1624
|
+
- files/rails/security/advanced/masked_csrf_tokens.md
|
1625
|
+
- files/rails/security/advanced/oauth_pkce_flow.md
|
1626
|
+
- files/rails/security/advanced/rack_attack_custom_throttle.md
|
1627
|
+
- files/rails/security/advanced/safe_raw_sql_with_binds.md
|
1628
|
+
- files/rails/security/advanced/sanitize_action_text_allowlists.md
|
1629
|
+
- files/rails/security/advanced/secure_active_storage_uploads.md
|
1630
|
+
- files/rails/security/advanced/secure_session_cookie_settings.md
|
1631
|
+
- files/rails/security/beginner/active_record_query_interface.md
|
1632
|
+
- files/rails/security/beginner/before_action_authenticate.md
|
1633
|
+
- files/rails/security/beginner/content_security_policy.md
|
1634
|
+
- files/rails/security/beginner/credentials_secret_key_base.md
|
1635
|
+
- files/rails/security/beginner/csrf_protection.md
|
1636
|
+
- files/rails/security/beginner/escape_html_output.md
|
1637
|
+
- files/rails/security/beginner/filter_sensitive_parameters.md
|
1638
|
+
- files/rails/security/beginner/force_ssl.md
|
1639
|
+
- files/rails/security/beginner/has_secure_password.md
|
1640
|
+
- files/rails/security/beginner/limit_file_uploads.md
|
1641
|
+
- files/rails/security/beginner/remove_debug_gems.md
|
1642
|
+
- files/rails/security/beginner/secure_headers.md
|
1643
|
+
- files/rails/security/beginner/secure_string_comparison.md
|
1644
|
+
- files/rails/security/beginner/strong_parameters.md
|
1645
|
+
- files/rails/security/beginner/validate_input_formats.md
|
1646
|
+
- files/rails/security/expert/active_record_encryption_rotation.md
|
1647
|
+
- files/rails/security/expert/activestorage_s3_secure_upload.md
|
1648
|
+
- files/rails/security/expert/arel_safe_dynamic_queries.md
|
1649
|
+
- files/rails/security/expert/ci_dependency_audit.md
|
1650
|
+
- files/rails/security/expert/cookie_secret_rotation.md
|
1651
|
+
- files/rails/security/expert/csp_violation_report_endpoint.md
|
1652
|
+
- files/rails/security/expert/csp_with_nonces.md
|
1653
|
+
- files/rails/security/expert/deep_parameter_sanitization.md
|
1654
|
+
- files/rails/security/expert/disable_xxe_parsing.md
|
1655
|
+
- files/rails/security/expert/hsts_preload.md
|
1656
|
+
- files/rails/security/expert/jwt_with_jwks_rotation.md
|
1657
|
+
- files/rails/security/expert/rack_attack_dynamic_throttles.md
|
1658
|
+
- files/rails/security/expert/safe_redirect_whitelist.md
|
1659
|
+
- files/rails/security/expert/strict_cors_dynamic_origins.md
|
1660
|
+
- files/rails/security/expert/timing_attack_secure_compare.md
|
1661
|
+
- files/rails/security/middle/active_record_encryption.md
|
1662
|
+
- files/rails/security/middle/bcrypt_passwords.md
|
1663
|
+
- files/rails/security/middle/content_security_policy.md
|
1664
|
+
- files/rails/security/middle/csrf_protection.md
|
1665
|
+
- files/rails/security/middle/enforce_ssl.md
|
1666
|
+
- files/rails/security/middle/file_upload_validation.md
|
1667
|
+
- files/rails/security/middle/output_escaping.md
|
1668
|
+
- files/rails/security/middle/parameter_filtering.md
|
1669
|
+
- files/rails/security/middle/rack_attack_rate_limiting.md
|
1670
|
+
- files/rails/security/middle/secure_cookies_flag.md
|
1671
|
+
- files/rails/security/middle/secure_redirects.md
|
1672
|
+
- files/rails/security/middle/security_headers.md
|
1673
|
+
- files/rails/security/middle/sql_injection_prevention.md
|
1674
|
+
- files/rails/security/middle/strong_parameters.md
|
1675
|
+
- files/rails/security/middle/x_frame_options.md
|
1676
|
+
- files/rails/sessions_and_cookies/advanced/json_hybrid_session_serializer.md
|
1677
|
+
- files/rails/sessions_and_cookies/advanced/rotate_cookie_encryption_keys.md
|
1678
|
+
- files/rails/sessions_and_cookies/advanced/sliding_session_expiration.md
|
1679
|
+
- files/rails/sessions_and_cookies/beginner/setting_basic_cookies_with_expiry.md
|
1680
|
+
- files/rails/sessions_and_cookies/beginner/using_sessions_to_store_user_data.md
|
1681
|
+
- files/rails/sessions_and_cookies/beginner/using_signed_cookies_for_tamper_protection.md
|
1682
|
+
- files/rails/sessions_and_cookies/expert/encrypted_cookie_segmentation.md
|
1683
|
+
- files/rails/sessions_and_cookies/expert/multi_domain_redis_sessions.md
|
1684
|
+
- files/rails/sessions_and_cookies/expert/session_secret_rotation.md
|
1685
|
+
- files/rails/sessions_and_cookies/middle/rolling_session_expiration.md
|
1686
|
+
- files/rails/sessions_and_cookies/middle/store_cart_in_session.md
|
1687
|
+
- files/rails/sessions_and_cookies/middle/use_signed_encrypted_cookies.md
|
1688
|
+
- files/rails/testing/advanced/dynamic_vcr_cassettes.md
|
1689
|
+
- files/rails/testing/advanced/parallel_test_execution.md
|
1690
|
+
- files/rails/testing/advanced/property_based_testing_with_rantly.md
|
1691
|
+
- files/rails/testing/advanced/rspec_profile_slow_specs.md
|
1692
|
+
- files/rails/testing/advanced/testprof_factorydoctor_integration.md
|
1693
|
+
- files/rails/testing/beginner/controller_request_spec.md
|
1694
|
+
- files/rails/testing/beginner/factorybot_basics.md
|
1695
|
+
- files/rails/testing/beginner/model_validation_spec.md
|
1696
|
+
- files/rails/testing/beginner/setup_rspec.md
|
1697
|
+
- files/rails/testing/beginner/using_fixtures.md
|
1698
|
+
- files/rails/testing/expert/custom_json_schema_matcher.md
|
1699
|
+
- files/rails/testing/expert/event_driven_testing.md
|
1700
|
+
- files/rails/testing/expert/mutant_integration.md
|
1701
|
+
- files/rails/testing/expert/parallel_capybara_tests.md
|
1702
|
+
- files/rails/testing/expert/test_prof_optimizations.md
|
1703
|
+
- files/rails/testing/middle/activejob_test_adapter.md
|
1704
|
+
- files/rails/testing/middle/dry_test_setup_let_subject.md
|
1705
|
+
- files/rails/testing/middle/file_uploads_fixture.md
|
1706
|
+
- files/rails/testing/middle/json_api_parsing.md
|
1707
|
+
- files/rails/testing/middle/reuse_tests_shared_examples.md
|
1708
|
+
- files/rails/versioning/advanced/dynamic_api_version_constraints.md
|
1709
|
+
- files/rails/versioning/advanced/paper_trail_advanced_usage.md
|
1710
|
+
- files/rails/versioning/advanced/serializer_version_selection.md
|
1711
|
+
- files/rails/versioning/beginner/bundle_update_rails.md
|
1712
|
+
- files/rails/versioning/beginner/check_current_rails_version.md
|
1713
|
+
- files/rails/versioning/beginner/lock_rails_version_gemfile.md
|
1714
|
+
- files/rails/versioning/expert/custom_header_versioning_constraint.md
|
1715
|
+
- files/rails/versioning/expert/deprecation_middleware_fallback.md
|
1716
|
+
- files/rails/versioning/expert/versioned_autoload_paths.md
|
1717
|
+
- files/rails/versioning/middle/versioning_header.md
|
1718
|
+
- files/rails/versioning/middle/versioning_namespaces.md
|
1719
|
+
- files/rails/versioning/middle/versioning_route_constraints.md
|
1720
|
+
- files/rails/views/advanced/capture-safeconcat.md
|
1721
|
+
- files/rails/views/advanced/cells-gem-usage.md
|
1722
|
+
- files/rails/views/advanced/custom-form-builder.md
|
1723
|
+
- files/rails/views/advanced/decorator-pattern-views.md
|
1724
|
+
- files/rails/views/advanced/dynamic-view-paths.md
|
1725
|
+
- files/rails/views/advanced/lazy-asset-loading.md
|
1726
|
+
- files/rails/views/advanced/named-content-slots.md
|
1727
|
+
- files/rails/views/advanced/nested-fragment-caching.md
|
1728
|
+
- files/rails/views/advanced/partial-caching-russian-doll.md
|
1729
|
+
- files/rails/views/advanced/stimulusjs-integration.md
|
1730
|
+
- files/rails/views/advanced/streaming-template-rendering.md
|
1731
|
+
- files/rails/views/advanced/viewcomponent-usage.md
|
1732
|
+
- files/rails/views/beginner/content_for_and_yield.md
|
1733
|
+
- files/rails/views/beginner/content_tag_usage.md
|
1734
|
+
- files/rails/views/beginner/escaping_html.md
|
1735
|
+
- files/rails/views/beginner/forms_form_with.md
|
1736
|
+
- files/rails/views/beginner/helpers_image_tag.md
|
1737
|
+
- files/rails/views/beginner/helpers_link_to.md
|
1738
|
+
- files/rails/views/beginner/layouts_application.md
|
1739
|
+
- files/rails/views/beginner/partials_basics.md
|
1740
|
+
- files/rails/views/beginner/partials_collection.md
|
1741
|
+
- files/rails/views/beginner/partials_with_locals.md
|
1742
|
+
- files/rails/views/beginner/view_conditionals.md
|
1743
|
+
- files/rails/views/beginner/view_loops_each.md
|
1744
|
+
- files/rails/views/expert/asset_pipeline_dynamic_paths.md
|
1745
|
+
- files/rails/views/expert/cells_gem_decoupling.md
|
1746
|
+
- files/rails/views/expert/custom_form_builder_dsl.md
|
1747
|
+
- files/rails/views/expert/i18n_view_precompilation.md
|
1748
|
+
- files/rails/views/expert/mustache_template_integration.md
|
1749
|
+
- files/rails/views/expert/nested_fragment_caching_strategies.md
|
1750
|
+
- files/rails/views/expert/sse_in_views.md
|
1751
|
+
- files/rails/views/expert/streaming_partials_live.md
|
1752
|
+
- files/rails/views/expert/template_handler_extension.md
|
1753
|
+
- files/rails/views/expert/view_rendering_profiler.md
|
1754
|
+
- files/rails/views/expert/viewcomponent_deep_dive.md
|
1755
|
+
- files/rails/views/middle/collection_rendering.md
|
1756
|
+
- files/rails/views/middle/content_for_usage.md
|
1757
|
+
- files/rails/views/middle/custom_helpers.md
|
1758
|
+
- files/rails/views/middle/fragment_caching.md
|
1759
|
+
- files/rails/views/middle/html_tag_helper.md
|
1760
|
+
- files/rails/views/middle/i18n_in_views.md
|
1761
|
+
- files/rails/views/middle/inline_form_errors.md
|
1762
|
+
- files/rails/views/middle/jbuilder_json_views.md
|
1763
|
+
- files/rails/views/middle/partial_with_locals.md
|
1764
|
+
- files/rails/views/middle/stimulus_data_attributes.md
|
1765
|
+
- files/rails/views/middle/turbo_frame_rendering.md
|
1766
|
+
- files/rails/views/middle/view_component_usage.md
|
1767
|
+
- files/rails/websockets/advanced/custom_connection_identifiers.md
|
1768
|
+
- files/rails/websockets/advanced/dynamic_channel_streaming.md
|
1769
|
+
- files/rails/websockets/advanced/granular_dom_updates.md
|
1770
|
+
- files/rails/websockets/advanced/reconnect_backoff.md
|
1771
|
+
- files/rails/websockets/advanced/redis_pubsub_scaling.md
|
1772
|
+
- files/rails/websockets/beginner/broadcast_from_controller.md
|
1773
|
+
- files/rails/websockets/beginner/generate_chat_channel.md
|
1774
|
+
- files/rails/websockets/beginner/model_broadcasting.md
|
1775
|
+
- files/rails/websockets/beginner/mount_actioncable_in_routes.md
|
1776
|
+
- files/rails/websockets/beginner/subscribe_in_javascript.md
|
1777
|
+
- files/rails/websockets/expert/backpressure_throttling.md
|
1778
|
+
- files/rails/websockets/expert/binary_streaming.md
|
1779
|
+
- files/rails/websockets/expert/jwt_connection_authentication.md
|
1780
|
+
- files/rails/websockets/expert/prometheus_monitoring.md
|
1781
|
+
- files/rails/websockets/expert/redis_sentinel_scaling.md
|
1782
|
+
- files/rails/websockets/middle/broadcast_to_user.md
|
1783
|
+
- files/rails/websockets/middle/connection_authorization.md
|
1784
|
+
- files/rails/websockets/middle/redis_adapter_optimization.md
|
1785
|
+
- files/rails/websockets/middle/setup_channels_streams.md
|
1786
|
+
- files/rails/websockets/middle/turbo_streams_integration.md
|
1787
|
+
- files/ruby/arrays/advanced/balanced_chunk_split.md
|
1788
|
+
- files/ruby/arrays/advanced/combinatorics_with_arrays.md
|
1789
|
+
- files/ruby/arrays/advanced/custom_uniq.md
|
1790
|
+
- files/ruby/arrays/advanced/grouping_with_each_with_object.md
|
1791
|
+
- files/ruby/arrays/advanced/lazy_enumerators.md
|
1792
|
+
- files/ruby/arrays/advanced/pattern_matching_arrays.md
|
1793
|
+
- files/ruby/arrays/advanced/pipeline_with_tap_then.md
|
1794
|
+
- files/ruby/arrays/advanced/selective_flatten.md
|
1795
|
+
- files/ruby/arrays/advanced/slice_when_chunking.md
|
1796
|
+
- files/ruby/arrays/advanced/transpose_jagged_arrays.md
|
1797
|
+
- files/ruby/arrays/beginner/accessing_elements.md
|
1798
|
+
- files/ruby/arrays/beginner/adding_elements.md
|
1799
|
+
- files/ruby/arrays/beginner/array_creation.md
|
1800
|
+
- files/ruby/arrays/beginner/cleaning_arrays.md
|
1801
|
+
- files/ruby/arrays/beginner/combining_arrays.md
|
1802
|
+
- files/ruby/arrays/beginner/destructuring_assignment.md
|
1803
|
+
- files/ruby/arrays/beginner/iterating_each.md
|
1804
|
+
- files/ruby/arrays/beginner/map_transform.md
|
1805
|
+
- files/ruby/arrays/beginner/removing_elements.md
|
1806
|
+
- files/ruby/arrays/beginner/select_filter.md
|
1807
|
+
- files/ruby/arrays/expert/binary_packing_with_pack_unpack.md.md
|
1808
|
+
- files/ruby/arrays/expert/bitset_array_representation.md.md
|
1809
|
+
- files/ruby/arrays/expert/custom_enumerator_chaining.md.md
|
1810
|
+
- files/ruby/arrays/expert/deep_freeze_immutable_arrays.md.md
|
1811
|
+
- files/ruby/arrays/expert/lazy_infinite_enumerator.md.md
|
1812
|
+
- files/ruby/arrays/expert/memoized_inject.md.md
|
1813
|
+
- files/ruby/arrays/expert/metaprogramming_dynamic_array_methods.md.md
|
1814
|
+
- files/ruby/arrays/expert/n_dimensional_array_generator.md.md
|
1815
|
+
- files/ruby/arrays/expert/parallel_map_with_threads.md.md
|
1816
|
+
- files/ruby/arrays/expert/refinements_for_array_extensions.md.md
|
1817
|
+
- files/ruby/arrays/middle/bsearch_usage.md
|
1818
|
+
- files/ruby/arrays/middle/destructuring_assignment.md
|
1819
|
+
- files/ruby/arrays/middle/dig_nested_arrays.md
|
1820
|
+
- files/ruby/arrays/middle/lazy_enumerators.md
|
1821
|
+
- files/ruby/arrays/middle/map_compact_chain.md
|
1822
|
+
- files/ruby/arrays/middle/partition_array.md
|
1823
|
+
- files/ruby/arrays/middle/product_combinations.md
|
1824
|
+
- files/ruby/arrays/middle/slice_range_negative.md
|
1825
|
+
- files/ruby/arrays/middle/sum_with_block.md
|
1826
|
+
- files/ruby/arrays/middle/transpose_matrix.md
|
1827
|
+
- files/ruby/benchmarking/advanced/compare_algorithms_with_benchmark_ips.md
|
1828
|
+
- files/ruby/benchmarking/advanced/customize_benchmark_suite_with_metrics.md
|
1829
|
+
- files/ruby/benchmarking/advanced/disable_gc_for_stable_benchmarks.md
|
1830
|
+
- files/ruby/benchmarking/advanced/profile_memory_allocations.md
|
1831
|
+
- files/ruby/benchmarking/advanced/use_warmup_for_consistent_results.md
|
1832
|
+
- files/ruby/benchmarking/beginner/benchmark_bm.md
|
1833
|
+
- files/ruby/benchmarking/beginner/benchmark_irb_console.md
|
1834
|
+
- files/ruby/benchmarking/beginner/benchmark_measure.md
|
1835
|
+
- files/ruby/benchmarking/beginner/benchmark_realtime.md
|
1836
|
+
- files/ruby/benchmarking/beginner/benchmark_tms_attributes.md
|
1837
|
+
- files/ruby/benchmarking/expert/automated_benchmark_reports.md
|
1838
|
+
- files/ruby/benchmarking/expert/benchmark_ips_config.md
|
1839
|
+
- files/ruby/benchmarking/expert/c_extension_performance_comparison.md
|
1840
|
+
- files/ruby/benchmarking/expert/custom_harness_with_warmup.md
|
1841
|
+
- files/ruby/benchmarking/expert/memory_and_gc_profiling.md
|
1842
|
+
- files/ruby/benchmarking/middle/benchmark_bm.md
|
1843
|
+
- files/ruby/benchmarking/middle/benchmark_bmbm.md
|
1844
|
+
- files/ruby/benchmarking/middle/benchmark_realtime.md
|
1845
|
+
- files/ruby/benchmarking/middle/benchmark_results_formatting.md
|
1846
|
+
- files/ruby/benchmarking/middle/benchmark_string_vs_interpolation.md
|
1847
|
+
- files/ruby/blocks/advanced/benchmark_blocks.md
|
1848
|
+
- files/ruby/blocks/advanced/destructuring_block_params.md
|
1849
|
+
- files/ruby/blocks/advanced/fibers_and_blocks.md
|
1850
|
+
- files/ruby/blocks/advanced/internal_dsl_with_instance_eval.md
|
1851
|
+
- files/ruby/blocks/advanced/lazy_infinite_streams.md
|
1852
|
+
- files/ruby/blocks/advanced/method_wrapper_with_blocks.md
|
1853
|
+
- files/ruby/blocks/advanced/proc_currying_and_composition.md
|
1854
|
+
- files/ruby/blocks/advanced/retry_with_backoff.md
|
1855
|
+
- files/ruby/blocks/advanced/trampoline_optimization.md
|
1856
|
+
- files/ruby/blocks/beginner/block_parameters.md
|
1857
|
+
- files/ruby/blocks/beginner/block_to_proc_conversion.md
|
1858
|
+
- files/ruby/blocks/beginner/custom_method_yield.md
|
1859
|
+
- files/ruby/blocks/beginner/file_resource_management.md
|
1860
|
+
- files/ruby/blocks/beginner/filtering_select.md
|
1861
|
+
- files/ruby/blocks/beginner/guarding_with_block_given.md
|
1862
|
+
- files/ruby/blocks/beginner/hash_each_pair.md
|
1863
|
+
- files/ruby/blocks/beginner/iterating_each.md
|
1864
|
+
- files/ruby/blocks/beginner/repeating_times.md
|
1865
|
+
- files/ruby/blocks/beginner/transforming_map.md
|
1866
|
+
- files/ruby/blocks/expert/advanced_lazy_enumerator_chaining.md
|
1867
|
+
- files/ruby/blocks/expert/block_instrumentation_with_prepend.md
|
1868
|
+
- files/ruby/blocks/expert/capture_and_rebind_block_context.md
|
1869
|
+
- files/ruby/blocks/expert/context_switch_with_instance_exec.md
|
1870
|
+
- files/ruby/blocks/expert/curry_and_compose_procs.md
|
1871
|
+
- files/ruby/blocks/expert/dynamic_define_method_with_block.md
|
1872
|
+
- files/ruby/blocks/expert/fiber_based_block_control_flow.md
|
1873
|
+
- files/ruby/blocks/expert/internal_dsl_with_instance_eval.md
|
1874
|
+
- files/ruby/blocks/expert/partial_application_with_proc.md
|
1875
|
+
- files/ruby/blocks/expert/trampoline_pattern_with_procs.md
|
1876
|
+
- files/ruby/blocks/middle/block_to_proc_conversion.md.md
|
1877
|
+
- files/ruby/blocks/middle/chainable_methods_with_blocks.md.md
|
1878
|
+
- files/ruby/blocks/middle/check_block_presence.md.md
|
1879
|
+
- files/ruby/blocks/middle/control_flow_within_blocks.md.md
|
1880
|
+
- files/ruby/blocks/middle/custom_each_iterator.md.md
|
1881
|
+
- files/ruby/blocks/middle/default_block_fallback.md.md
|
1882
|
+
- files/ruby/blocks/middle/dsl_with_instance_eval.md.md
|
1883
|
+
- files/ruby/blocks/middle/filter_and_map_collections.md.md
|
1884
|
+
- files/ruby/blocks/middle/multiple_blocks.md.md
|
1885
|
+
- files/ruby/blocks/middle/yield_with_arguments.md.md
|
1886
|
+
- files/ruby/classes_and_modules/advanced/alias_chain_prepend.md
|
1887
|
+
- files/ruby/classes_and_modules/advanced/autoload_modules.md
|
1888
|
+
- files/ruby/classes_and_modules/advanced/concerns_namespacing.md
|
1889
|
+
- files/ruby/classes_and_modules/advanced/const_missing_autoload.md
|
1890
|
+
- files/ruby/classes_and_modules/advanced/dynamic_define_method.md
|
1891
|
+
- files/ruby/classes_and_modules/advanced/dynamic_delegators.md
|
1892
|
+
- files/ruby/classes_and_modules/advanced/eigenclass_methods.md
|
1893
|
+
- files/ruby/classes_and_modules/advanced/extend_class_methods_on_include.md
|
1894
|
+
- files/ruby/classes_and_modules/advanced/forwardable_mixin.md
|
1895
|
+
- files/ruby/classes_and_modules/advanced/freeze_module.md
|
1896
|
+
- files/ruby/classes_and_modules/advanced/inherited_hook_module.md
|
1897
|
+
- files/ruby/classes_and_modules/advanced/method_missing_proxy.md
|
1898
|
+
- files/ruby/classes_and_modules/advanced/prepend_vs_include.md
|
1899
|
+
- files/ruby/classes_and_modules/advanced/self_included_hook.md
|
1900
|
+
- files/ruby/classes_and_modules/advanced/using_refinements.md
|
1901
|
+
- files/ruby/classes_and_modules/beginner/attr_accessors.md
|
1902
|
+
- files/ruby/classes_and_modules/beginner/basic_class_definition.md
|
1903
|
+
- files/ruby/classes_and_modules/beginner/basic_module_definition.md
|
1904
|
+
- files/ruby/classes_and_modules/beginner/class_constants.md
|
1905
|
+
- files/ruby/classes_and_modules/beginner/class_methods.md
|
1906
|
+
- files/ruby/classes_and_modules/beginner/extend_for_class_methods.md
|
1907
|
+
- files/ruby/classes_and_modules/beginner/include_mixins.md
|
1908
|
+
- files/ruby/classes_and_modules/beginner/inheritance_basics.md
|
1909
|
+
- files/ruby/classes_and_modules/beginner/initialize_method.md
|
1910
|
+
- files/ruby/classes_and_modules/beginner/inspect_ancestors.md
|
1911
|
+
- files/ruby/classes_and_modules/beginner/instance_variables.md
|
1912
|
+
- files/ruby/classes_and_modules/beginner/instantiate_objects.md
|
1913
|
+
- files/ruby/classes_and_modules/beginner/method_overriding.md
|
1914
|
+
- files/ruby/classes_and_modules/beginner/module_namespacing.md
|
1915
|
+
- files/ruby/classes_and_modules/beginner/visibility_control.md
|
1916
|
+
- files/ruby/classes_and_modules/expert/anonymous_module_isolation.md
|
1917
|
+
- files/ruby/classes_and_modules/expert/autoload_lazy_loading.md
|
1918
|
+
- files/ruby/classes_and_modules/expert/concern_pattern_composition.md
|
1919
|
+
- files/ruby/classes_and_modules/expert/const_missing_dynamic_resolution.md
|
1920
|
+
- files/ruby/classes_and_modules/expert/dynamic_method_generation.md
|
1921
|
+
- files/ruby/classes_and_modules/expert/forwardable_delegation.md
|
1922
|
+
- files/ruby/classes_and_modules/expert/included_class_macros.md
|
1923
|
+
- files/ruby/classes_and_modules/expert/internal_dsl_included_hook.md
|
1924
|
+
- files/ruby/classes_and_modules/expert/module_prepend_over_mixin.md
|
1925
|
+
- files/ruby/classes_and_modules/expert/namespaces_with_module_nesting.md
|
1926
|
+
- files/ruby/classes_and_modules/expert/prepend_method_wrappers.md
|
1927
|
+
- files/ruby/classes_and_modules/expert/proxy_method_missing.md
|
1928
|
+
- files/ruby/classes_and_modules/expert/refinements_scoped_monkey_patches.md
|
1929
|
+
- files/ruby/classes_and_modules/expert/singleton_class_metaprogramming.md
|
1930
|
+
- files/ruby/classes_and_modules/expert/tracepoint_execution_tracing.md
|
1931
|
+
- files/ruby/classes_and_modules/middle/class_eval_vs_module_eval.md
|
1932
|
+
- files/ruby/classes_and_modules/middle/concern_pattern.md
|
1933
|
+
- files/ruby/classes_and_modules/middle/const_missing_autoload.md
|
1934
|
+
- files/ruby/classes_and_modules/middle/dynamic_class_definition.md
|
1935
|
+
- files/ruby/classes_and_modules/middle/include_vs_extend.md
|
1936
|
+
- files/ruby/classes_and_modules/middle/mixins_with_callbacks.md
|
1937
|
+
- files/ruby/classes_and_modules/middle/module_alias_method.md
|
1938
|
+
- files/ruby/classes_and_modules/middle/module_function_usage.md
|
1939
|
+
- files/ruby/classes_and_modules/middle/module_nesting_lookup.md
|
1940
|
+
- files/ruby/classes_and_modules/middle/module_prepend.md
|
1941
|
+
- files/ruby/classes_and_modules/middle/namespacing_with_modules.md
|
1942
|
+
- files/ruby/classes_and_modules/middle/refinements_example.md
|
1943
|
+
- files/ruby/classes_and_modules/middle/self_included_hook.md
|
1944
|
+
- files/ruby/classes_and_modules/middle/singleton_class_methods.md
|
1945
|
+
- files/ruby/compression/advanced/creating_tar_gz_archives.md
|
1946
|
+
- files/ruby/compression/advanced/streaming_large_file_compression.md
|
1947
|
+
- files/ruby/compression/beginner/compress_with_gzip.md
|
1948
|
+
- files/ruby/compression/beginner/create_zip_archive.md
|
1949
|
+
- files/ruby/compression/expert/parallel_zstd_compression_with_ffi.md
|
1950
|
+
- files/ruby/compression/expert/streaming_chunked_gzip_compression.md
|
1951
|
+
- files/ruby/compression/middle/file_compression_gzip.md
|
1952
|
+
- files/ruby/compression/middle/string_compression_deflate.md
|
1953
|
+
- files/ruby/concurrency_and_mutexes/advanced/condition_variable_coordination.md.md
|
1954
|
+
- files/ruby/concurrency_and_mutexes/advanced/deadlock_prevention.md.md
|
1955
|
+
- files/ruby/concurrency_and_mutexes/advanced/double_checked_locking.md.md
|
1956
|
+
- files/ruby/concurrency_and_mutexes/advanced/monitor_reentrant_mutex.md.md
|
1957
|
+
- files/ruby/concurrency_and_mutexes/beginner/initialize_mutex_per_resource.md
|
1958
|
+
- files/ruby/concurrency_and_mutexes/beginner/manual_lock_unlock.md
|
1959
|
+
- files/ruby/concurrency_and_mutexes/beginner/shared_counter_with_mutex.md
|
1960
|
+
- files/ruby/concurrency_and_mutexes/beginner/waiting_for_threads_join.md
|
1961
|
+
- files/ruby/concurrency_and_mutexes/expert/fair_fifo_mutex.md
|
1962
|
+
- files/ruby/concurrency_and_mutexes/expert/hybrid_spinlock.md
|
1963
|
+
- files/ruby/concurrency_and_mutexes/expert/lock_striping_mutex_shard.md
|
1964
|
+
- files/ruby/concurrency_and_mutexes/expert/reentrant_mutex_monitor.md
|
1965
|
+
- files/ruby/concurrency_and_mutexes/middle/condition_variable_usage.md
|
1966
|
+
- files/ruby/concurrency_and_mutexes/middle/double_checked_locking.md
|
1967
|
+
- files/ruby/concurrency_and_mutexes/middle/mutex_synchronize.md
|
1968
|
+
- files/ruby/concurrency_and_mutexes/middle/mutex_try_lock.md
|
1969
|
+
- files/ruby/constants/advanced/autoload_with_const_missing.md
|
1970
|
+
- files/ruby/constants/advanced/dynamic_constants_via_const_set.md
|
1971
|
+
- files/ruby/constants/advanced/reload_constants_remove_const.md
|
1972
|
+
- files/ruby/constants/beginner/defining_and_accessing_constants.md
|
1973
|
+
- files/ruby/constants/beginner/freezing_constants_to_prevent_mutation.md
|
1974
|
+
- files/ruby/constants/beginner/naming_conventions_for_constants.md
|
1975
|
+
- files/ruby/constants/expert/custom_const_missing_autoload.md
|
1976
|
+
- files/ruby/constants/expert/deep_freeze_constants.md
|
1977
|
+
- files/ruby/constants/expert/dynamic_constant_definition.md
|
1978
|
+
- files/ruby/constants/middle/config_constants.md
|
1979
|
+
- files/ruby/constants/middle/freeze_constants.md
|
1980
|
+
- files/ruby/constants/middle/magic_values_constants.md
|
1981
|
+
- files/ruby/creating_gems/advanced/cli_plugin_architecture.md
|
1982
|
+
- files/ruby/creating_gems/advanced/native_extension_setup.md
|
1983
|
+
- files/ruby/creating_gems/advanced/release_automation.md
|
1984
|
+
- files/ruby/creating_gems/beginner/build_and_install_gem.md
|
1985
|
+
- files/ruby/creating_gems/beginner/configure_gemspec.md
|
1986
|
+
- files/ruby/creating_gems/beginner/initialize_gem_skeleton.md
|
1987
|
+
- files/ruby/creating_gems/expert/automated_release_pipeline.md
|
1988
|
+
- files/ruby/creating_gems/expert/custom_gem_scaffold.md
|
1989
|
+
- files/ruby/creating_gems/expert/native_extension_multi_platform.md
|
1990
|
+
- files/ruby/creating_gems/middle/embed_usage_examples.md.md
|
1991
|
+
- files/ruby/creating_gems/middle/initialize_gem_with_bundler.md.md
|
1992
|
+
- files/ruby/creating_gems/middle/manage_version_metadata.md.md
|
1993
|
+
- files/ruby/csv/advanced/custom_converters_casting.md
|
1994
|
+
- files/ruby/csv/advanced/lazy_loading_huge_csv.md
|
1995
|
+
- files/ruby/csv/advanced/parallel_csv_processing.md
|
1996
|
+
- files/ruby/csv/advanced/streaming_csv_generation.md
|
1997
|
+
- files/ruby/csv/beginner/csv_foreach_basics.md
|
1998
|
+
- files/ruby/csv/beginner/csv_parse_string.md
|
1999
|
+
- files/ruby/csv/beginner/csv_with_headers.md
|
2000
|
+
- files/ruby/csv/beginner/csv_write_file.md
|
2001
|
+
- files/ruby/csv/expert/csv_lazy_streaming.md
|
2002
|
+
- files/ruby/csv/expert/csv_parallel_processing.md
|
2003
|
+
- files/ruby/csv/expert/csv_random_access_indexing.md
|
2004
|
+
- files/ruby/csv/expert/csv_schema_structs.md
|
2005
|
+
- files/ruby/csv/middle/custom_csv_writing.md
|
2006
|
+
- files/ruby/csv/middle/efficient_streaming.md
|
2007
|
+
- files/ruby/csv/middle/headers_and_converters.md
|
2008
|
+
- files/ruby/csv/middle/resilient_parsing.md
|
2009
|
+
- files/ruby/data_types/advanced/bitwise_operations.md
|
2010
|
+
- files/ruby/data_types/advanced/deep_default_hash.md
|
2011
|
+
- files/ruby/data_types/advanced/lazy_enumerators.md
|
2012
|
+
- files/ruby/data_types/advanced/pattern_matching.md
|
2013
|
+
- files/ruby/data_types/advanced/scoped_refinements.md
|
2014
|
+
- files/ruby/data_types/beginner/ruby_arrays.md
|
2015
|
+
- files/ruby/data_types/beginner/ruby_hashes.md
|
2016
|
+
- files/ruby/data_types/beginner/ruby_numbers.md
|
2017
|
+
- files/ruby/data_types/beginner/ruby_strings.md
|
2018
|
+
- files/ruby/data_types/beginner/ruby_symbols.md
|
2019
|
+
- files/ruby/data_types/expert/custom_numeric_coercion.md
|
2020
|
+
- files/ruby/data_types/expert/deep_immutable_structures.md
|
2021
|
+
- files/ruby/data_types/expert/high_precision_arithmetic.md
|
2022
|
+
- files/ruby/data_types/expert/lazy_infinite_sequences.md
|
2023
|
+
- files/ruby/data_types/expert/pattern_matching_hashes.md
|
2024
|
+
- files/ruby/data_types/middle/array_destructuring_splat.md
|
2025
|
+
- files/ruby/data_types/middle/frozen_string_literals.md
|
2026
|
+
- files/ruby/data_types/middle/hash_default_proc.md
|
2027
|
+
- files/ruby/data_types/middle/optimize_hash_keys.md
|
2028
|
+
- files/ruby/data_types/middle/range_iteration_step.md
|
2029
|
+
- files/ruby/date_time/advanced/business_days_enumeration.md
|
2030
|
+
- files/ruby/date_time/advanced/custom_date_parsing.md
|
2031
|
+
- files/ruby/date_time/advanced/high_precision_arithmetic.md
|
2032
|
+
- files/ruby/date_time/advanced/iso8601_duration_handling.md
|
2033
|
+
- files/ruby/date_time/advanced/timezone_conversion.md
|
2034
|
+
- files/ruby/date_time/beginner/date_arithmetic.md
|
2035
|
+
- files/ruby/date_time/beginner/formatting_dates_times.md
|
2036
|
+
- files/ruby/date_time/beginner/getting_current_date_time.md
|
2037
|
+
- files/ruby/date_time/beginner/handling_time_zones.md
|
2038
|
+
- files/ruby/date_time/beginner/parsing_date_strings.md
|
2039
|
+
- files/ruby/date_time/expert/astronomical_julian_day_conversion.md
|
2040
|
+
- files/ruby/date_time/expert/business_calendar_refinement.md
|
2041
|
+
- files/ruby/date_time/expert/high_res_monotonic_timing.md
|
2042
|
+
- files/ruby/date_time/expert/leap_second_wrapper.md
|
2043
|
+
- files/ruby/date_time/expert/tzinfo_caching.md
|
2044
|
+
- files/ruby/date_time/middle/business_day_calculation.md
|
2045
|
+
- files/ruby/date_time/middle/calculate_durations.md
|
2046
|
+
- files/ruby/date_time/middle/format_with_strftime.md
|
2047
|
+
- files/ruby/date_time/middle/handle_time_zones.md
|
2048
|
+
- files/ruby/date_time/middle/parse_custom_strptime.md
|
2049
|
+
- files/ruby/define_method/advanced/custom_visibility_hooks.md
|
2050
|
+
- files/ruby/define_method/advanced/dsl_scope_capture.md
|
2051
|
+
- files/ruby/define_method/advanced/dynamic_method_proxy.md
|
2052
|
+
- files/ruby/define_method/advanced/memoization_via_define_method.md
|
2053
|
+
- files/ruby/define_method/beginner/attribute_getter_setter.md
|
2054
|
+
- files/ruby/define_method/beginner/capture_external_variable.md
|
2055
|
+
- files/ruby/define_method/beginner/dynamic_method_creation.md
|
2056
|
+
- files/ruby/define_method/beginner/method_with_arguments.md
|
2057
|
+
- files/ruby/define_method/expert/dynamic_api_client_generator.md
|
2058
|
+
- files/ruby/define_method/expert/fluent_dsl_builder.md
|
2059
|
+
- files/ruby/define_method/expert/hot_swappable_methods.md
|
2060
|
+
- files/ruby/define_method/expert/preserve_method_metadata.md
|
2061
|
+
- files/ruby/define_method/middle/dynamic_accessors.md
|
2062
|
+
- files/ruby/define_method/middle/dynamic_delegation.md
|
2063
|
+
- files/ruby/define_method/middle/method_wrapper_logging.md
|
2064
|
+
- files/ruby/define_method/middle/validation_helpers.md
|
2065
|
+
- files/ruby/directory_management/advanced/atomic_directory_swap.md
|
2066
|
+
- files/ruby/directory_management/advanced/recursive_traversal_find.md
|
2067
|
+
- files/ruby/directory_management/beginner/dir_list_and_filter.md
|
2068
|
+
- files/ruby/directory_management/beginner/recursive_directory_creation.md
|
2069
|
+
- files/ruby/directory_management/expert/cross_platform_realtime_dir_watcher.md
|
2070
|
+
- files/ruby/directory_management/expert/parallel_lazy_directory_traversal.md
|
2071
|
+
- files/ruby/directory_management/middle/pattern_based_traversal_with_pathname.md
|
2072
|
+
- files/ruby/directory_management/middle/safe_directory_creation_with_fileutils.md
|
2073
|
+
- files/ruby/enumerables/advanced/chunk_while_dynamic_grouping.md
|
2074
|
+
- files/ruby/enumerables/advanced/each_with_object_stateful_accumulation.md
|
2075
|
+
- files/ruby/enumerables/advanced/external_iterators_enum_for.md
|
2076
|
+
- files/ruby/enumerables/advanced/lazy_enumerators_infinite_streams.md
|
2077
|
+
- files/ruby/enumerables/advanced/slice_when_custom_breaks.md
|
2078
|
+
- files/ruby/enumerables/advanced/zip_lazy_pattern_matching.md
|
2079
|
+
- files/ruby/enumerables/beginner/accumulate_with_inject.md
|
2080
|
+
- files/ruby/enumerables/beginner/exclude_with_reject.md
|
2081
|
+
- files/ruby/enumerables/beginner/filter_with_select.md
|
2082
|
+
- files/ruby/enumerables/beginner/find_with_detect.md
|
2083
|
+
- files/ruby/enumerables/beginner/iterate_with_each.md
|
2084
|
+
- files/ruby/enumerables/beginner/transform_with_map.md
|
2085
|
+
- files/ruby/enumerables/expert/custom_enumerable_deep_traversal.md
|
2086
|
+
- files/ruby/enumerables/expert/dynamic_slice_when.md
|
2087
|
+
- files/ruby/enumerables/expert/fiber_based_enumerator.md
|
2088
|
+
- files/ruby/enumerables/expert/infinite_sequence_produce.md
|
2089
|
+
- files/ruby/enumerables/expert/lazy_pipeline_scaling.md
|
2090
|
+
- files/ruby/enumerables/expert/merge_infinite_streams.md
|
2091
|
+
- files/ruby/enumerables/middle/each_with_object_hash_building.md
|
2092
|
+
- files/ruby/enumerables/middle/flat_map_group_by_transform.md
|
2093
|
+
- files/ruby/enumerables/middle/lazy_chaining_enumerables.md
|
2094
|
+
- files/ruby/enumerables/middle/slice_before_chunk_while.md
|
2095
|
+
- files/ruby/enumerables/middle/sum_with_block.md
|
2096
|
+
- files/ruby/enumerables/middle/tally_element_counts.md
|
2097
|
+
- files/ruby/exceptions/advanced/custom_exception_hierarchy.md
|
2098
|
+
- files/ruby/exceptions/advanced/exception_cause_chaining.md
|
2099
|
+
- files/ruby/exceptions/advanced/exception_notification_integration.md
|
2100
|
+
- files/ruby/exceptions/advanced/retry_with_exponential_backoff.md
|
2101
|
+
- files/ruby/exceptions/beginner/ensure_usage.md
|
2102
|
+
- files/ruby/exceptions/beginner/raising_exceptions.md
|
2103
|
+
- files/ruby/exceptions/beginner/rescue_basic.md
|
2104
|
+
- files/ruby/exceptions/beginner/rescue_specific.md
|
2105
|
+
- files/ruby/exceptions/expert/custom_error_with_metadata.md
|
2106
|
+
- files/ruby/exceptions/expert/exception_wrapping_with_cause.md
|
2107
|
+
- files/ruby/exceptions/expert/exponential_backoff_retry_logic.md
|
2108
|
+
- files/ruby/exceptions/expert/tracepoint_exception_monitoring.md
|
2109
|
+
- files/ruby/exceptions/middle/ensure_for_cleanup.md
|
2110
|
+
- files/ruby/exceptions/middle/inline_rescue_in_method.md
|
2111
|
+
- files/ruby/exceptions/middle/rescue_specific_exceptions.md
|
2112
|
+
- files/ruby/exceptions/middle/retry_transient_errors.md
|
2113
|
+
- files/ruby/fibers/advanced/fiber_async_io.md
|
2114
|
+
- files/ruby/fibers/advanced/fiber_data_pipeline.md
|
2115
|
+
- files/ruby/fibers/advanced/fiber_enumerator_generator.md
|
2116
|
+
- files/ruby/fibers/advanced/fiber_error_supervision.md
|
2117
|
+
- files/ruby/fibers/beginner/creating_and_resuming.md
|
2118
|
+
- files/ruby/fibers/beginner/passing_values_between_fiber.md
|
2119
|
+
- files/ruby/fibers/beginner/simple_enumerator_with_fiber.md
|
2120
|
+
- files/ruby/fibers/beginner/what_is_a_fiber.md
|
2121
|
+
- files/ruby/fibers/expert/async_gem_integration.md
|
2122
|
+
- files/ruby/fibers/expert/async_io_multiplexing.md
|
2123
|
+
- files/ruby/fibers/expert/cooperative_fiber_scheduler.md
|
2124
|
+
- files/ruby/fibers/expert/fiber_lazy_enumerator.md
|
2125
|
+
- files/ruby/fibers/middle/fiber_arguments.md
|
2126
|
+
- files/ruby/fibers/middle/fiber_basic_usage.md
|
2127
|
+
- files/ruby/fibers/middle/fiber_cooperative_scheduler.md
|
2128
|
+
- files/ruby/fibers/middle/fiber_to_enumerator.md
|
2129
|
+
- files/ruby/file_io/advanced/atomic_file_write.md
|
2130
|
+
- files/ruby/file_io/advanced/chunked_buffer_reading.md
|
2131
|
+
- files/ruby/file_io/advanced/encoding_transcoding.md
|
2132
|
+
- files/ruby/file_io/advanced/fcntl_flags.md
|
2133
|
+
- files/ruby/file_io/advanced/memory_mapped_file.md
|
2134
|
+
- files/ruby/file_io/advanced/nonblocking_io_select.md
|
2135
|
+
- files/ruby/file_io/advanced/tail_f_implementation.md
|
2136
|
+
- files/ruby/file_io/advanced/zero_copy_io.md
|
2137
|
+
- files/ruby/file_io/beginner/append_to_file.md
|
2138
|
+
- files/ruby/file_io/beginner/check_file_existence.md
|
2139
|
+
- files/ruby/file_io/beginner/io_read_write_shortcuts.md
|
2140
|
+
- files/ruby/file_io/beginner/iterate_lines_foreach.md
|
2141
|
+
- files/ruby/file_io/beginner/join_file_paths.md
|
2142
|
+
- files/ruby/file_io/beginner/read_with_block.md
|
2143
|
+
- files/ruby/file_io/beginner/readlines_to_array.md
|
2144
|
+
- files/ruby/file_io/beginner/write_with_block.md
|
2145
|
+
- files/ruby/file_io/expert/async_io_eventmachine.md
|
2146
|
+
- files/ruby/file_io/expert/atomic_file_write.md
|
2147
|
+
- files/ruby/file_io/expert/descriptor_manipulation.md
|
2148
|
+
- files/ruby/file_io/expert/memory_map_file.md
|
2149
|
+
- files/ruby/file_io/expert/nonblocking_file_io.md
|
2150
|
+
- files/ruby/file_io/expert/sparse_file_manipulation.md
|
2151
|
+
- files/ruby/file_io/expert/streaming_encryption.md
|
2152
|
+
- files/ruby/file_io/expert/zero_copy_sendfile.md
|
2153
|
+
- files/ruby/file_io/middle/chunked_read.md.md
|
2154
|
+
- files/ruby/file_io/middle/efficient_file_copy.md.md
|
2155
|
+
- files/ruby/file_io/middle/encoding_handling.md.md
|
2156
|
+
- files/ruby/file_io/middle/file_locking.md.md
|
2157
|
+
- files/ruby/file_io/middle/file_open_block.md.md
|
2158
|
+
- files/ruby/file_io/middle/line_by_line_processing.md.md
|
2159
|
+
- files/ruby/file_io/middle/tempfile_usage.md.md
|
2160
|
+
- files/ruby/file_io/middle/write_append_modes.md.md
|
2161
|
+
- files/ruby/hashes/advanced/auto_vivification.md
|
2162
|
+
- files/ruby/hashes/advanced/compact_and_filter_map.md
|
2163
|
+
- files/ruby/hashes/advanced/fetch_with_block_defaults.md
|
2164
|
+
- files/ruby/hashes/advanced/grouping_with_each_with_object.md
|
2165
|
+
- files/ruby/hashes/advanced/hash_pattern_matching.md
|
2166
|
+
- files/ruby/hashes/advanced/hash_to_proc.md
|
2167
|
+
- files/ruby/hashes/advanced/indifferent_access.md
|
2168
|
+
- files/ruby/hashes/advanced/nested_transform_keys.md
|
2169
|
+
- files/ruby/hashes/advanced/recursive_deep_merge.md
|
2170
|
+
- files/ruby/hashes/advanced/slice_and_except.md
|
2171
|
+
- files/ruby/hashes/beginner/accessing_hash_values.md
|
2172
|
+
- files/ruby/hashes/beginner/array_to_hash_conversion.md
|
2173
|
+
- files/ruby/hashes/beginner/checking_key_existence.md
|
2174
|
+
- files/ruby/hashes/beginner/creating_hashes.md
|
2175
|
+
- files/ruby/hashes/beginner/hash_default_values.md
|
2176
|
+
- files/ruby/hashes/beginner/iterating_over_hash.md
|
2177
|
+
- files/ruby/hashes/beginner/merging_hashes.md
|
2178
|
+
- files/ruby/hashes/beginner/selecting_hash_entries.md
|
2179
|
+
- files/ruby/hashes/beginner/symbol_vs_string_keys.md
|
2180
|
+
- files/ruby/hashes/beginner/working_with_nested_hashes.md
|
2181
|
+
- files/ruby/hashes/expert/advanced_keyword_arg_forwarding.md
|
2182
|
+
- files/ruby/hashes/expert/auto_vivification_nested_hashes.md
|
2183
|
+
- files/ruby/hashes/expert/chaining_transform_keys_values.md
|
2184
|
+
- files/ruby/hashes/expert/custom_deep_merge_with_conflicts.md
|
2185
|
+
- files/ruby/hashes/expert/dynamic_struct_from_hash.md
|
2186
|
+
- files/ruby/hashes/expert/identity_vs_equality_key_comparison.md
|
2187
|
+
- files/ruby/hashes/expert/immutable_persistent_hash.md
|
2188
|
+
- files/ruby/hashes/expert/lazy_enumeration_hash_processing.md
|
2189
|
+
- files/ruby/hashes/expert/pattern_matching_nested_hashes.md
|
2190
|
+
- files/ruby/hashes/expert/refinements_safe_hash_extensions.md
|
2191
|
+
- files/ruby/hashes/middle/build_hash_each_with_object.md
|
2192
|
+
- files/ruby/hashes/middle/compact_hash.md
|
2193
|
+
- files/ruby/hashes/middle/fetch_with_default_block.md
|
2194
|
+
- files/ruby/hashes/middle/invert_handle_duplicates.md
|
2195
|
+
- files/ruby/hashes/middle/merge_with_block.md
|
2196
|
+
- files/ruby/hashes/middle/select_and_reject.md
|
2197
|
+
- files/ruby/hashes/middle/slice_hash.md
|
2198
|
+
- files/ruby/hashes/middle/sort_by_key_or_value.md
|
2199
|
+
- files/ruby/hashes/middle/transform_keys.md
|
2200
|
+
- files/ruby/hashes/middle/transform_values.md
|
2201
|
+
- files/ruby/irb/advanced/conditional_irbrc.md
|
2202
|
+
- files/ruby/irb/advanced/custom_irb_prompt.md
|
2203
|
+
- files/ruby/irb/advanced/custom_key_bindings.md
|
2204
|
+
- files/ruby/irb/advanced/define_magic_commands.md
|
2205
|
+
- files/ruby/irb/advanced/enable_auto_completion.md
|
2206
|
+
- files/ruby/irb/advanced/integrate_awesome_print.md
|
2207
|
+
- files/ruby/irb/advanced/multi_irb_sessions.md
|
2208
|
+
- files/ruby/irb/advanced/persist_command_history.md
|
2209
|
+
- files/ruby/irb/advanced/save_load_workspace.md
|
2210
|
+
- files/ruby/irb/advanced/use_pry_shell.md
|
2211
|
+
- files/ruby/irb/beginner/access_ruby_docs.md
|
2212
|
+
- files/ruby/irb/beginner/exit_irb.md
|
2213
|
+
- files/ruby/irb/beginner/grep_methods.md
|
2214
|
+
- files/ruby/irb/beginner/history_navigation.md
|
2215
|
+
- files/ruby/irb/beginner/launch_irb.md
|
2216
|
+
- files/ruby/irb/beginner/list_methods.md
|
2217
|
+
- files/ruby/irb/beginner/load_ruby_file.md
|
2218
|
+
- files/ruby/irb/beginner/multiline_code.md
|
2219
|
+
- files/ruby/irb/beginner/persist_history.md
|
2220
|
+
- files/ruby/irb/beginner/shell_commands.md
|
2221
|
+
- files/ruby/irb/expert/benchmark_integration.md
|
2222
|
+
- files/ruby/irb/expert/context_switching.md
|
2223
|
+
- files/ruby/irb/expert/dsl_auto_completion.md
|
2224
|
+
- files/ruby/irb/expert/dynamic_git_prompt.md
|
2225
|
+
- files/ruby/irb/expert/history_incremental_search.md
|
2226
|
+
- files/ruby/irb/expert/input_preprocessor.md
|
2227
|
+
- files/ruby/irb/expert/magic_commands_extension.md
|
2228
|
+
- files/ruby/irb/expert/programmatic_irb_control.md
|
2229
|
+
- files/ruby/irb/expert/sandboxed_session.md
|
2230
|
+
- files/ruby/irb/expert/threaded_debugging.md
|
2231
|
+
- files/ruby/irb/middle/auto_require_gems.md
|
2232
|
+
- files/ruby/irb/middle/awesome_print_output.md
|
2233
|
+
- files/ruby/irb/middle/binding_irb_hook.md
|
2234
|
+
- files/ruby/irb/middle/custom_inspector.md
|
2235
|
+
- files/ruby/irb/middle/custom_irb_commands.md
|
2236
|
+
- files/ruby/irb/middle/custom_prompt.md
|
2237
|
+
- files/ruby/irb/middle/pager_output.md
|
2238
|
+
- files/ruby/irb/middle/persistent_history.md
|
2239
|
+
- files/ruby/irb/middle/readline_key_bindings.md
|
2240
|
+
- files/ruby/irb/middle/tab_completion.md
|
2241
|
+
- files/ruby/json/advanced/custom_generator_state_for_json.md
|
2242
|
+
- files/ruby/json/advanced/high_performance_parsing_with_oj.md
|
2243
|
+
- files/ruby/json/advanced/streaming_large_json_with_oj_schandler.md
|
2244
|
+
- files/ruby/json/beginner/json_file_io.md
|
2245
|
+
- files/ruby/json/beginner/json_generate_basics.md
|
2246
|
+
- files/ruby/json/beginner/json_parse_basics.md
|
2247
|
+
- files/ruby/json/expert/custom_json_serialization_for_complex_objects.md
|
2248
|
+
- files/ruby/json/expert/high_performance_json_parsing_with_oj.md
|
2249
|
+
- files/ruby/json/expert/streaming_json_parsing_with_sc_handler.md
|
2250
|
+
- files/ruby/json/middle/customize_model_serialization.md
|
2251
|
+
- files/ruby/json/middle/json_schema_validation.md
|
2252
|
+
- files/ruby/json/middle/streaming_json_parsing.md
|
2253
|
+
- files/ruby/logging/advanced/custom_log_formatter_with_metadata.md
|
2254
|
+
- files/ruby/logging/advanced/silence_and_tagged_logging.md
|
2255
|
+
- files/ruby/logging/advanced/structured_logging_with_lograge.md
|
2256
|
+
- files/ruby/logging/beginner/basic_logger_setup.md
|
2257
|
+
- files/ruby/logging/beginner/log_rotation.md
|
2258
|
+
- files/ruby/logging/beginner/understanding_log_levels.md
|
2259
|
+
- files/ruby/logging/expert/async_non_blocking_logger.md
|
2260
|
+
- files/ruby/logging/expert/correlation_id_propagation.md
|
2261
|
+
- files/ruby/logging/expert/structured_json_logging.md
|
2262
|
+
- files/ruby/logging/middle/custom_logger_formatter.md
|
2263
|
+
- files/ruby/logging/middle/json_structured_logging.md
|
2264
|
+
- files/ruby/logging/middle/tagged_logging.md
|
2265
|
+
- files/ruby/marshal/advanced/custom_dump_load_versioning.md
|
2266
|
+
- files/ruby/marshal/advanced/selective_ivars_with_marshal_dump.md
|
2267
|
+
- files/ruby/marshal/advanced/streaming_with_compression.md
|
2268
|
+
- files/ruby/marshal/beginner/basic_marshal_dump_load.md
|
2269
|
+
- files/ruby/marshal/beginner/marshal_caching_simple_objects.md
|
2270
|
+
- files/ruby/marshal/beginner/marshal_with_files.md
|
2271
|
+
- files/ruby/marshal/expert/marshal_custom_versioning.md
|
2272
|
+
- files/ruby/marshal/expert/marshal_secure_compression.md
|
2273
|
+
- files/ruby/marshal/expert/marshal_streaming_chunks.md
|
2274
|
+
- files/ruby/marshal/middle/compress_marshal_data.md
|
2275
|
+
- files/ruby/marshal/middle/custom_marshal_dump_load.md
|
2276
|
+
- files/ruby/marshal/middle/deep_clone_objects.md
|
2277
|
+
- files/ruby/matrix/advanced/lu_caching_solver.md
|
2278
|
+
- files/ruby/matrix/advanced/numo_linalg_svd.md
|
2279
|
+
- files/ruby/matrix/advanced/rational_exact_arithmetic.md
|
2280
|
+
- files/ruby/matrix/beginner/matrix_basic_operations.md
|
2281
|
+
- files/ruby/matrix/beginner/matrix_element_access.md
|
2282
|
+
- files/ruby/matrix/beginner/matrix_initialization.md
|
2283
|
+
- files/ruby/matrix/expert/cblas_dgemm_acceleration.md
|
2284
|
+
- files/ruby/matrix/expert/sparse_matrix_lazy_enumerator.md
|
2285
|
+
- files/ruby/matrix/expert/strassen_matrix_multiplication.md
|
2286
|
+
- files/ruby/matrix/middle/matrix_basic_operations.md
|
2287
|
+
- files/ruby/matrix/middle/matrix_enumeration_transform.md
|
2288
|
+
- files/ruby/matrix/middle/matrix_transpose_and_diagonal.md
|
2289
|
+
- files/ruby/metaprogramming/advanced/alias_method_chain_emulation.md
|
2290
|
+
- files/ruby/metaprogramming/advanced/attribute_query_methods.md
|
2291
|
+
- files/ruby/metaprogramming/advanced/class_eval_with_context.md
|
2292
|
+
- files/ruby/metaprogramming/advanced/const_missing_autoload.md
|
2293
|
+
- files/ruby/metaprogramming/advanced/dsl_instance_eval.md
|
2294
|
+
- files/ruby/metaprogramming/advanced/dynamic_define_method.md
|
2295
|
+
- files/ruby/metaprogramming/advanced/dynamic_delegator_generation.md
|
2296
|
+
- files/ruby/metaprogramming/advanced/dynamic_singleton_methods.md
|
2297
|
+
- files/ruby/metaprogramming/advanced/eigenclass_singleton_methods.md
|
2298
|
+
- files/ruby/metaprogramming/advanced/macro_with_included_hook.md
|
2299
|
+
- files/ruby/metaprogramming/advanced/method_missing_dispatch.md
|
2300
|
+
- files/ruby/metaprogramming/advanced/module_prepend_hooks.md
|
2301
|
+
- files/ruby/metaprogramming/advanced/runtime_refinements.md
|
2302
|
+
- files/ruby/metaprogramming/advanced/tracepoint_monitoring.md
|
2303
|
+
- files/ruby/metaprogramming/advanced/unbound_method_binding.md
|
2304
|
+
- files/ruby/metaprogramming/beginner/alias_method_usage.md
|
2305
|
+
- files/ruby/metaprogramming/beginner/attr_accessor_metaprog.md
|
2306
|
+
- files/ruby/metaprogramming/beginner/class_eval_usage.md
|
2307
|
+
- files/ruby/metaprogramming/beginner/class_inherited_hook.md
|
2308
|
+
- files/ruby/metaprogramming/beginner/const_missing_lazy_loading.md
|
2309
|
+
- files/ruby/metaprogramming/beginner/define_method_dynamic.md
|
2310
|
+
- files/ruby/metaprogramming/beginner/define_singleton_method_usage.md
|
2311
|
+
- files/ruby/metaprogramming/beginner/dynamic_send.md
|
2312
|
+
- files/ruby/metaprogramming/beginner/eval_usage.md
|
2313
|
+
- files/ruby/metaprogramming/beginner/instance_eval_usage.md
|
2314
|
+
- files/ruby/metaprogramming/beginner/method_missing_basics.md
|
2315
|
+
- files/ruby/metaprogramming/beginner/module_included_hook.md
|
2316
|
+
- files/ruby/metaprogramming/beginner/respond_to_missing.md
|
2317
|
+
- files/ruby/metaprogramming/beginner/simple_dsl_blocks.md
|
2318
|
+
- files/ruby/metaprogramming/expert/advanced_method_missing_respond_to.md
|
2319
|
+
- files/ruby/metaprogramming/expert/chainable_dsl_with_lambdas.md
|
2320
|
+
- files/ruby/metaprogramming/expert/compile_time_code_generation_with_eval.md
|
2321
|
+
- files/ruby/metaprogramming/expert/composable_concerns_like_active_support.md
|
2322
|
+
- files/ruby/metaprogramming/expert/dsl_instance_eval_class_eval.md
|
2323
|
+
- files/ruby/metaprogramming/expert/dynamic_constant_loading_with_const_missing.md
|
2324
|
+
- files/ruby/metaprogramming/expert/dynamic_define_method_with_closure.md
|
2325
|
+
- files/ruby/metaprogramming/expert/eigenclass_singleton_method_customization.md
|
2326
|
+
- files/ruby/metaprogramming/expert/module_prepend_for_instrumentation.md
|
2327
|
+
- files/ruby/metaprogramming/expert/performance_measurement_proxy.md
|
2328
|
+
- files/ruby/metaprogramming/expert/proxy_pattern_with_basicobject.md
|
2329
|
+
- files/ruby/metaprogramming/expert/runtime_extension_with_fiddle.md
|
2330
|
+
- files/ruby/metaprogramming/expert/runtime_instrumentation_tracepoint.md
|
2331
|
+
- files/ruby/metaprogramming/expert/scoped_monkey_patching_with_refinements.md
|
2332
|
+
- files/ruby/metaprogramming/expert/unbound_method_rebinding.md
|
2333
|
+
- files/ruby/metaprogramming/middle/alias_method_wrapping.md
|
2334
|
+
- files/ruby/metaprogramming/middle/ar_dynamic_scopes.md
|
2335
|
+
- files/ruby/metaprogramming/middle/auto_timestamp_module.md
|
2336
|
+
- files/ruby/metaprogramming/middle/class_eval_dynamic_methods.md
|
2337
|
+
- files/ruby/metaprogramming/middle/const_missing_autoload.md
|
2338
|
+
- files/ruby/metaprogramming/middle/dsl_with_instance_eval.md
|
2339
|
+
- files/ruby/metaprogramming/middle/dynamic_attr_accessors.md
|
2340
|
+
- files/ruby/metaprogramming/middle/dynamic_callbacks.md
|
2341
|
+
- files/ruby/metaprogramming/middle/dynamic_delegation_forwardable.md
|
2342
|
+
- files/ruby/metaprogramming/middle/dynamic_method_define.md
|
2343
|
+
- files/ruby/metaprogramming/middle/dynamic_validation_macros.md
|
2344
|
+
- files/ruby/metaprogramming/middle/fluent_interface_chaining.md
|
2345
|
+
- files/ruby/metaprogramming/middle/hook_method_added.md
|
2346
|
+
- files/ruby/metaprogramming/middle/method_missing_fallback.md
|
2347
|
+
- files/ruby/metaprogramming/middle/scoped_refinements.md
|
2348
|
+
- files/ruby/method_missing/advanced/caching_missing_methods.md
|
2349
|
+
- files/ruby/method_missing/advanced/dsl_method_recording.md
|
2350
|
+
- files/ruby/method_missing/advanced/lazy_association_proxy.md
|
2351
|
+
- files/ruby/method_missing/advanced/rest_api_client_dynamic.md
|
2352
|
+
- files/ruby/method_missing/beginner/method_missing_basic_setup.md
|
2353
|
+
- files/ruby/method_missing/beginner/method_missing_dynamic_attributes.md
|
2354
|
+
- files/ruby/method_missing/beginner/method_missing_forward_to_super.md
|
2355
|
+
- files/ruby/method_missing/beginner/method_missing_respond_to.md
|
2356
|
+
- files/ruby/method_missing/expert/advanced_signature_handling.md
|
2357
|
+
- files/ruby/method_missing/expert/caching_method_missing_responses.md
|
2358
|
+
- files/ruby/method_missing/expert/dynamic_attributes_dsl.md
|
2359
|
+
- files/ruby/method_missing/expert/transparent_proxy_forwarding.md
|
2360
|
+
- files/ruby/method_missing/middle/dsl_fallback_methods.md
|
2361
|
+
- files/ruby/method_missing/middle/dynamic_delegation.md
|
2362
|
+
- files/ruby/method_missing/middle/forwarding_proxy.md
|
2363
|
+
- files/ruby/method_missing/middle/logging_undefined_calls.md
|
2364
|
+
- files/ruby/methods/advanced/curry_and_method_to_proc.md
|
2365
|
+
- files/ruby/methods/advanced/dynamic_define_method.md
|
2366
|
+
- files/ruby/methods/advanced/forwarding_arguments.md
|
2367
|
+
- files/ruby/methods/advanced/memoization_with_arguments.md
|
2368
|
+
- files/ruby/methods/advanced/method_missing_respond_to_missing.md
|
2369
|
+
- files/ruby/methods/advanced/method_object_dispatch.md
|
2370
|
+
- files/ruby/methods/advanced/prepend_for_method_wrapping.md
|
2371
|
+
- files/ruby/methods/advanced/refinements_local_method_override.md
|
2372
|
+
- files/ruby/methods/beginner/default_parameters.md
|
2373
|
+
- files/ruby/methods/beginner/defining_methods.md
|
2374
|
+
- files/ruby/methods/beginner/implicit_and_explicit_return.md
|
2375
|
+
- files/ruby/methods/beginner/keyword_arguments.md
|
2376
|
+
- files/ruby/methods/beginner/method_arguments.md
|
2377
|
+
- files/ruby/methods/beginner/method_chaining.md
|
2378
|
+
- files/ruby/methods/beginner/splat_arguments.md
|
2379
|
+
- files/ruby/methods/beginner/using_blocks.md
|
2380
|
+
- files/ruby/methods/expert/currying_partial_application.md
|
2381
|
+
- files/ruby/methods/expert/delegation_with_forwardable.md
|
2382
|
+
- files/ruby/methods/expert/dynamic_define_method.md
|
2383
|
+
- files/ruby/methods/expert/method_hooks_metaprogramming.md
|
2384
|
+
- files/ruby/methods/expert/module_prepend_chain.md
|
2385
|
+
- files/ruby/methods/expert/pattern_matching_params.md
|
2386
|
+
- files/ruby/methods/expert/refinements_scope_control.md
|
2387
|
+
- files/ruby/methods/expert/unbound_method_binding.md
|
2388
|
+
- files/ruby/methods/middle/alias_method_and_super.md
|
2389
|
+
- files/ruby/methods/middle/default_keyword_arguments.md
|
2390
|
+
- files/ruby/methods/middle/dynamic_define_method.md
|
2391
|
+
- files/ruby/methods/middle/forwardable_delegation.md
|
2392
|
+
- files/ruby/methods/middle/public_send_vs_send.md
|
2393
|
+
- files/ruby/methods/middle/splat_and_double_splat.md
|
2394
|
+
- files/ruby/methods/middle/symbol_to_proc.md
|
2395
|
+
- files/ruby/methods/middle/tap_chaining.md
|
2396
|
+
- files/ruby/minitest/advanced/custom_minitest_plugin.md
|
2397
|
+
- files/ruby/minitest/advanced/custom_reporter_usage.md
|
2398
|
+
- files/ruby/minitest/advanced/parallel_test_execution.md
|
2399
|
+
- files/ruby/minitest/advanced/performance_benchmarking.md
|
2400
|
+
- files/ruby/minitest/beginner/common_assertions.md
|
2401
|
+
- files/ruby/minitest/beginner/defining_test_cases.md
|
2402
|
+
- files/ruby/minitest/beginner/getting_started.md
|
2403
|
+
- files/ruby/minitest/beginner/setup_teardown_hooks.md
|
2404
|
+
- files/ruby/minitest/expert/custom_minitest_profiling_plugin.md
|
2405
|
+
- files/ruby/minitest/expert/dynamic_test_generation.md
|
2406
|
+
- files/ruby/minitest/expert/parallel_test_sharding.md
|
2407
|
+
- files/ruby/minitest/expert/property_based_with_rantly.md
|
2408
|
+
- files/ruby/minitest/middle/assertion_matchers_refutations.md
|
2409
|
+
- files/ruby/minitest/middle/custom_assertion_helpers.md
|
2410
|
+
- files/ruby/minitest/middle/parallel_test_execution.md
|
2411
|
+
- files/ruby/minitest/middle/setup_teardown_hooks.md
|
2412
|
+
- files/ruby/net_http/advanced/concurrent_requests_with_threads.md
|
2413
|
+
- files/ruby/net_http/advanced/custom_ssl_context.md
|
2414
|
+
- files/ruby/net_http/advanced/persistent_http_connections.md
|
2415
|
+
- files/ruby/net_http/advanced/streaming_large_responses.md
|
2416
|
+
- files/ruby/net_http/beginner/basic_get_request.md
|
2417
|
+
- files/ruby/net_http/beginner/custom_headers_requests.md
|
2418
|
+
- files/ruby/net_http/beginner/https_ssl_configuration.md
|
2419
|
+
- files/ruby/net_http/beginner/post_json_request.md
|
2420
|
+
- files/ruby/net_http/expert/persistent_connection_pooling.md
|
2421
|
+
- files/ruby/net_http/expert/retry_with_exponential_backoff.md
|
2422
|
+
- files/ruby/net_http/expert/ssl_certificate_pinning.md
|
2423
|
+
- files/ruby/net_http/expert/streaming_chunked_responses.md
|
2424
|
+
- files/ruby/net_http/middle/get_with_custom_headers.md
|
2425
|
+
- files/ruby/net_http/middle/parse_json_errors.md
|
2426
|
+
- files/ruby/net_http/middle/post_form_data.md
|
2427
|
+
- files/ruby/net_http/middle/timeout_ssl_verify.md
|
2428
|
+
- files/ruby/networking/advanced/custom_tls_context.md
|
2429
|
+
- files/ruby/networking/advanced/eventmachine_async_io.md
|
2430
|
+
- files/ruby/networking/advanced/http2_stream_multiplexing.md
|
2431
|
+
- files/ruby/networking/advanced/nonblocking_tcp_socket.md
|
2432
|
+
- files/ruby/networking/beginner/http_get_request.md
|
2433
|
+
- files/ruby/networking/beginner/open_uri_fetch.md
|
2434
|
+
- files/ruby/networking/beginner/tcp_client_example.md
|
2435
|
+
- files/ruby/networking/beginner/tcp_server_example.md
|
2436
|
+
- files/ruby/networking/expert/custom_tls_context.md
|
2437
|
+
- files/ruby/networking/expert/http2_multiplexing.md
|
2438
|
+
- files/ruby/networking/expert/packet_crafting_raw_sockets.md
|
2439
|
+
- files/ruby/networking/expert/persistent_http_pipelining.md
|
2440
|
+
- files/ruby/networking/middle/http_multipart_upload.md
|
2441
|
+
- files/ruby/networking/middle/http_persistent.md
|
2442
|
+
- files/ruby/networking/middle/http_ssl_customization.md
|
2443
|
+
- files/ruby/networking/middle/tcp_non_blocking_client.md
|
2444
|
+
- files/ruby/numbers/advanced/bigdecimal_precision.md
|
2445
|
+
- files/ruby/numbers/advanced/complex_rotations.md
|
2446
|
+
- files/ruby/numbers/advanced/numeric_clamp_bounds.md
|
2447
|
+
- files/ruby/numbers/advanced/prime_factorization.md
|
2448
|
+
- files/ruby/numbers/advanced/rational_usage.md
|
2449
|
+
- files/ruby/numbers/beginner/basic_arithmetic.md
|
2450
|
+
- files/ruby/numbers/beginner/generating_random_numbers.md
|
2451
|
+
- files/ruby/numbers/beginner/integer_vs_float.md
|
2452
|
+
- files/ruby/numbers/beginner/number_comparison.md
|
2453
|
+
- files/ruby/numbers/beginner/rounding_numbers.md
|
2454
|
+
- files/ruby/numbers/expert/expert_bigdecimal_precision.md
|
2455
|
+
- files/ruby/numbers/expert/expert_bitwise_binary.md
|
2456
|
+
- files/ruby/numbers/expert/expert_ffi_math_library.md
|
2457
|
+
- files/ruby/numbers/expert/expert_prime_enumeration.md
|
2458
|
+
- files/ruby/numbers/expert/expert_rational_complex.md
|
2459
|
+
- files/ruby/numbers/middle/bigdecimal_precision.md
|
2460
|
+
- files/ruby/numbers/middle/clamp_numbers.md
|
2461
|
+
- files/ruby/numbers/middle/extract_digits.md
|
2462
|
+
- files/ruby/numbers/middle/random_ranges.md
|
2463
|
+
- files/ruby/numbers/middle/rational_numbers.md
|
2464
|
+
- files/ruby/oop/advanced/class_eval_vs_instance_eval.md
|
2465
|
+
- files/ruby/oop/advanced/dynamic_method_definition.md
|
2466
|
+
- files/ruby/oop/advanced/eigenclass_for_class_macros.md
|
2467
|
+
- files/ruby/oop/advanced/forwarding_with_forwardable.md
|
2468
|
+
- files/ruby/oop/advanced/internal_dsl_with_blocks.md
|
2469
|
+
- files/ruby/oop/advanced/method_missing_as_proxy.md
|
2470
|
+
- files/ruby/oop/advanced/modules_as_namespaces_and_mixins.md
|
2471
|
+
- files/ruby/oop/advanced/refinements_for_scoped_patching.md
|
2472
|
+
- files/ruby/oop/advanced/tracepoint_for_method_hooking.md
|
2473
|
+
- files/ruby/oop/beginner/attr_accessors.md
|
2474
|
+
- files/ruby/oop/beginner/class_methods.md
|
2475
|
+
- files/ruby/oop/beginner/creating_instances.md
|
2476
|
+
- files/ruby/oop/beginner/defining_classes.md
|
2477
|
+
- files/ruby/oop/beginner/inheritance_basics.md
|
2478
|
+
- files/ruby/oop/beginner/initialize_method.md
|
2479
|
+
- files/ruby/oop/beginner/instance_methods.md
|
2480
|
+
- files/ruby/oop/beginner/instance_variables.md
|
2481
|
+
- files/ruby/oop/beginner/method_overriding.md
|
2482
|
+
- files/ruby/oop/beginner/modules_mixins.md
|
2483
|
+
- files/ruby/oop/expert/bytecode_introspection_mod.md
|
2484
|
+
- files/ruby/oop/expert/class_level_exec.md
|
2485
|
+
- files/ruby/oop/expert/concurrent_ractor_mixins.md
|
2486
|
+
- files/ruby/oop/expert/dynamic_method_dsl.md
|
2487
|
+
- files/ruby/oop/expert/method_missing_delegate.md
|
2488
|
+
- files/ruby/oop/expert/module_prepend_override.md
|
2489
|
+
- files/ruby/oop/expert/scoped_refinements.md
|
2490
|
+
- files/ruby/oop/expert/tracepoint_profiling.md
|
2491
|
+
- files/ruby/oop/expert/weakref_circular_cleanup.md
|
2492
|
+
- files/ruby/oop/middle/composition_over_inheritance.md
|
2493
|
+
- files/ruby/oop/middle/define_value_objects.md
|
2494
|
+
- files/ruby/oop/middle/dynamic_method_definitions.md
|
2495
|
+
- files/ruby/oop/middle/leverage_struct_for_data_objects.md
|
2496
|
+
- files/ruby/oop/middle/mixins_for_shared_behavior.md
|
2497
|
+
- files/ruby/oop/middle/use_forwardable_for_delegation.md
|
2498
|
+
- files/ruby/oop/middle/use_method_missing_cautiously.md
|
2499
|
+
- files/ruby/oop/middle/use_module_namespace.md
|
2500
|
+
- files/ruby/oop/middle/use_simpledelegator_for_wrappers.md
|
2501
|
+
- files/ruby/openssl/advanced/custom_ssl_context_configuration.md
|
2502
|
+
- files/ruby/openssl/advanced/ocsp_certificate_revocation_checking.md
|
2503
|
+
- files/ruby/openssl/advanced/smime_sign_and_encrypt.md
|
2504
|
+
- files/ruby/openssl/beginner/aes_encrypt_decrypt.md
|
2505
|
+
- files/ruby/openssl/beginner/create_sha256_digest.md
|
2506
|
+
- files/ruby/openssl/beginner/generate_rsa_key_pair.md
|
2507
|
+
- files/ruby/openssl/expert/hardware_engine_pkcs11.md
|
2508
|
+
- files/ruby/openssl/expert/mutual_tls_with_sslcontext.md
|
2509
|
+
- files/ruby/openssl/expert/streaming_aead_gcm_file_encryption.md
|
2510
|
+
- files/ruby/openssl/middle/aes_gcm_encryption.md
|
2511
|
+
- files/ruby/openssl/middle/custom_ssl_context.md
|
2512
|
+
- files/ruby/openssl/middle/verify_certificate_chain.md
|
2513
|
+
- files/ruby/operators/advanced/boolean_casting.md.md
|
2514
|
+
- files/ruby/operators/advanced/double_splat_args.md.md
|
2515
|
+
- files/ruby/operators/advanced/endless_range_operator.md.md
|
2516
|
+
- files/ruby/operators/advanced/flip_flop_operator.md.md
|
2517
|
+
- files/ruby/operators/advanced/operator_overloading.md.md
|
2518
|
+
- files/ruby/operators/advanced/pattern_matching_case_in.md.md
|
2519
|
+
- files/ruby/operators/advanced/safe_navigation_operator.md.md
|
2520
|
+
- files/ruby/operators/advanced/spaceship_operator.md.md
|
2521
|
+
- files/ruby/operators/advanced/symbol_to_proc.md.md
|
2522
|
+
- files/ruby/operators/advanced/unary_operators.md.md
|
2523
|
+
- files/ruby/operators/beginner/arithmetic_operators.md
|
2524
|
+
- files/ruby/operators/beginner/basic_assignment.md
|
2525
|
+
- files/ruby/operators/beginner/comparison_operators.md
|
2526
|
+
- files/ruby/operators/beginner/compound_assignment.md
|
2527
|
+
- files/ruby/operators/beginner/conditional_assignment.md
|
2528
|
+
- files/ruby/operators/beginner/exponentiation_operator.md
|
2529
|
+
- files/ruby/operators/beginner/logical_operators.md
|
2530
|
+
- files/ruby/operators/beginner/range_operators.md
|
2531
|
+
- files/ruby/operators/beginner/string_concatenation.md
|
2532
|
+
- files/ruby/operators/beginner/ternary_operator.md
|
2533
|
+
- files/ruby/operators/expert/bitmask_flags_with_operators.md
|
2534
|
+
- files/ruby/operators/expert/custom_unary_operator_overloads.md
|
2535
|
+
- files/ruby/operators/expert/deep_safe_navigation_chaining.md
|
2536
|
+
- files/ruby/operators/expert/dsl_via_operator_overloads.md
|
2537
|
+
- files/ruby/operators/expert/dynamic_operator_overloading.md
|
2538
|
+
- files/ruby/operators/expert/extending_numeric_precision.md
|
2539
|
+
- files/ruby/operators/expert/inline_rescue_in_operators.md
|
2540
|
+
- files/ruby/operators/expert/pipeline_operator_with_procs.md
|
2541
|
+
- files/ruby/operators/expert/refinements_for_core_operators.md
|
2542
|
+
- files/ruby/operators/expert/spaceship_sort_with_memoization.md
|
2543
|
+
- files/ruby/operators/middle/default_assignment_operator.md
|
2544
|
+
- files/ruby/operators/middle/defined_operator.md
|
2545
|
+
- files/ruby/operators/middle/exponentiation_operator.md
|
2546
|
+
- files/ruby/operators/middle/flip_flop_operator.md
|
2547
|
+
- files/ruby/operators/middle/method_proc_shorthand.md
|
2548
|
+
- files/ruby/operators/middle/range_operator.md
|
2549
|
+
- files/ruby/operators/middle/regex_match_operator.md
|
2550
|
+
- files/ruby/operators/middle/safe_navigation_operator.md
|
2551
|
+
- files/ruby/operators/middle/spaceship_operator.md
|
2552
|
+
- files/ruby/operators/middle/splat_and_double_splat.md
|
2553
|
+
- files/ruby/procs_and_lambdas/advanced/destructuring_parameters.md
|
2554
|
+
- files/ruby/procs_and_lambdas/advanced/dynamic_method_definitions.md
|
2555
|
+
- files/ruby/procs_and_lambdas/advanced/error_handling_wrappers.md
|
2556
|
+
- files/ruby/procs_and_lambdas/advanced/lambda_currying.md
|
2557
|
+
- files/ruby/procs_and_lambdas/advanced/memoization_with_procs.md
|
2558
|
+
- files/ruby/procs_and_lambdas/advanced/proc_enumerable_chaining.md
|
2559
|
+
- files/ruby/procs_and_lambdas/advanced/proc_lambda_composition.md
|
2560
|
+
- files/ruby/procs_and_lambdas/advanced/symbol_to_proc_advanced.md
|
2561
|
+
- files/ruby/procs_and_lambdas/beginner/calling_lambdas.md
|
2562
|
+
- files/ruby/procs_and_lambdas/beginner/calling_procs.md
|
2563
|
+
- files/ruby/procs_and_lambdas/beginner/getting_started_with_lambdas.md
|
2564
|
+
- files/ruby/procs_and_lambdas/beginner/getting_started_with_procs.md
|
2565
|
+
- files/ruby/procs_and_lambdas/beginner/passing_lambda_to_method.md
|
2566
|
+
- files/ruby/procs_and_lambdas/beginner/passing_proc_to_method.md
|
2567
|
+
- files/ruby/procs_and_lambdas/beginner/proc_vs_lambda_argument_handling.md
|
2568
|
+
- files/ruby/procs_and_lambdas/beginner/storing_procs_in_collections.md
|
2569
|
+
- files/ruby/procs_and_lambdas/expert/async_event_driven_procs.md
|
2570
|
+
- files/ruby/procs_and_lambdas/expert/currying_and_partial_application.md
|
2571
|
+
- files/ruby/procs_and_lambdas/expert/dynamic_arity_validation.md
|
2572
|
+
- files/ruby/procs_and_lambdas/expert/metaprogramming_with_define_method.md
|
2573
|
+
- files/ruby/procs_and_lambdas/expert/proc_and_lambda_composition.md
|
2574
|
+
- files/ruby/procs_and_lambdas/expert/procs_in_fiber_callbacks.md
|
2575
|
+
- files/ruby/procs_and_lambdas/expert/profunctor_style_adapters.md
|
2576
|
+
- files/ruby/procs_and_lambdas/expert/sandboxed_instance_exec.md
|
2577
|
+
- files/ruby/procs_and_lambdas/middle/chain_procs_lambdas.md
|
2578
|
+
- files/ruby/procs_and_lambdas/middle/context_capture_proc.md
|
2579
|
+
- files/ruby/procs_and_lambdas/middle/curried_lambda.md
|
2580
|
+
- files/ruby/procs_and_lambdas/middle/error_handling_proc.md
|
2581
|
+
- files/ruby/procs_and_lambdas/middle/lambda_arity.md
|
2582
|
+
- files/ruby/procs_and_lambdas/middle/memoization_lambda.md
|
2583
|
+
- files/ruby/procs_and_lambdas/middle/proc_callback.md
|
2584
|
+
- files/ruby/procs_and_lambdas/middle/proc_lambda_conversion.md
|
2585
|
+
- files/ruby/profiling/advanced/perftools_flamegraph_generation.md
|
2586
|
+
- files/ruby/profiling/advanced/ruby_prof_flat_printer.md
|
2587
|
+
- files/ruby/profiling/advanced/ruby_prof_graph_html.md
|
2588
|
+
- files/ruby/profiling/advanced/stackprof_sampling_mode.md
|
2589
|
+
- files/ruby/profiling/advanced/tracepoint_custom_profile.md
|
2590
|
+
- files/ruby/profiling/beginner/benchmark_bm.md
|
2591
|
+
- files/ruby/profiling/beginner/benchmark_ips.md
|
2592
|
+
- files/ruby/profiling/beginner/benchmark_measure.md
|
2593
|
+
- files/ruby/profiling/beginner/ruby_prof_flat_printer.md
|
2594
|
+
- files/ruby/profiling/beginner/ruby_profile_flag.md
|
2595
|
+
- files/ruby/profiling/expert/memory_profiler_deep_inspection.md
|
2596
|
+
- files/ruby/profiling/expert/rbspy_production_sampling.md
|
2597
|
+
- files/ruby/profiling/expert/ruby_prof_callgrind_kcachegrind.md
|
2598
|
+
- files/ruby/profiling/expert/stackprof_flamegraph.md
|
2599
|
+
- files/ruby/profiling/expert/thread_wall_time_profiling.md
|
2600
|
+
- files/ruby/profiling/middle/benchmark_bm_usage.md
|
2601
|
+
- files/ruby/profiling/middle/flamegraph_visualization.md
|
2602
|
+
- files/ruby/profiling/middle/memory_profiler_usage.md
|
2603
|
+
- files/ruby/profiling/middle/ruby_prof_cpu.md
|
2604
|
+
- files/ruby/profiling/middle/stackprof_sampling.md
|
2605
|
+
- files/ruby/ranges/advanced/custom_object_ranges.md
|
2606
|
+
- files/ruby/ranges/advanced/infinite_beginless_ranges.md
|
2607
|
+
- files/ruby/ranges/advanced/lazy_infinite_sequences.md
|
2608
|
+
- files/ruby/ranges/advanced/pattern_matching_with_ranges.md
|
2609
|
+
- files/ruby/ranges/advanced/range_step_usage.md
|
2610
|
+
- files/ruby/ranges/beginner/check_value_in_range.md
|
2611
|
+
- files/ruby/ranges/beginner/convert_range_to_array.md
|
2612
|
+
- files/ruby/ranges/beginner/inclusive_vs_exclusive_ranges.md
|
2613
|
+
- files/ruby/ranges/beginner/iterating_over_ranges.md
|
2614
|
+
- files/ruby/ranges/beginner/stepping_through_ranges.md
|
2615
|
+
- files/ruby/ranges/expert/cover_vs_include_performance.md
|
2616
|
+
- files/ruby/ranges/expert/custom_infinite_enumerator.md
|
2617
|
+
- files/ruby/ranges/expert/endless_and_beginless_ranges.md
|
2618
|
+
- files/ruby/ranges/expert/pattern_matching_with_ranges.md
|
2619
|
+
- files/ruby/ranges/expert/using_ranges_as_hash_keys.md
|
2620
|
+
- files/ruby/ranges/middle/endless_beginless_ranges.md
|
2621
|
+
- files/ruby/ranges/middle/range_case_when.md
|
2622
|
+
- files/ruby/ranges/middle/range_cover_include.md
|
2623
|
+
- files/ruby/ranges/middle/range_step_iteration.md
|
2624
|
+
- files/ruby/ranges/middle/range_to_a_and_size.md
|
2625
|
+
- files/ruby/reflection/advanced/dynamic_method_generation.md
|
2626
|
+
- files/ruby/reflection/advanced/method_source_reloader.md
|
2627
|
+
- files/ruby/reflection/advanced/runtime_constant_injection.md
|
2628
|
+
- files/ruby/reflection/advanced/tracepoint_method_tracing.md
|
2629
|
+
- files/ruby/reflection/beginner/dynamic_method_invocation.md
|
2630
|
+
- files/ruby/reflection/beginner/inspect_instance_variables.md
|
2631
|
+
- files/ruby/reflection/beginner/list_available_methods.md
|
2632
|
+
- files/ruby/reflection/beginner/use_respond_to.md
|
2633
|
+
- files/ruby/reflection/expert/ast_manipulation.md
|
2634
|
+
- files/ruby/reflection/expert/dynamic_basicobject_proxy.md
|
2635
|
+
- files/ruby/reflection/expert/granular_tracepoint_events.md
|
2636
|
+
- files/ruby/reflection/expert/singleton_class_hierarchy.md
|
2637
|
+
- files/ruby/reflection/middle/dynamic_constant_lookup.md
|
2638
|
+
- files/ruby/reflection/middle/dynamic_method_invocation.md
|
2639
|
+
- files/ruby/reflection/middle/instance_variable_inspection.md
|
2640
|
+
- files/ruby/reflection/middle/introspect_methods.md
|
2641
|
+
- files/ruby/regex/advanced/atomic_grouping.md
|
2642
|
+
- files/ruby/regex/advanced/dynamic_union.md
|
2643
|
+
- files/ruby/regex/advanced/extended_mode_comments.md
|
2644
|
+
- files/ruby/regex/advanced/g_anchor_scanning.md
|
2645
|
+
- files/ruby/regex/advanced/gsub_with_block.md
|
2646
|
+
- files/ruby/regex/advanced/lookaround_assertions.md
|
2647
|
+
- files/ruby/regex/advanced/named_capture_to_hash.md
|
2648
|
+
- files/ruby/regex/advanced/performance_benchmarking.md
|
2649
|
+
- files/ruby/regex/advanced/recursive_patterns.md
|
2650
|
+
- files/ruby/regex/advanced/unicode_properties.md
|
2651
|
+
- files/ruby/regex/beginner/anchors.md
|
2652
|
+
- files/ruby/regex/beginner/basic_match_operator.md
|
2653
|
+
- files/ruby/regex/beginner/capturing_groups.md
|
2654
|
+
- files/ruby/regex/beginner/character_classes.md
|
2655
|
+
- files/ruby/regex/beginner/escaping_special_chars.md
|
2656
|
+
- files/ruby/regex/beginner/gsub_replacement.md
|
2657
|
+
- files/ruby/regex/beginner/named_captures.md
|
2658
|
+
- files/ruby/regex/beginner/quantifiers.md
|
2659
|
+
- files/ruby/regex/beginner/regex_options.md
|
2660
|
+
- files/ruby/regex/beginner/string_match_method.md
|
2661
|
+
- files/ruby/regex/expert/advanced_lookaround_combinations.md
|
2662
|
+
- files/ruby/regex/expert/atomic_groups_for_speed.md
|
2663
|
+
- files/ruby/regex/expert/branch_reset_grouping.md
|
2664
|
+
- files/ruby/regex/expert/embed_ruby_code_in_regex.md
|
2665
|
+
- files/ruby/regex/expert/inline_toggle_modifiers.md
|
2666
|
+
- files/ruby/regex/expert/named_captures_with_transform.md
|
2667
|
+
- files/ruby/regex/expert/recursive_regex_for_nested.md
|
2668
|
+
- files/ruby/regex/expert/regexp_union_optimization.md
|
2669
|
+
- files/ruby/regex/expert/stringscanner_iterative_scans.md
|
2670
|
+
- files/ruby/regex/expert/unicode_and_posix_properties.md
|
2671
|
+
- files/ruby/regex/middle/anchor_validations.md
|
2672
|
+
- files/ruby/regex/middle/character_classes.md
|
2673
|
+
- files/ruby/regex/middle/gsub_with_block.md
|
2674
|
+
- files/ruby/regex/middle/inline_modifiers.md
|
2675
|
+
- files/ruby/regex/middle/lookahead_lookbehind.md
|
2676
|
+
- files/ruby/regex/middle/match_data_usage.md
|
2677
|
+
- files/ruby/regex/middle/named_capture_groups.md
|
2678
|
+
- files/ruby/regex/middle/non_capturing_groups.md
|
2679
|
+
- files/ruby/regex/middle/regexp_union.md
|
2680
|
+
- files/ruby/regex/middle/split_with_regex.md
|
2681
|
+
- files/ruby/rspec/advanced/around_hooks_time_travel_cleanup.md
|
2682
|
+
- files/ruby/rspec/advanced/composable_custom_matchers.md
|
2683
|
+
- files/ruby/rspec/advanced/dynamic_shared_context_metadata.md
|
2684
|
+
- files/ruby/rspec/advanced/parameterized_testing.md
|
2685
|
+
- files/ruby/rspec/beginner/first_spec_example.md
|
2686
|
+
- files/ruby/rspec/beginner/organizing_spec_files.md
|
2687
|
+
- files/ruby/rspec/beginner/setup_rspec.md
|
2688
|
+
- files/ruby/rspec/beginner/using_expectations.md
|
2689
|
+
- files/ruby/rspec/expert/advanced_diffable_matcher.md
|
2690
|
+
- files/ruby/rspec/expert/custom_example_group_dsl.md
|
2691
|
+
- files/ruby/rspec/expert/custom_formatter_plugin.md
|
2692
|
+
- files/ruby/rspec/expert/flaky_spec_auto_retry.md
|
2693
|
+
- files/ruby/rspec/middle/rspec_contexts_subject.md.md
|
2694
|
+
- files/ruby/rspec/middle/rspec_custom_matchers.md.md
|
2695
|
+
- files/ruby/rspec/middle/rspec_let_vs_let_bang.md.md
|
2696
|
+
- files/ruby/rspec/middle/rspec_shared_examples.md.md
|
2697
|
+
- files/ruby/serialization/advanced/marshal_custom_versioning.md
|
2698
|
+
- files/ruby/serialization/advanced/oj_serialization_tuning.md
|
2699
|
+
- files/ruby/serialization/advanced/streaming_large_json.md
|
2700
|
+
- files/ruby/serialization/beginner/json_serialization.md
|
2701
|
+
- files/ruby/serialization/beginner/marshal_serialization.md
|
2702
|
+
- files/ruby/serialization/beginner/yaml_serialization.md
|
2703
|
+
- files/ruby/serialization/expert/hybrid_msgpack_json.md
|
2704
|
+
- files/ruby/serialization/expert/oj_object_hooks.md
|
2705
|
+
- files/ruby/serialization/expert/versioned_marshal.md
|
2706
|
+
- files/ruby/serialization/middle/active_model_serializer_example.md
|
2707
|
+
- files/ruby/serialization/middle/customizing_to_json_example.md
|
2708
|
+
- files/ruby/serialization/middle/using_oj_for_high_performance.md
|
2709
|
+
- files/ruby/set/advanced/set_key_extractor.md
|
2710
|
+
- files/ruby/set/advanced/set_thread_safe.md
|
2711
|
+
- files/ruby/set/advanced/set_transitive_closure.md
|
2712
|
+
- files/ruby/set/beginner/basic_set_operations.md
|
2713
|
+
- files/ruby/set/beginner/initialize_set.md
|
2714
|
+
- files/ruby/set/beginner/manage_set_elements.md
|
2715
|
+
- files/ruby/set/expert/custom_hash_eql.md.md
|
2716
|
+
- files/ruby/set/expert/lazy_unique_filter.md.md
|
2717
|
+
- files/ruby/set/expert/thread_safe_set.md.md
|
2718
|
+
- files/ruby/set/middle/custom_object_set.md
|
2719
|
+
- files/ruby/set/middle/initialize_and_modify_set.md
|
2720
|
+
- files/ruby/set/middle/set_algebra_operations.md
|
2721
|
+
- files/ruby/sockets/advanced/non_blocking_io_select.md
|
2722
|
+
- files/ruby/sockets/advanced/ssl_tls_with_openssl.md
|
2723
|
+
- files/ruby/sockets/advanced/unix_socket_fd_passing.md
|
2724
|
+
- files/ruby/sockets/beginner/tcp_client_basics.md
|
2725
|
+
- files/ruby/sockets/beginner/tcp_server_basics.md
|
2726
|
+
- files/ruby/sockets/beginner/udp_socket_basics.md
|
2727
|
+
- files/ruby/sockets/expert/custom_tls_alpn_ocsp.md
|
2728
|
+
- files/ruby/sockets/expert/fiber_scheduler_socket_server.md
|
2729
|
+
- files/ruby/sockets/expert/zero_copy_sendfile.md
|
2730
|
+
- files/ruby/sockets/middle/socket_select_multiplex.md
|
2731
|
+
- files/ruby/sockets/middle/tcp_client_basic.md
|
2732
|
+
- files/ruby/sockets/middle/tcp_server_basic.md
|
2733
|
+
- files/ruby/strings/advanced/advanced_interpolation.md
|
2734
|
+
- files/ruby/strings/advanced/binary_encoding_manipulation.md
|
2735
|
+
- files/ruby/strings/advanced/complex_escapes.md
|
2736
|
+
- files/ruby/strings/advanced/emoji_handling.md
|
2737
|
+
- files/ruby/strings/advanced/freezing_and_symbols.md
|
2738
|
+
- files/ruby/strings/advanced/literals_stacking.md
|
2739
|
+
- files/ruby/strings/advanced/percent_quoting_variants.md
|
2740
|
+
- files/ruby/strings/advanced/regex_match_performance.md
|
2741
|
+
- files/ruby/strings/advanced/safe_concat.md
|
2742
|
+
- files/ruby/strings/advanced/strip_margin_heredoc.md
|
2743
|
+
- files/ruby/strings/advanced/unicode_normalization.md
|
2744
|
+
- files/ruby/strings/beginner/common_string_methods.md
|
2745
|
+
- files/ruby/strings/beginner/heredoc_string.md
|
2746
|
+
- files/ruby/strings/beginner/length_and_empty.md
|
2747
|
+
- files/ruby/strings/beginner/shovel_operator.md
|
2748
|
+
- files/ruby/strings/beginner/string_concatenation.md
|
2749
|
+
- files/ruby/strings/beginner/string_duplication.md
|
2750
|
+
- files/ruby/strings/beginner/string_indexing.md
|
2751
|
+
- files/ruby/strings/beginner/string_interpolation.md
|
2752
|
+
- files/ruby/strings/beginner/string_slicing.md
|
2753
|
+
- files/ruby/strings/beginner/substring_replacement.md
|
2754
|
+
- files/ruby/strings/expert/advanced_named_captures.md
|
2755
|
+
- files/ruby/strings/expert/ast_pattern_strings.md
|
2756
|
+
- files/ruby/strings/expert/binary_data_handling_string_b.md
|
2757
|
+
- files/ruby/strings/expert/binary_parsing_with_unpack_pack.md
|
2758
|
+
- files/ruby/strings/expert/deep_dup.md
|
2759
|
+
- files/ruby/strings/expert/demo_continue.md
|
2760
|
+
- files/ruby/strings/expert/drb_string_marshalling_hash.md
|
2761
|
+
- files/ruby/strings/expert/fiber_storage_usage.md
|
2762
|
+
- files/ruby/strings/expert/freeze_dedupe_strings.md
|
2763
|
+
- files/ruby/strings/expert/fstring_eval.md
|
2764
|
+
- files/ruby/strings/expert/functional_fstrings.md
|
2765
|
+
- files/ruby/strings/expert/gb_string_increment.md
|
2766
|
+
- files/ruby/strings/expert/grapheme_cluster_counting.md
|
2767
|
+
- files/ruby/strings/expert/handle_invalid_bytes_with_scrub.md
|
2768
|
+
- files/ruby/strings/expert/heredoc_inheritance.md
|
2769
|
+
- files/ruby/strings/expert/in_memory_io_with_stringio.md
|
2770
|
+
- files/ruby/strings/expert/opengl_strings.md
|
2771
|
+
- files/ruby/strings/expert/override_dup_with_initialize_copy.md
|
2772
|
+
- files/ruby/strings/expert/regex_named_captures.md
|
2773
|
+
- files/ruby/strings/expert/regex_performance.md
|
2774
|
+
- files/ruby/strings/expert/reuse_string_buffers_replace.md
|
2775
|
+
- files/ruby/strings/expert/sprintf_named.md
|
2776
|
+
- files/ruby/strings/expert/stateful_sub",{.md
|
2777
|
+
- files/ruby/strings/expert/strict_encodings.md
|
2778
|
+
- files/ruby/strings/expert/string_gc_optimizations.md
|
2779
|
+
- files/ruby/strings/expert/zero_copy_substring.md
|
2780
|
+
- files/ruby/strings/middle/demo.json.md
|
2781
|
+
- files/ruby/strings/middle/dynamic_gsub_blocks.md
|
2782
|
+
- files/ruby/strings/middle/encoding_force_encode.md
|
2783
|
+
- files/ruby/strings/middle/heredoc_squiggly.md
|
2784
|
+
- files/ruby/strings/middle/logging_demos.md.md
|
2785
|
+
- files/ruby/strings/middle/mutable_string_concatenation.md
|
2786
|
+
- files/ruby/strings/middle/nested_interpolation.md
|
2787
|
+
- files/ruby/strings/middle/percent_string_literals.md
|
2788
|
+
- files/ruby/strings/middle/regex_named_captures.md
|
2789
|
+
- files/ruby/strings/middle/scrub_invalid_bytes.md
|
2790
|
+
- files/ruby/strings/middle/session_parse.md
|
2791
|
+
- files/ruby/strings/middle/string_formatting_sprintf.md
|
2792
|
+
- files/ruby/strings/middle/string_slicing_ranges.md
|
2793
|
+
- files/ruby/symbols/advanced/symbol_dynamic_memoization.md
|
2794
|
+
- files/ruby/symbols/advanced/symbol_pattern_matching.md
|
2795
|
+
- files/ruby/symbols/advanced/symbol_to_proc.md
|
2796
|
+
- files/ruby/symbols/beginner/dynamic_symbol_creation.md
|
2797
|
+
- files/ruby/symbols/beginner/symbol_as_method_identifier.md
|
2798
|
+
- files/ruby/symbols/beginner/symbol_vs_string.md
|
2799
|
+
- files/ruby/symbols/expert/dsl_metaprogramming_with_symbols.md
|
2800
|
+
- files/ruby/symbols/expert/secure_dynamic_symbol_creation.md
|
2801
|
+
- files/ruby/symbols/expert/symbol_garbage_collection_inspection.md
|
2802
|
+
- files/ruby/symbols/middle/dynamic_method_definition.md
|
2803
|
+
- files/ruby/symbols/middle/dynamic_method_invocation.md
|
2804
|
+
- files/ruby/symbols/middle/symbol_to_proc_enumeration.md
|
2805
|
+
- files/ruby/syntax/advanced/define_method_with_closure.md
|
2806
|
+
- files/ruby/syntax/advanced/endless_method_definition.md
|
2807
|
+
- files/ruby/syntax/advanced/flip_flop_operator.md
|
2808
|
+
- files/ruby/syntax/advanced/keyword_splat_destructuring.md
|
2809
|
+
- files/ruby/syntax/advanced/numbered_block_parameters.md
|
2810
|
+
- files/ruby/syntax/advanced/pattern_matching_destructuring.md
|
2811
|
+
- files/ruby/syntax/advanced/refinement_scoping.md
|
2812
|
+
- files/ruby/syntax/advanced/singleton_class_eval.md
|
2813
|
+
- files/ruby/syntax/advanced/to_proc_shorthand.md
|
2814
|
+
- files/ruby/syntax/advanced/trace_point_debugging.md
|
2815
|
+
- files/ruby/syntax/beginner/adding_comments.md
|
2816
|
+
- files/ruby/syntax/beginner/array_basics.md
|
2817
|
+
- files/ruby/syntax/beginner/defining_methods.md
|
2818
|
+
- files/ruby/syntax/beginner/hash_basics.md
|
2819
|
+
- files/ruby/syntax/beginner/iterating_with_each.md
|
2820
|
+
- files/ruby/syntax/beginner/simple_conditionals.md
|
2821
|
+
- files/ruby/syntax/beginner/string_interpolation.md
|
2822
|
+
- files/ruby/syntax/beginner/symbols_vs_strings.md
|
2823
|
+
- files/ruby/syntax/beginner/understanding_blocks.md
|
2824
|
+
- files/ruby/syntax/beginner/using_variables.md
|
2825
|
+
- files/ruby/syntax/expert/dynamic_define_method.md
|
2826
|
+
- files/ruby/syntax/expert/eigenclass_dsl.md
|
2827
|
+
- files/ruby/syntax/expert/endless_method_definitions.md
|
2828
|
+
- files/ruby/syntax/expert/infinite_enumerator.md
|
2829
|
+
- files/ruby/syntax/expert/keyword_arg_forwarding.md
|
2830
|
+
- files/ruby/syntax/expert/nested_hash_pattern.md
|
2831
|
+
- files/ruby/syntax/expert/numbered_parameters.md
|
2832
|
+
- files/ruby/syntax/expert/pattern_matching_guards.md
|
2833
|
+
- files/ruby/syntax/expert/scoped_refinements.md
|
2834
|
+
- files/ruby/syntax/expert/yield_self_then.md
|
2835
|
+
- files/ruby/syntax/middle/array_tally.md
|
2836
|
+
- files/ruby/syntax/middle/destructuring_assignment.md
|
2837
|
+
- files/ruby/syntax/middle/dig_method.md
|
2838
|
+
- files/ruby/syntax/middle/frozen_string_literal.md
|
2839
|
+
- files/ruby/syntax/middle/hash_transform_methods.md
|
2840
|
+
- files/ruby/syntax/middle/numbered_block_parameters.md
|
2841
|
+
- files/ruby/syntax/middle/pattern_matching_case_in.md
|
2842
|
+
- files/ruby/syntax/middle/safe_navigation_operator.md
|
2843
|
+
- files/ruby/syntax/middle/symbol_to_proc.md
|
2844
|
+
- files/ruby/syntax/middle/tap_debugging.md
|
2845
|
+
- files/ruby/tempfiles/advanced/atomic_tempfile_replacement.md
|
2846
|
+
- files/ruby/tempfiles/advanced/encrypted_tempfile_openssl.md
|
2847
|
+
- files/ruby/tempfiles/beginner/tempfile_basic_creation.md
|
2848
|
+
- files/ruby/tempfiles/beginner/tempfile_with_block_cleanup.md
|
2849
|
+
- files/ruby/tempfiles/expert/otmpfile_anonymous.md
|
2850
|
+
- files/ruby/tempfiles/expert/secure_wipe_tempfile.md
|
2851
|
+
- files/ruby/tempfiles/middle/tempfile_auto_cleanup.md
|
2852
|
+
- files/ruby/tempfiles/middle/tempfile_custom_extension_and_dir.md
|
2853
|
+
- files/ruby/threads/advanced/graceful_thread_shutdown.md
|
2854
|
+
- files/ruby/threads/advanced/prioritized_queue_and_conditionvariable.md
|
2855
|
+
- files/ruby/threads/advanced/thread_local_memoization.md
|
2856
|
+
- files/ruby/threads/advanced/thread_pool_executor_concurrent_ruby.md
|
2857
|
+
- files/ruby/threads/beginner/thread_basic_creation.md
|
2858
|
+
- files/ruby/threads/beginner/thread_joining.md
|
2859
|
+
- files/ruby/threads/beginner/thread_mutex_usage.md
|
2860
|
+
- files/ruby/threads/beginner/thread_passing_arguments.md
|
2861
|
+
- files/ruby/threads/expert/barrier_synchronization_with_conditionvariable.md
|
2862
|
+
- files/ruby/threads/expert/thread_pool_with_sized_queue.md
|
2863
|
+
- files/ruby/threads/expert/thread_safe_lru_cache_with_monitor.md
|
2864
|
+
- files/ruby/threads/expert/timeout_handling_with_thread_handle_interrupt.md
|
2865
|
+
- files/ruby/threads/middle/graceful_thread_lifecycle.md
|
2866
|
+
- files/ruby/threads/middle/mutex_synchronize_shared_data.md
|
2867
|
+
- files/ruby/threads/middle/queue_producer_consumer.md
|
2868
|
+
- files/ruby/threads/middle/thread_local_variables.md
|
2869
|
+
- files/ruby/uri/advanced/custom_uri_scheme.md
|
2870
|
+
- files/ruby/uri/advanced/idn_support_punycode.md
|
2871
|
+
- files/ruby/uri/advanced/query_param_merging.md
|
2872
|
+
- files/ruby/uri/beginner/build_url_with_query.md
|
2873
|
+
- files/ruby/uri/beginner/encode_decode_query.md
|
2874
|
+
- files/ruby/uri/beginner/parse_url.md
|
2875
|
+
- files/ruby/uri/expert/advanced_uri_merging.md
|
2876
|
+
- files/ruby/uri/expert/custom_percent_encoding.md
|
2877
|
+
- files/ruby/uri/expert/custom_uri_scheme.md
|
2878
|
+
- files/ruby/uri/middle/constructing_uris_with_encoding.md
|
2879
|
+
- files/ruby/uri/middle/merging_and_resolving_relative_uris.md
|
2880
|
+
- files/ruby/uri/middle/parsing_modifying_query_params.md
|
2881
|
+
- files/ruby/variables/advanced/dynamic_instance_variables.md
|
2882
|
+
- files/ruby/variables/advanced/dynamic_local_variables.md
|
2883
|
+
- files/ruby/variables/advanced/thread_local_variables.md
|
2884
|
+
- files/ruby/variables/beginner/clear_variable_naming.md
|
2885
|
+
- files/ruby/variables/beginner/multiple_assignment.md
|
2886
|
+
- files/ruby/variables/beginner/string_interpolation.md
|
2887
|
+
- files/ruby/variables/expert/binding_local_variable_manipulation_expert.md
|
2888
|
+
- files/ruby/variables/expert/dynamic_constant_management_expert.md
|
2889
|
+
- files/ruby/variables/expert/thread_fiber_local_variables_expert.md
|
2890
|
+
- files/ruby/variables/middle/block_vs_method_variable_scope.md
|
2891
|
+
- files/ruby/variables/middle/memoization_with_or_equal.md
|
2892
|
+
- files/ruby/variables/middle/parallel_assignment_and_splat.md
|
2893
|
+
- files/ruby/xml/advanced/high_performance_ox.md
|
2894
|
+
- files/ruby/xml/advanced/sax_streaming_large_xml.md
|
2895
|
+
- files/ruby/xml/advanced/xpath_with_namespaces.md
|
2896
|
+
- files/ruby/xml/beginner/basic_parsing_with_rexml.md
|
2897
|
+
- files/ruby/xml/beginner/building_xml_with_nokogiri_builder.md
|
2898
|
+
- files/ruby/xml/beginner/parsing_xml_with_nokogiri.md
|
2899
|
+
- files/ruby/xml/expert/custom_sax_handler_performance.md
|
2900
|
+
- files/ruby/xml/expert/nokogiri_builder_namespaces_schema.md
|
2901
|
+
- files/ruby/xml/expert/nokogiri_xml_reader_streaming.md
|
2902
|
+
- files/ruby/xml/middle/build_xml_with_builder.md
|
2903
|
+
- files/ruby/xml/middle/modify_xml_nodes_nokogiri.md
|
2904
|
+
- files/ruby/xml/middle/parse_xml_with_namespaces.md
|
2905
|
+
- files/ruby/yaml/advanced/custom_yaml_serialization.md
|
2906
|
+
- files/ruby/yaml/advanced/secure_yaml_safe_load.md
|
2907
|
+
- files/ruby/yaml/advanced/streaming_yaml_parsing.md
|
2908
|
+
- files/ruby/yaml/beginner/dump_to_yaml.md
|
2909
|
+
- files/ruby/yaml/beginner/load_yaml_file.md
|
2910
|
+
- files/ruby/yaml/beginner/safe_parse_yaml_string.md
|
2911
|
+
- files/ruby/yaml/expert/custom_psych_domain_type.md
|
2912
|
+
- files/ruby/yaml/expert/secure_yaml_safe_load.md
|
2913
|
+
- files/ruby/yaml/expert/streaming_yaml_parser.md
|
2914
|
+
- files/ruby/yaml/middle/custom_yaml_serialization.md
|
2915
|
+
- files/ruby/yaml/middle/safe_load_yaml.md
|
2916
|
+
- files/ruby/yaml/middle/yaml_aliases_anchors.md
|
2917
|
+
- files/sql/general/advanced/expression_and_partial_indexes.md
|
2918
|
+
- files/sql/general/advanced/full_text_search_configurations.md
|
2919
|
+
- files/sql/general/advanced/jsonb_indexed_queries.md
|
2920
|
+
- files/sql/general/advanced/lateral_joins_for_dynamic_subqueries.md
|
2921
|
+
- files/sql/general/advanced/materialized_views_optimization.md
|
2922
|
+
- files/sql/general/advanced/merge_upsert_statements.md
|
2923
|
+
- files/sql/general/advanced/optimizer_hints_and_plans.md
|
2924
|
+
- files/sql/general/advanced/pivot_queries_crosstab.md
|
2925
|
+
- files/sql/general/advanced/recursive_cte_hierarchical_queries.md
|
2926
|
+
- files/sql/general/advanced/window_functions_row_number.md
|
2927
|
+
- files/sql/general/beginner/basic_inner_join.md
|
2928
|
+
- files/sql/general/beginner/count_rows.md
|
2929
|
+
- files/sql/general/beginner/filter_with_where.md
|
2930
|
+
- files/sql/general/beginner/group_by_clause.md
|
2931
|
+
- files/sql/general/beginner/insert_into_table.md
|
2932
|
+
- files/sql/general/beginner/limit_results.md
|
2933
|
+
- files/sql/general/beginner/select_specific_columns.md
|
2934
|
+
- files/sql/general/beginner/sort_results_order_by.md
|
2935
|
+
- files/sql/general/beginner/update_and_delete_records.md
|
2936
|
+
- files/sql/general/beginner/use_column_aliases.md
|
2937
|
+
- files/sql/general/expert/explain_analyze_tuning.md
|
2938
|
+
- files/sql/general/expert/jsonb_indexing.md
|
2939
|
+
- files/sql/general/expert/lateral_joins.md
|
2940
|
+
- files/sql/general/expert/materialized_views_refresh.md
|
2941
|
+
- files/sql/general/expert/partition_pruning.md
|
2942
|
+
- files/sql/general/expert/pivot_unpivot.md
|
2943
|
+
- files/sql/general/expert/recursive_cte_hierarchies.md
|
2944
|
+
- files/sql/general/expert/row_level_security.md
|
2945
|
+
- files/sql/general/expert/upsert_on_conflict.md
|
2946
|
+
- files/sql/general/expert/window_function_advanced_analytics.md
|
2947
|
+
- files/sql/general/middle/batch_inserts_updates.md
|
2948
|
+
- files/sql/general/middle/cte_for_complex_queries.md
|
2949
|
+
- files/sql/general/middle/full_text_search.md
|
2950
|
+
- files/sql/general/middle/index_usage_monitoring.md
|
2951
|
+
- files/sql/general/middle/join_performance_tips.md
|
2952
|
+
- files/sql/general/middle/jsonb_querying.md
|
2953
|
+
- files/sql/general/middle/parameterized_queries_security.md
|
2954
|
+
- files/sql/general/middle/query_plan_analysis.md
|
2955
|
+
- files/sql/general/middle/upsert_with_on_conflict.md
|
2956
|
+
- files/sql/general/middle/window_functions_usage.md
|
2957
|
+
- files/sql/mysql/advanced/cte_recursive.md
|
2958
|
+
- files/sql/mysql/advanced/explain_analyze.md
|
2959
|
+
- files/sql/mysql/advanced/fulltext_boolean_weights.md
|
2960
|
+
- files/sql/mysql/advanced/generated_columns.md
|
2961
|
+
- files/sql/mysql/advanced/json_functions.md
|
2962
|
+
- files/sql/mysql/advanced/partitioning_range.md
|
2963
|
+
- files/sql/mysql/advanced/performance_schema.md
|
2964
|
+
- files/sql/mysql/advanced/spatial_index.md
|
2965
|
+
- files/sql/mysql/advanced/transaction_isolation.md
|
2966
|
+
- files/sql/mysql/advanced/window_running_total.md
|
2967
|
+
- files/sql/mysql/beginner/count_aggregate.md
|
2968
|
+
- files/sql/mysql/beginner/delete_records.md
|
2969
|
+
- files/sql/mysql/beginner/filter_with_where.md
|
2970
|
+
- files/sql/mysql/beginner/group_by_results.md
|
2971
|
+
- files/sql/mysql/beginner/inner_join.md
|
2972
|
+
- files/sql/mysql/beginner/insert_data.md
|
2973
|
+
- files/sql/mysql/beginner/limit_results.md
|
2974
|
+
- files/sql/mysql/beginner/order_by_clause.md
|
2975
|
+
- files/sql/mysql/beginner/select_all_columns.md
|
2976
|
+
- files/sql/mysql/beginner/update_records.md
|
2977
|
+
- files/sql/mysql/expert/advanced_partition_pruning.md
|
2978
|
+
- files/sql/mysql/expert/extended_statistics_multicolumn_selectivity.md
|
2979
|
+
- files/sql/mysql/expert/generated_columns_json_optimization.md
|
2980
|
+
- files/sql/mysql/expert/invisible_indexes_testing.md
|
2981
|
+
- files/sql/mysql/expert/optimizer_hints_query_forcing.md
|
2982
|
+
- files/sql/mysql/expert/performance_schema_query_profiling.md
|
2983
|
+
- files/sql/mysql/expert/recursive_cte_hierarchies.md
|
2984
|
+
- files/sql/mysql/expert/user_defined_functions_extending.md
|
2985
|
+
- files/sql/mysql/expert/window_functions_running_totals.md
|
2986
|
+
- files/sql/mysql/middle/ctes_common_table_expressions.md
|
2987
|
+
- files/sql/mysql/middle/explain_query.md
|
2988
|
+
- files/sql/mysql/middle/fulltext_search.md
|
2989
|
+
- files/sql/mysql/middle/group_concat_usage.md
|
2990
|
+
- files/sql/mysql/middle/index_usage.md
|
2991
|
+
- files/sql/mysql/middle/json_functions.md
|
2992
|
+
- files/sql/mysql/middle/limit_offset_performance.md
|
2993
|
+
- files/sql/mysql/middle/regex_search.md
|
2994
|
+
- files/sql/mysql/middle/user_variables.md
|
2995
|
+
- files/sql/mysql/middle/window_functions.md
|
2996
|
+
- files/sql/postgresql/advanced/declarative_partitioning_range.md
|
2997
|
+
- files/sql/postgresql/advanced/full_text_search_tsvector.md
|
2998
|
+
- files/sql/postgresql/advanced/jsonb_path_query.md
|
2999
|
+
- files/sql/postgresql/advanced/lateral_joins.md
|
3000
|
+
- files/sql/postgresql/advanced/materialized_view_concurrent_refresh.md
|
3001
|
+
- files/sql/postgresql/advanced/parallel_query_execution.md
|
3002
|
+
- files/sql/postgresql/advanced/partial_expression_index.md
|
3003
|
+
- files/sql/postgresql/advanced/recursive_cte_hierarchy.md
|
3004
|
+
- files/sql/postgresql/advanced/upsert_on_conflict.md
|
3005
|
+
- files/sql/postgresql/advanced/window_function_rank.md
|
3006
|
+
- files/sql/postgresql/beginner/aggregate_functions.md
|
3007
|
+
- files/sql/postgresql/beginner/basic_join.md
|
3008
|
+
- files/sql/postgresql/beginner/connect_to_db.md
|
3009
|
+
- files/sql/postgresql/beginner/create_table.md
|
3010
|
+
- files/sql/postgresql/beginner/delete_data.md
|
3011
|
+
- files/sql/postgresql/beginner/insert_data.md
|
3012
|
+
- files/sql/postgresql/beginner/order_by_limit.md
|
3013
|
+
- files/sql/postgresql/beginner/select_basic.md
|
3014
|
+
- files/sql/postgresql/beginner/update_data.md
|
3015
|
+
- files/sql/postgresql/beginner/where_clause.md
|
3016
|
+
- files/sql/postgresql/expert/autovacuum_and_bloat_analysis.md
|
3017
|
+
- files/sql/postgresql/expert/dynamic_sql_in_plpgsql.md
|
3018
|
+
- files/sql/postgresql/expert/jsonb_gin_expression_indexes.md
|
3019
|
+
- files/sql/postgresql/expert/logical_replication_setup.md
|
3020
|
+
- files/sql/postgresql/expert/parallel_query_tuning.md
|
3021
|
+
- files/sql/postgresql/expert/partition_pruning_and_wise_joins.md
|
3022
|
+
- files/sql/postgresql/expert/postgres_fdw_foreign_data_wrapper.md
|
3023
|
+
- files/sql/postgresql/expert/recursive_cte_graph_traversal.md
|
3024
|
+
- files/sql/postgresql/expert/window_function_filter_clause.md
|
3025
|
+
- files/sql/postgresql/middle/full_text_search.md
|
3026
|
+
- files/sql/postgresql/middle/jsonb_query_indexing.md
|
3027
|
+
- files/sql/postgresql/middle/lateral_joins_subqueries.md
|
3028
|
+
- files/sql/postgresql/middle/materialized_views.md
|
3029
|
+
- files/sql/postgresql/middle/partial_indexes.md
|
3030
|
+
- files/sql/postgresql/middle/plpgsql_triggers_audit.md
|
3031
|
+
- files/sql/postgresql/middle/recursive_cte_hierarchy.md
|
3032
|
+
- files/sql/postgresql/middle/table_partitioning_range.md
|
3033
|
+
- files/sql/postgresql/middle/upsert_on_conflict.md
|
3034
|
+
- files/sql/postgresql/middle/window_functions_running_totals.md
|
3035
|
+
- files/sql/sqlite/advanced/explain_query_planner.md
|
3036
|
+
- files/sql/sqlite/advanced/fts5_full_text_search.md
|
3037
|
+
- files/sql/sqlite/advanced/json1_extension.md
|
3038
|
+
- files/sql/sqlite/advanced/partial_indexes.md
|
3039
|
+
- files/sql/sqlite/advanced/pragma_performance_tuning.md
|
3040
|
+
- files/sql/sqlite/advanced/recursive_ctes.md
|
3041
|
+
- files/sql/sqlite/advanced/rtree_spatial_indexing.md
|
3042
|
+
- files/sql/sqlite/advanced/upsert_on_conflict.md
|
3043
|
+
- files/sql/sqlite/advanced/wal_journal_mode.md
|
3044
|
+
- files/sql/sqlite/advanced/window_functions.md
|
3045
|
+
- files/sql/sqlite/beginner/aggregate_functions.md
|
3046
|
+
- files/sql/sqlite/beginner/basic_crud_operations.md
|
3047
|
+
- files/sql/sqlite/beginner/creating_a_database.md
|
3048
|
+
- files/sql/sqlite/beginner/creating_indexes.md
|
3049
|
+
- files/sql/sqlite/beginner/limiting_results.md
|
3050
|
+
- files/sql/sqlite/beginner/ordering_results.md
|
3051
|
+
- files/sql/sqlite/beginner/selecting_specific_columns.md
|
3052
|
+
- files/sql/sqlite/beginner/sqlite_installation.md
|
3053
|
+
- files/sql/sqlite/beginner/using_transactions.md
|
3054
|
+
- files/sql/sqlite/beginner/using_where_clause.md
|
3055
|
+
- files/sql/sqlite/expert/custom_sql_functions_c.md
|
3056
|
+
- files/sql/sqlite/expert/explain_query_plan_optimization.md
|
3057
|
+
- files/sql/sqlite/expert/fts5_custom_tokenizer.md
|
3058
|
+
- files/sql/sqlite/expert/json1_complex_queries.md
|
3059
|
+
- files/sql/sqlite/expert/partial_expression_indexes.md
|
3060
|
+
- files/sql/sqlite/expert/pragma_low_level_optimization.md
|
3061
|
+
- files/sql/sqlite/expert/recursive_cte_hierarchical_queries.md
|
3062
|
+
- files/sql/sqlite/expert/virtual_tables_external.md
|
3063
|
+
- files/sql/sqlite/expert/wal_checkpoint_tuning.md
|
3064
|
+
- files/sql/sqlite/expert/window_functions_analytics.md
|
3065
|
+
- files/sql/sqlite/middle/common_table_expressions.md
|
3066
|
+
- files/sql/sqlite/middle/fts5_full_text_search.md
|
3067
|
+
- files/sql/sqlite/middle/json_functions.md
|
3068
|
+
- files/sql/sqlite/middle/partial_indexes.md
|
3069
|
+
- files/sql/sqlite/middle/pragma_performance_tuning.md
|
3070
|
+
- files/sql/sqlite/middle/recursive_cte_hierarchy.md
|
3071
|
+
- files/sql/sqlite/middle/timestamp_triggers.md
|
3072
|
+
- files/sql/sqlite/middle/transaction_batching.md
|
3073
|
+
- files/sql/sqlite/middle/upsert_on_conflict.md
|
3074
|
+
- files/sql/sqlite/middle/window_functions_row_number.md
|
3075
|
+
- lib/generators/get/smart/install_generator.rb
|
3076
|
+
- lib/generators/get/smart/templates/get_smart.rb
|
3077
|
+
- lib/get/smart.rb
|
3078
|
+
- lib/get/smart/ai/generator.rb
|
3079
|
+
- lib/get/smart/app_context.rb
|
3080
|
+
- lib/get/smart/collection.rb
|
3081
|
+
- lib/get/smart/learning_path.rb
|
3082
|
+
- lib/get/smart/logic.rb
|
3083
|
+
- lib/get/smart/memory.rb
|
3084
|
+
- lib/get/smart/railtie.rb
|
3085
|
+
- lib/get/smart/tip.rb
|
3086
|
+
- lib/get/smart/topic.rb
|
3087
|
+
- lib/get/smart/topics.rb
|
3088
|
+
- lib/get/smart/version.rb
|
3089
|
+
- lib/tasks/get/smart_tasks.rake
|
3090
|
+
homepage: https://github.com/igorkasyanchuk/get-smart
|
3091
|
+
licenses:
|
3092
|
+
- MIT
|
3093
|
+
metadata:
|
3094
|
+
allowed_push_host: https://rubygems.org
|
3095
|
+
homepage_uri: https://github.com/igorkasyanchuk/get-smart
|
3096
|
+
source_code_uri: https://github.com/igorkasyanchuk/get-smart
|
3097
|
+
changelog_uri: https://github.com/igorkasyanchuk/get-smart/blob/main/CHANGELOG.md
|
3098
|
+
rdoc_options: []
|
3099
|
+
require_paths:
|
3100
|
+
- lib
|
3101
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
3102
|
+
requirements:
|
3103
|
+
- - ">="
|
3104
|
+
- !ruby/object:Gem::Version
|
3105
|
+
version: '0'
|
3106
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
3107
|
+
requirements:
|
3108
|
+
- - ">="
|
3109
|
+
- !ruby/object:Gem::Version
|
3110
|
+
version: '0'
|
3111
|
+
requirements: []
|
3112
|
+
rubygems_version: 3.6.3
|
3113
|
+
specification_version: 4
|
3114
|
+
summary: Learn Ruby and Rails by examples
|
3115
|
+
test_files: []
|